注册 | 登录 忘记密码? 51cto首页 | 博客 | 论坛 | 招聘
热点文章 CCNA教材推荐
 帮助

像开车一样学习配置BGP实例


2007-02-06 11:21:28
 标签:实例 配置 BGP   [推送到技术圈]

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://59099.blog.51cto.com/49099/16993
老师曾经说过配置BGP 就像开车一样
你像往哪拐就往拐!!!
注意:实线框地内容是路由回环端口地网段地址
一、           BGP基本配置
1.  在各台路由器上配置hostname,如上分配。另外,为了在troubleshooting时便于检测,最好配置虚拟终端。
2.  在各台路由器上配置基本的IP地址,包括回环地址。
3.  在路由器AS100-BAS100-CAS100-D上配置RIP version2协议,相互之间通告172.16.0.0网络路由信息;
(config)#router rip
(config-router)#version 2
(config-router)#network 172.16.0.0
4.  在各台路由器上都启动BGP协议,各AS号如图所示。
(config)#router bgp as-num
(config-router)#network x.x.x.x mask x.x.x.x
(config-router)#neighbor x.x.x.x remote-as as-num
5.  各台路由器完成配置后,用show run命令看自己的配置正确与否
6.  show ip routeshow ip bgpshow ip bgp neighbors查看相应的路由信息、bgp信息
 
二、  BGP同步
1.  BGP同步含义
BGP协议中,对于处于同一个自治系统域的BGP路由器,如设为AB,现假设AB通告关于某个目的网段的路由信息,B接收到之后首先在自己的IGP表中搜索,看IGP路由信息中有无到达该目的网段的路由信息。如果有,B就会将A发给它的IBGP路由更新信息通告给EBGP邻居;否则,就不会通告给EBGP。这就是所谓的同步,即是IBGPIGP之间必须达到同步。
 
2.  启用同步
1)  为显示同步的作用,先关闭AS200-A上的172.16.5.1端口。
因为如果不关闭该端口,AS200-A可以通过EBGP邻居AS100-B而通告10.10.1.010.10.2.0网段消息给AS300-E,而它自己则会通过AS100-B而收到192.168.2.0网段的信息。
2)在AS300-E上。在AS100-B,AS100-C,AS100-D三台路由器上启动BGP同步,配置为:
(config)#router bgp 100
(config-router)#synchronization
 
实验结果:
启动同步后,我们可以看到AS200-A学不到192.168.2.0网段的BGP信息,AS300-E学不到10.10.1.010.10.2.0网段的信息。用show ip routeshow ip bgp查看。
 
3.同步问题的解决
在启用同步后,可以通过把BGP的内容重发布到IGP来克服同步带来的问题。
 
AS100-BAS100-D上配置:
(config)#router rip
      (config-router)#redistribute bgp 100 metric 2
            
实验结果:
配置后可以看到AS200-AAS300-E上又学到了对方的路由条目。
 
 
三、配置路由反射器
1.  路由反射器原理
在同一个AS中,各个IBGP邻居默认是不将从一个IBGP邻居学来的路由消息转发给另外的IBGP邻居,所以通常各个IBGP之间要建立全互联关系。那样,随着IBGP邻居的增多,路由上的开销就会很大。为了解决这个问题,就采用了路由反射器,这样一部分路由器只要跟路由反射服务器建立IBGP关系即可,而没有必要两两建立全互联连接。
 
2.路由反射器配置
1)先把AS100-BAS100-D之间的bgp邻居关系去掉
AS100-B(config)#router bgp 100
AS100-B(config-router)#no neighbor 172.16.7.2 remote-as 100
 
AS100-D(config)#Router bgp 100
AS100-D(config-router)#No neighbor 172.16.4.2 remote-as 100
 
实验结果:
配置后,我们能发现,在AS100-B上没有172.16.0.0172.16.3.0网段,在AS100-D路由器上,没有关于192.168.2.0172.16.2.0网段的信息。
 
2)在AS100-C上配置路由反射器:
AS100-C(config)#router bgp 100
AS100-C (config-router)# neighbor 172.16.4.2 route-reflector-client
AS100-C (config-router)# neighbor 172.16.7.2 route-reflector-client
 
实验结果:
    通过路由反射器,我们又能在在AS100-B上看到有172.16.0.0172.16.3.0网段,在AS100-D路由器上,有关于192.168.2.0172.16.2.0网段的信息。
 
四、配置汇聚路由
1.  AS100-B上,可以汇聚一条路由
配置为:
as100-B(config-router)#aggregate-address 172.16.0.0 255.255.248.0
 
实验结果:
可以在AS300-E上看到一条172.16.0.0/21的条目。
 
2.在配置的时候,还可以用summary-only参数,让bgp路由器只发送汇总的路由:
as100-B(config-router)#aggregate-address 172.16.0.0 255.255.248.0 summary-only
 
实验结果:
AS300-E上只有相应的一条聚合路由。注意AS100-B上的小s是指这条路由条目抑制不发送,这个时候AS300-E上只有汇总后的路由了
 
五、             配置前缀列表(prefix list)
1.    前缀列表
在路由信息过滤方面,前缀列表与发布列表(distribute-list)有相同的功效,但前者可以看作是后者的改进,从而具有更好的操控性。
    命令格式为:
(config)#ip prefix-list list-name [seq seq-value] permit|deny network/len
[ge ge-value][le le-value]
 
2.    在本实验中,为控制AS100-B只发送172.16.0.0/16172.16.0.0/24网段的路由条目给AS300-E,就可以采用前缀列表,具体配置为:
AS100-B(config)#router bgp 100
      AS100-B(config-router)#neighbor 172.16.16.1 prefix-list aaa out
AS100-B(config-router)#exit
AS100-B(config)#ip prefix-list aaa seq 5 deny 172.16.3.0/24
AS100-B(config)#ip prefix-list aaa seq 10 permit 172.16.0.0/16 le 24
 
实验结果:
    在路由器AS300-E上没有10.10.1.010.10.2.0172.16.3.0的路由信息
 
六、             配置团体字属性
1.  Community属性
Community属性可以让一组目的网段享用某些相同的路由特性,但这些目的网段不必要求处于同一AS。它可以用来控制BGP信息所经过的路由器怎么对待这条BGP信息,比如:NO_EXPORT为不发布到别的ASNO_ADV为不在发布到别的路由器,Local_AS为这个信息为内部AS信息,应该发布到AS内部,但不应该发布到公众网上,internet为公网信息。这些都是公共community属性,当然,还可以用一些如10777的数字来表示。
 
2Community配置
1)配置之前看一下AS300-Ebgp表,用show ip bgp。看一下有没有10.10.1.0/24的路由信息。
 
2)为了让发到AS200中的关于10.10.1.0网段的信息不再发送到as300中去,我们可以在AS200-A上配置NO_EXPORT参数,
AS200-A上配置为:
AS200-A(config)#router bgp 200
AS100-A(config-router)#neighbor 172.16.5.2 send-community
AS100-A(config-router)#neighbor 172.16.5.2 route-map SETCOMMUNITY out
AS100-A(config-router)#neighbor 172.16.6.2 send-community
AS100-A(config-router)#exit
AS200-A(config)#access-list 1 permit 10.10.1.0 0.0.0.255
AS200-A(config)#route-map SETCOMMUNITY permit 10
         AS200-A(config-route-map)#match ip address 1
         AS200-A(config-route-map)#set community no-export
 
实验结果:
    AS300-E上没有,没有10.10.1.0网段的信息。
注意:如果是直接在以上几步的基础上配置community,则由于已将BGP信息导进了IGP中,10.10.1.0网段的信息仍然会通过路由器AS100-D传给AS100-B,之后AS100-B再传给AS300-E,从而AS300-E也可以看到10.10.l.0网段的信息。此时,AS200-A发给AS100-D关于10.10.1.0网段的路由信息也要设置NO-EXPORTcommunity属性。
 
七、             配置peer-group
1.  Peer-group
有时对于某个BGP路由,其若干个邻居(IBGPEBGP邻居)有共同的属性、可以实施共同的路由策略、可以使用相同的过滤列表等。这时,就可以使用peer-group,一来减少配置量,二来减少路由更新量(同一个peer-group的全部n个成员只产生一条更新,而不是n条相同的更新)。
 
2.  Peer-group配置
从刚才的配置经历中,我们可以发现在我们的实验拓扑中,AS100-C的两个邻居AS100-B AS100-D的配置属性相同,AS200-A的两个EBGP邻居AS100-B AS100-D也具有相同的配置属性,则可以采用peer-group来简化配置。
 
它们的配置如下:
l         路由器AS100-C
AS100-C上配置,把172.16.1.0网段加入团体属性NO_ADVERTISE 。另外,AS100-B AS100-D同为AS100,同为AS100-C的路由反射器客户,配置如下:
//首先定义ACL
AS100-C(config)#access-list 2 permit 172.16.1.0 0.0.0.255 
 
//定义路由策略route-map
AS100-C(config)# route-map NOADV permit 10
AS100-C(config-route-map)#match ip address 2
AS100-C(config-route-map)# set community no-advertise
AS100-C(config-route-map)#exit
 
//配置peer-group
AS100-C(config)#router bgp 100
      AS100-C(config-router)#neighbor LOCAL peer-group
      AS100-C(config-router)#neighbor LOCAL remote-as 100
    AS100-C(config-router)#neighbor LOCAL route-reflector-client
      AS100-C(config-router)#neighbor LOCAL send-community
      AS100-C(config-router)#neighbor LOCAL route-map NOADV out
      AS100-C(config-router)#neighbor 172.16.4.2 peer-group LOCAL
      AS100-C(config-router)#neighbor 172.16.7.2 peer-group LOCAL
       
 
l         路由器AS200-A
AS100-B AS100-D同是AS200-AEBGP邻居且都在AS100上,有相同的community属性设置,其配置如下:
//首先定义ACL
AS100-D(config)# access-list 1 permit 10.10.1.0 0.0.0.255
 
//定义路由策略route-map
AS100-D(config)# route-map NOEXPORT permit 10
AS100-D(config-route-map)# match ip address 1
AS100-D(config-route-map)# set community no-export
 
//配置peer-group
AS100-D(config)#router bgp 100
      AS100-D(config-router)#neighbor REMOTE peer-group
      AS100-D(config-router)#neighbor REMOTE remote-as 100
    AS100-D(config-router)# neighbor REMOTE send-community
      AS100-D(config-router)#neighbor REMOTE route-map NOEXPORT out
      AS100-D(config-router)#neighbor 172.16.5.2 peer-group REMOTE
      AS100-D(config-router)#neighbor 172.16.6.2 peer-group REMOTE
     
 
实验结果:
AS200AAS300E上没有关于172.16.1.0网段的信息,在AS300-E 上没有10.10.1.0网段的信息。
 




    文章评论
 
 

发表评论

昵   称:
验证码:  点击图片可刷新验证码  博客过2级,无需填写验证码
内   容: