Chinaunix首页 | 论坛 | 博客
  • 博客访问: 791136
  • 博文数量: 102
  • 博客积分: 10011
  • 博客等级: 上将
  • 技术积分: 2301
  • 用 户 组: 普通用户
  • 注册时间: 2006-10-08 13:00
文章存档

2011年(2)

2010年(30)

2009年(25)

2008年(45)

我的朋友

分类: 系统运维

2008-09-09 14:37:47

实施路由发布策略
1 应用环境
ISP通常把网络分层3个层次(核心层,汇聚层[省域网]和接入层[城域网]) 其中各层的路由发布策略如下:
(1)核心层
核心层节点的路由直接发布到Internet傻姑娘
(2)汇聚层
A 省内汇聚路由的发布

省内的路由需要汇聚后发布出去。例如,在二级RR上用network命令和静态路由配置省内聚合路由,加上标记省内聚合路由的Community属性,发布到一级RR上。一级RR再将其发布给关口节点和Internet出口路由器,从而发布到国内的其他ISP和Internet。这样可以引导骨干网外部以省内路由器为目的地的流量。

B省内细碎路由的发布

对于省内的细碎路由,包括各城域网、IDC、POP点发布的接入细碎路由,如某省有800条路由,这些路由需要发布到骨干网内部,但不需要发布到其他的ISP和Internet。可以在二级RR上将省内的细碎路由加上no-export团体属性发送到一级RR上。骨干网内的路由器都会学习到这些细碎路由,这样可以引导骨干网内部以省内子网为目的地的流量。但是由于这些细碎路由具有no-export团体属性,一级RR不会将这些路由发送给本AS外的其他ISP和Internet。

(3)接入层

A 城域网分配私有AS,通过EBGP接入骨干网,在骨干网路由器上需要对城域网发布的路由设置Community属性。

B 城域网没有独立AS,采用OSPF或静态路由方式实现互联。在骨干网路由器上需要对城域网路由通过配置静态路由和BGP的network命令发布路由,并同时对发布的路由设置Community属性。

2 配置思路

(1)ISP骨干内部部署IGP协议,使内部网络可达

(2) ISP 骨干网和外部AS之间部署eBGP, 骨干内部部署iBGP(通常使用发射器减少iBGP全连接的数量)

(3)在会聚层节点上部署路由策略,控制省内路由的发布

(4) 在汇聚层和接入层相连的节点上配置策略,控制成域网络路由的发布

3 注意事项

应用团体属性时,需要在各路由器上配置向邻居发布团体属性,路由上携带的团体属性才能被发布给邻居。

组网需求

如下图,ISP骨干网结构如下,

  • RouterB作为核心层节点与外部AS节点RouterA建立EBGP连接。
  • RouterC和RouterD是汇聚层节点。RouterC是与核心层相连的节点,RouterD是与接入层相连的节点。
  • 在ISP骨干网AS200内建立两级反射器。RouterB是一级反射器,其客户是RouterC;RouterC是二级反射器,其客户是RouterD。
  • RouterE是连接城域网的接入层节点。

需要发布的路由如下:

  • 城域网路由:200.1.1.240/30、200.1.1.244/30、200.1.2.240/30、200.1.2.244/30、200.1.3.240
  • 骨干网内的IGP路由:100.1.2.0/24、100.1.3.0/24、100.1.4.0/24
  • 省网内的细碎路由:201.1.1.1/32、201.1.2.0/24、202.1.1.3/32

说明

此例为简化组网,带冗余的双反射器组网请参见“部署RR”。

骨干网发布路由组网图

 

适用产品和版本

采用NE系列路由器,版本为(VRP5.30)及后续版本。

配置步骤

步骤 1     配置各接口IP地址(略)

步骤 2     在AS200内配置IGP协议,此例中使用OSPF协议(略)

步骤3 配置基本的BGP协议

其中RouterA和RouterB 建立eBGP协议

 [RouterA] bgp 100

[RouterA-bgp]router-id 1.1.1.1

[RouterA-bgp]peer 100.1.1.2 as-number 200

[RouterB]bgp 200

[RouterB-bgp]router-id 2.2.2.2

[RouterB-bgp]peer 100.1.1.1 as-number 100

[RouterB-bgp]peer 100.1.2.2 as-number 200

[RouterB-bgp]peer 100.1.2.2 next-hop-local

路由器RouterB为一级反射器,客户机RouterC

[RouterB-bgp]peer 100.1.2.2 reflect-client

路由器C和RouterB,RouterD 建立iBGP连接

[RouterC]bgp 200

[RouterC-bgp]router-id 3.3.3.3

[RouterC-bgp]peer 100.1.2.1 as-number 200

[RouterC-bgp]peer 100.1.3.2 as-number 200

其中RouterC作为2级反射器,Clinet为RouterD

[RouterC-bgp]peer 100.1.3.2 reflect-client

RouterD的配置

[RouterD]bgp 200

[RouterD-bgp]router-id 4.4.4.4

[RouterD-bgp]peer 100.1.3.1 as-number 200

查看各个路由器BGP连接状态,

[RouterB] display bgp peer

 

 BGP local router ID : 2.2.2.2

 Local AS number : 200

 Total number of peers : 2                 Peers in established state : 2

 

  Peer            V    AS  MsgRcvd  MsgSent  OutQ  Up/Down       State PrefRcv

 

  100.1.1.1       4   100        5        5     0 00:03:14 Established       0

  100.1.2.2       4   200        3        4     0 00:01:01 Established       0

 

步骤4 成域网路由的发布

城域网通过静态路由的方式接入骨干网。在接入层与城域网相连的节点RouterD上配置到城域网的静态路由,这些静态路由是城域网的聚合路由。

[RouterD]ip route-static 200.1.1.240 255.255.255.252 10.1.4.2

[RouterD]ip route-static 200.1.1.224 30 100.1.4.2

RouterD]ip route-static 200.1.2.240 30  100.1.4.2

[RouterD]ip route-static 200.1.2.244 30 100.1.4.2

[RouterD] ip route-static 200.1.3.240 30 100.1.4.2

在RouterD的BGP中发布这些聚合路由,并为这些路由设置团体属性300:1,表示这些路由是来自某一城域网的路由。创建名为City的Route-Policy,为路由设置团体属性300:1。

[RouterD] route-policy City permit node 10

[RouterD-route-policy]apply community 300:1

在BGP中发布路由信息

[RouterD]bgp 200

[RouterD-bgp]network 200.1.1.240 30 route-policy City

[RouterD-bgp]network 200.1.1.244 30 route-policy City

[RouterD-bgp]network 200.1.2.240 30 route-policy City

[RouterD-bgp]network 200.1.2.244 30 route-policy City

[RouterD-bgp]network 200.1.3.240 30 route-policy City

[RouterD-bgp]network 100.1.3.1 advertise-community

二级反射器RouterC上接收到RouterD发布的城域网路由后,会将这些路由进一步聚合后再发布给Internet,因此这些具体的城域网路由不需要发布到一级反射器RouterB上。

在RouterC上过滤出这些具体路由,并设置路由的团体属性为no_advertise。

[RouterC] ip community-filter 100 permit 300:1

[RouterC] route-policy NO-Advertise permit node 10

[RouterC-route-policy]if-match community-filter 100

[RouterC-route-policy]apply community NO-Advertise

在BGP中应用No-Advertise,配置RouterC不发布城域网的具体路由。

[RouterC] bgp 200

[RouterC-bgp] peer 100.1.3.2 route-policy No-Advertise import

[RouterC-bgp] peer 100.1.2.1 advertise-community

[RouterC-bgp] quit

配置完成后,RouterC可以学到城域网的具体路由,RouterB的路由表中则没有这些具体的城域网路由。

[RouterC] display bgp routing-table

 

 Total Number of Routes: 5

 

 BGP Local router ID is 3.3.3.3

 Status codes: * - valid, > - best, d - damped,

               h - history,  i - internal, s - suppressed, S - Stale

               Origin : i - IGP, e - EGP, ? - incomplete

      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 

 *>i  200.1.1.240/30     100.1.3.2       0          100        0      i

 *>i  200.1.1.244/30     100.1.3.2       0          100        0      i

 *>i  200.1.2.240/30     100.1.3.2       0          100        0      i

 *>i  200.1.2.244/30     100.1.3.2       0          100        0      i

 *>i  200.1.3.240/30     100.1.3.2       0          100        0      i

步骤 5     配置省网路由的发布

省内IGP路由、城域网发布的路由都需要进一步聚合,并为这些路由设置团体属性200:3(表示路由来自本ISP)后再发布到Internet上。

# 将省内的IGP路由,聚合成100.1.0.0/16,并设置no_export属性。使这些路由可以被AS内其他节点学习到,但是不发布到Internet上。

# 配置RouterB。

[RouterB] route-policy No-Export permit node 10

[RouterB-route-policy] apply community no-export

[RouterB-route-policy] quit

[RouterB] bgp 200

[RouterB-bgp] import-route ospf 1 route-policy No-Export

# 配置RouterC。

[RouterC] route-policy No-Export permit node 10

[RouterC-route-policy] apply community no-export

[RouterC-route-policy] quit

[RouterC] bgp 200

[RouterC-bgp] import-route ospf 1 route-policy No-Export

[RouterC-bgp] quit

# 配置RouterD。

[RouterD] route-policy No-Export permit node 10

[RouterD-route-policy] apply community no-export

[RouterD-route-policy] quit

[RouterD] bgp 200

[RouterD-bgp] import-route ospf 1 route-policy No-Export

# 在RouterC上配置静态路由聚合IGP路由,在BGP中发布这条静态路由,并为这条路由设置团体属性200:3。

[RouterC] ip route-static 100.1.0.0 16 NULL0

[RouterC] route-policy AS-Aggregate permit node 10

[RouterC-route-policy] apply community 200:3

[RouterC-route-policy] quit

[RouterC] bgp 200

[RouterC-bgp] network 100.1.0.0 16 route-policy AS-Aggregate

[RouterC-bgp] quit

# 将省内城域网发布的路由在RouterC上进一步聚合,在BGP中发布,并设置路由的团体属性为200:3。

[RouterC] ip route-static 200.1.1.0 24 NULL0

[RouterC] ip route-static 200.1.2.0 24 NULL0

[RouterC] ip route-static 200.1.3.0 24 NULL0

 

[RouterC] bgp 200

[RouterC-bgp] network 200.1.1.0 route-policy AS-Aggregate

[RouterC-bgp] network 200.1.2.0 route-policy AS-Aggregate

[RouterC-bgp] network 200.1.3.0 route-policy AS-Aggregate

[RouterC-bgp] quit

省内细碎路由和城域网发布的具体路由不需要发布到Internet上去。

# 细碎路由(此例中使用静态路由代替省内细碎路由)如下:

[RouterC] ip route-static 201.1.1.1 32 NULL0

[RouterC] ip route-static 201.1.2.0 24 NULL0

[RouterC] ip route-static 202.1.1.3 32 NULL0

# 在省网内发布这些路由,使用名为No-Export的Route-Policy为这些路由设置团体属性no_export。

[RouterC] bgp 200

[RouterC-bgp] network 201.1.1.1 32 route-policy No-Export

[RouterC-bgp] network 201.1.2.0 24 route-policy No-Export

[RouterC-bgp] network 202.1.1.3 32 route-policy No-Export

验证结果

如果配置成功,则:

# 查看接入层与城域网相连的节点RouterD的路由表。可见,RouterD的路由表中有到城域网的路由和省内路由。

[RouterD] display ip routing-table

Routing Tables: Public

         Destinations : 21       Routes : 21

 

Destination/Mask    Proto  Pre  Cost       NextHop         Interface

 

      100.1.0.0/16  BGP    255  0          100.1.3.1         Pos1/0/0

      100.1.2.0/24  OSPF   10   3124       100.1.3.1         Pos1/0/0

      100.1.3.0/24  Direct 0    0          100.1.3.2         Pos1/0/0

      100.1.3.1/32  Direct 0    0          100.1.3.1         Pos1/0/0

      100.1.3.2/32  Direct 0    0          127.0.0.1       InLoopBack0

      100.1.4.0/24  Direct 0    0          100.1.4.1         Pos2/0/0

      100.1.4.1/32  Direct 0    0          127.0.0.1       InLoopBack0

      100.1.4.2/32  Direct 0    0          100.1.4.2          Pos2/0/0

      127.0.0.0/8   Direct 0    0          127.0.0.1       InLoopBack0

      127.0.0.1/32  Direct 0    0          127.0.0.1       InLoopBack0

      200.1.1.0/24  BGP    255  0          100.1.3.1          Pos1/0/0

    200.1.1.240/30  Static 60  0          100.1.4.2          Pos2/0/0

    200.1.1.244/30  Static 60  0          100.1.4.2          Pos2/0/0

      200.1.2.0/24  BGP    255  0          100.1.3.1          Pos1/0/0

    200.1.2.240/30  Static 60  0          100.1.4.2          Pos2/0/0

    200.1.2.244/30  Static 60  0          100.1.4.2          Pos2/0/0

      200.1.3.0/24  BGP    255  0          100.1.3.1          Pos1/0/0

    200.1.3.240/30  Static 60  0          100.1.4.2          Pos2/0/0

      201.1.1.1/32  BGP    255  0          100.1.3.1          Pos1/0/0

      201.1.2.0/24  BGP    255  0          100.1.3.1          Pos1/0/0

      202.1.1.3/32  BGP    255  0          100.1.3.1          Pos1/0/0

# 查看RouterC的路由表,可见RouterC中有从RouterD学到的城域网具体路由。

[RouterC] display ip routing-table

Routing Tables: Public

         Destinations : 20       Routes : 20

 

Destination/Mask    Proto  Pre  Cost       NextHop         Interface

 

      100.1.0.0/16  Static 60   0          0.0.0.0         NULL0

      100.1.2.0/24  Direct 0    0          100.1.2.2       Pos1/0/0

      100.1.2.1/32  Direct 0    0          100.1.2.1       Pos1/0/0

      100.1.2.2/32  Direct 0    0          127.0.0.1       InLoopBack0

      100.1.3.0/24  Direct 0    0          100.1.3.1       Pos2/0/0

      100.1.3.1/32  Direct 0    0          127.0.0.1       InLoopBack0

      100.1.3.2/32  Direct 0    0          100.1.3.2       Pos2/0/0

      127.0.0.0/8   Direct 0    0          127.0.0.1       InLoopBack0

      127.0.0.1/32  Direct 0    0          127.0.0.1       InLoopBack0

      200.1.1.0/24  Static 60   0          0.0.0.0         NULL0

    200.1.1.240/30  BGP    255  0          100.1.3.2       Pos2/0/0

    200.1.1.244/30  BGP    255  0          100.1.3.2       Pos2/0/0

      200.1.2.0/24  Static 60   0          0.0.0.0         NULL0

    200.1.2.240/30  BGP    255  0          100.1.3.2       Pos2/0/0

    200.1.2.244/30  BGP    255  0          100.1.3.2       Pos2/0/0

      200.1.3.0/24  Static 60   0          0.0.0.0         NULL0

    200.1.3.240/30  BGP    255  0          100.1.3.2       Pos2/0/0

      201.1.1.1/32  Static 60   0          0.0.0.0         NULL0

      201.1.2.0/24  Static 60   0          0.0.0.0         NULL0

      202.1.1.3/32  Static 60   0          0.0.0.0         NULL0

# 查看RouterB的路由表,可见RouterB中有省内发布的细路由、有RouterC进一步聚合后的城域网路由和IGP路由,没有RouterD发布的城域网具体路由。

[RouterB] display ip routing-table

Routing Tables: Public

         Destinations : 16       Routes : 16

 

Destination/Mask    Proto  Pre  Cost       NextHop         Interface

 

      100.1.0.0/16  BGP    255  0          100.1.2.2       Pos2/0/0

      100.1.1.0/24  Direct 0    0          100.1.1.2       Pos1/0/0

      100.1.1.1/32  Direct 0    0          100.1.1.1       Pos1/0/0

      100.1.1.2/32  Direct 0    0          127.0.0.1       InLoopBack0

      100.1.2.0/24  Direct 0    0          100.1.2.1       Pos2/0/0

      100.1.2.1/32  Direct 0    0          127.0.0.1       InLoopBack0

      100.1.2.2/32  Direct 0    0          100.1.2.2       Pos2/0/0

      100.1.3.0/24  OSPF   10   3124       100.1.2.2       Pos2/0/0

      127.0.0.0/8   Direct 0    0          127.0.0.1       InLoopBack0

      127.0.0.1/32  Direct 0    0          127.0.0.1       InLoopBack0

      200.1.1.0/24  BGP    255  0          100.1.2.2       Pos2/0/0

      200.1.2.0/24  BGP    255  0          100.1.2.2       Pos2/0/0

      200.1.3.0/24  BGP    255  0          100.1.2.2       Pos2/0/0

      201.1.1.1/32  BGP    255  0          100.1.2.2       Pos2/0/0

      201.1.2.0/24  BGP    255  0          100.1.2.2       Pos2/0/0

      202.1.1.3/32  BGP    255  0          100.1.2.2       Pos2/0/0

# 查看RouterA的路由表,可见RouterA中只有RouterC有团体属性200:3的路由,即要发布给Internet的路由。

[RouterA] display ip routing-table

Routing Tables: Public

         Destinations : 9        Routes : 9

 

Destination/Mask    Proto  Pre  Cost       NextHop         Interface

 

      100.1.0.0/16  BGP    255  0          100.1.1.2       Pos1/0/0

      100.1.1.0/24  Direct 0    0          100.1.1.1       Pos1/0/0

      100.1.1.1/32  Direct 0    0          127.0.0.1       InLoopBack0

      100.1.1.2/32  Direct 0    0          100.1.1.2       Pos1/0/0

      127.0.0.0/8   Direct 0    0          127.0.0.1       InLoopBack0

      127.0.0.1/32  Direct 0    0          127.0.0.1       InLoopBack0

      200.1.1.0/24  BGP    255  0          100.1.1.2       Pos1/0/0

      200.1.2.0/24  BGP    255  0          100.1.1.2       Pos1/0/0

      200.1.3.0/24  BGP    255  0          100.1.1.2       Pos1/0/0

配置文件
  • RouterA的配置文件

#

 sysname RouterA

#

interface Pos1/0/0

 link-protocol ppp

 ip address 100.1.1.1 255.255.255.0

#

interface NULL0

#

bgp 100

 router-id 1.1.1.1

 peer 100.1.1.2 as-number 200

 #

 ipv4-family unicast

  undo synchronization

  peer 100.1.1.2 enable

#

return

  • RouterB的配置文件

#

 sysname RouterB

#

interface Pos1/0/0

 link-protocol ppp

 ip address 100.1.1.2 255.255.255.0

#

interface Pos2/0/0

 link-protocol ppp

 ip address 100.1.2.1 255.255.255.0

#

interface NULL0

#

bgp 200

 router-id 2.2.2.2

 peer 100.1.1.1 as-number 100

 peer 100.1.2.2 as-number 200

 #

 ipv4-family unicast

  undo synchronization

  import-route ospf 1 route-policy No-Export

  peer 100.1.1.1 enable

  peer 100.1.2.2 enable

  peer 100.1.2.2 reflect-client

  peer 100.1.2.2 next-hop-local

#

ospf 1

 area 0.0.0.0

  network 100.1.2.0 0.0.0.255

#

route-policy No-Export permit node 10

 apply community no-export

#

return

  • RouterC的配置文件

#

 sysname RouterC

#

interface Pos1/0/0

 link-protocol ppp

 ip address 100.1.2.2 255.255.255.0

#

interface Pos2/0/0

 link-protocol ppp

 ip address 100.1.3.1 255.255.255.0

#

interface NULL0

#

bgp 200

 router-id 3.3.3.3

 peer 100.1.2.1 as-number 200

 peer 100.1.3.2 as-number 200

 #

 ipv4-family unicast

  undo synchronization

  network 100.1.0.0 255.255.0.0 route-policy AS-Aggregate

  network 200.1.1.0 route-policy AS-Aggregate

  network 200.1.2.0 route-policy AS-Aggregate

  network 200.1.3.0 route-policy AS-Aggregate

  network 201.1.1.1 255.255.255.255 route-policy No-Export

  network 201.1.2.0 route-policy No-Export

  network 202.1.1.3 255.255.255.255 route-policy No-Export

  import-route ospf 1 route-policy No-Export

  peer 100.1.2.1 enable

  peer 100.1.2.1 advertise-community

  peer 100.1.3.2 enable

  peer 100.1.3.2 route-policy No-Advertise import

  peer 100.1.3.2 reflect-client

#

ospf 1

 area 0.0.0.0

  network 100.1.2.0 0.0.0.255

  network 100.1.3.0 0.0.0.255

#

route-policy No-Advertise permit node 10

 if-match community-filter 100

 apply community no-advertise

route-policy No-Export permit node 10

 apply community no-export

route-policy AS-Aggregate permit node 10

 apply community 200:3

#

 ip community-filter 100 permit 300:1

#

 ip route-static 100.1.0.0 255.255.0.0 NULL0

 ip route-static 200.1.1.0 255.255.255.0 NULL0

 ip route-static 200.1.2.0 255.255.255.0 NULL0

 ip route-static 200.1.3.0 255.255.255.0 NULL0

 ip route-static 201.1.1.1 255.255.255.255 NULL0

 ip route-static 201.1.2.0 255.255.255.0 NULL0

 ip route-static 202.1.1.3 255.255.255.255 NULL0

#

return

  • RouterD的配置文件

#

 sysname RouterD

#

interface Pos1/0/0

 link-protocol ppp

 ip address 100.1.3.2 255.255.255.0

#

interface Pos2/0/0

 link-protocol ppp

 ip address 100.1.4.1 255.255.255.0

#

interface NULL0

#

bgp 200

 router-id 4.4.4.4

 peer 100.1.3.1 as-number 200

 #

 ipv4-family unicast

  undo synchronization

  network 200.1.1.240 255.255.255.252 route-policy City

  network 200.1.1.244 255.255.255.252 route-policy City

  network 200.1.2.240 255.255.255.252 route-policy City

  network 200.1.2.244 255.255.255.252 route-policy City

  network 200.1.3.240 255.255.255.252 route-policy City

  import-route ospf 1 route-policy No-Export

  peer 100.1.3.1 enable

  peer 100.1.3.1 advertise-community

#

ospf 1

 area 0.0.0.0

  network 100.1.3.0 0.0.0.255

#

route-policy City permit node 10

 apply community 300:1

route-policy No-Export permit node 10

 apply community no-export

#

 ip route-static 200.1.1.240 255.255.255.252 100.1.4.2

 ip route-static 200.1.1.244 255.255.255.252 100.1.4.2

 ip route-static 200.1.2.240 255.255.255.252 100.1.4.2

 ip route-static 200.1.2.244 255.255.255.252 100.1.4.2

 ip route-static 200.1.3.240 255.255.255.252 100.1.4.2

#

return

  • RouterE的配置文件

#

 sysname RouterE

#

interface Pos1/0/0

 link-protocol ppp

 ip address 10.1.4.2 255.255.255.0

#

interface Pos2/0/0

 link-protocol ppp

#

interface NULL0

#

return


 

 

 

阅读(2707) | 评论(0) | 转发(0) |
0

上一篇:BGP的团体

下一篇:MPLS 的基本配置

给主人留下些什么吧!~~