BGP自动路由聚合
一. 原理概述
在大型网络中,路由条目通常多达成千上万条,所以如何存储并有效管理如此多的路由信息就显得十分重要了。
BGP是一种无类路由协议,支持CIDR,VLSM和路由聚合。路由聚合技术的使用,可以在一定程度上缩减路由条目的数量,同时还可以减轻路由震荡导致的网络不稳定的问题。BGP路由聚合有两种方式,一种是自动路由聚合,一种是手动路由聚合。
自动路由聚合是在自然网络边界路由器上自动执行的,在默认情况下,BGP的自动路由汇聚功能是关闭的,并且BGP不会自动聚合BGP邻居发送的路由以及使用network命令通告的路由。
使用BGP自动路由慧聚时,需要进行严谨的IP地址规划。在一个地址规划杂乱无序的网络中,自动路由聚合可能会产生许多意想不到的问题。例如,在采用不连续子网规划的网络中,自动路由聚合可能会导致报文转发出现选路问题,或者是产生路由环路。
二. 实验内容
本实验模拟 三个运营商网络,三台路由器都使用直连物理网络IP地址来建立EBGP邻居关系,R2和R3的loopback1接口用来模拟各自ISP中的一个网段,R1和R2和R3上将开启自动路由聚合功能,R3的loopback1接口所在网段将使用network命令通告BGP进程,R2的loopback1接口所在网段将使用network命令通告BGP进程,最终实现R2和R3的loopback1接口之间可以互相通信。
三. 实验拓扑图
四. 实验命令配置
4.1 接口IP地址设置
[R1]interface g0/0/0
[R1-GigabitEthernet0/0/0]ip address 10.0.12.1 24
[R1]in g0/0/1
[R1-GigabitEthernet0/0/1]ip add 10.0.13.1 24
[R1]int loopback0
[R1-LoopBack0]ip add 10.0.1.1 32
[R2]in g0/0/0
[R2-GigabitEthernet0/0/0]ip add 10.0.12.2 24
[R2]int loopback0
[R2-LoopBack0]ip add 10.0.2.2 32
[R2-LoopBack0]in loopback1
[R2-LoopBack1]ip add 22.22.22.22 24
[R3]in g0/0/0
[R3-GigabitEthernet0/0/0]ip add 10.0.13.3 24
[R3]int loopback0
[R3-LoopBack0]ip add 10.0.3.3 32
[R3]in loopback1
[R3-LoopBack1]ip add 33.33.33.33 24
4.2 BGP路由协议
[R1]bgp 100
[R1-bgp]router-id 10.0.1.1
[R1-bgp]peer 10.0.12.2 as-number 200
[R1-bgp]peer 10.0.13.3 as-number 300
[R2]bgp 200
[R2-bgp]router-id 10.0.2.2
[R2-bgp]peer 10.0.12.1 as-number 100
[R3]bgp 300
[R3-bgp]router-id 10.0.3.3
[R3-bgp]peer 10.0.13.1 as-number 100
4.3 开启BGP自动路由聚合功能
[R1]bgp 100
[R1-bgp]ipv4-family unicast
[R1-bgp-af-ipv4]summary automatic
[R2]bgp 200
[R2-bgp]ipv4-family unicast
[R2-bgp-af-ipv4]summary automatic
[R3]bgp 300
[R3-bgp]ipv4-family unicast
[R3-bgp-af-ipv4]summary automatic
4.4 通告路由进入BGP中
使用network命令,将R3的loopback1接口所在的网段通告进入BGP进程。
[R3-bgp-af-ipv4]network 33.33.33.0 24
在R1和R2和R3上查看BGP路由表:
可以看到在各个路由器的路由表中,33.33.33.0/24并没有被聚合,R3将其通告给R1,R12通告给R2,整个过程中该路由都没有被聚合。这就使用network命令通告到BGP的路由,在自然网络边界处,BGP不会进行自动聚合。
4.5 引入外部路由到BGP协议中
在R2上使用import-route命令引入直连的路由
[R2]bgp 200
[R2-bgp]ipv4-family unicast
[R2-bgp-af-ipv4]import-route direct
在R1和R2和R3上查看BGP路由表:
可以看到在R1和R3的BGP路由表中,都出现了22.0.0.0,且没有显示掩码信息,这正是聚合后的一个A类自然网络。
与RIPV2路由协议类似,当开启了BGP自动路由聚合功能后,R2的G0/0/0接口属于10.0.12.0/24网段,自然网络号是10.0.0.0/8,而loopback1属于22.22.22.0/24网段,网络号为22.0.0.0/8,两个都是A类网络,但是两个自然网络号不相同,所以R2位于自然网络的边界,因此当R2将22.22.22.0/24通告给R1时便进行了路由的自动聚合。
但是在实际项目中,一般很少会启用BGP的自动路由聚合。因为IP地址的规划很难做到归正有序。