用BGP的路由聚合功能聚合大陆路由,效果显著不?
正文共:666 字 11 图,预估阅读时间:1 分钟
之前我们统计过中国境内的IP地址和路由信息(你知道中国大陆一共有多少IPv4地址吗?),不过数量比较多,有8000多条。截止到2021年底,中国大陆境内的路由数量为8618条。(【辟谣】IPv4地址还剩1200多万个未分配,别再传IPv4地址耗尽了!)
在某些场景下,如果直接导入这些路由的难度还是有些大的,毕竟不是所有设备都能支撑8K+条路由。
那能不能对路由进行聚合呢?我们前面介绍过CIDR(具有 CIDR 的 IP 地址分配架构、无类别域间路由 (CIDR):Internet 地址分配和聚合计划)和BGP路由聚合(BGP-4中关于路由聚合的相关介绍)。聚合之后效果会不会好一些呢?
1.0.1.0/24
1.0.2.0/23
1.0.32.0/19
1.0.8.0/21
1.1.0.0/24
1.1.10.0/23
1.1.12.0/22
1.1.16.0/20
1.1.2.0/23
1.1.32.0/19
1.1.4.0/22
1.1.8.0/24
1.1.9.0/24
其实精简过的路由信息大概是长上面这样,为了把它导入到VSR中,我们需要调整一下格式。
目的就是把1.1.32.0/19这种修改为ip route-static 1.1.32.0 19 10.10.1.2这种样式的,方便直接刷入到路由器里面。
最后得到的命令如下:
然后我们把这些静态路由刷到VSR中,很快的,大概20秒就能刷完。
可以看到,设备最大支持1000万条生效路由,成功添加了8618条静态路由。然后就是配置BGP协议把路由从VSR1发送到VSR2。
#VSR1
bgp 100
peer 12.1.1.2 as-number 100
#
address-family ipv4 unicast
import-route static
peer 12.1.1.2 enable
#VSR2
bgp 100
peer 12.1.1.1 as-number 100
#
address-family ipv4 unicast
peer 12.1.1.1 enable
配置完成后从VSR上查看BGP路由信息。
简单查看一下生效情况。
还可以,暂时没发现什么问题。
然后就在VSR1上配置一下路由聚合,减少发布的路由数量,并减小路由表的规模。BGP支持自动聚合和手动聚合两种聚合方式,同时配置时,手动聚合的优先级高于自动聚合的优先级。
配置BGP自动聚合功能后,BGP将对通过import-route命令引入的IGP子网路由进行聚合,不再发布子网路由,而是发布聚合的自然网段的路由。
自动聚合是按照自然网段进行聚合,而且只能对IGP引入的子网路由进行聚合。通过配置手动聚合,用户可以同时对从IGP路由协议引入的子网路由和用network命令发布的路由进行聚合,而且还可以根据需要定义聚合路由的子网掩码长度。
加一条命令解决战斗。
#
bgp 100
peer 12.1.1.2 as-number 100
#
address-family ipv4 unicast
summary automatic
查看VSR1的设备路由,可以看到本地配置了8618条静态路由,但是经过BGP聚合之后路由条目就变成了2447条。
查看VSR2的路由信息,发现BGP路由移除了6247条,剩余生效2447条。
查看一下详细路由信息,发现大量的路由条目被聚合为了A类路由,共有44条。
然后统计一下聚合前后的路由信息。聚合之前共8618条路由,地址总数为3.4亿个。
聚合之后共2447条路由,地址总数为8.4亿个,增加了145%,准确性可想而知。
看来这种自动聚合的方式还是不可取啊,在实际使用过程中,准确率可能不足一半。
长按二维码
关注我们吧
千呼万唤始出来:EVE-NG终于来了!
终于成功了!用EVE-NG导入的设备可以做PBR了!
如何在EVE-NG中导入VSR1000设备?怎么解决登录问题?
没想到啊,竟然万物皆可EVE-NG!
想知道Android手机怎么远程登录到系统后台吗?看这里
如果把Linux主机作为路由器转发流量,性能可靠吗?
ADVPN:Full-Mesh模型组网实验
IPv4 地址冲突检测