一、BGP选路原则
在BGP路由选择中,有四个基本原则:路径最短、自治系统途径、IGP优先、EBGP优先。其中“路径最短”和“自治系统途径”是BGP的两个基本原则,我们将在下面的小标题中详细讲解。这些原则在BGP选择路由时应该一起使用,优先遵循路径最短、自治系统途径,然后再考虑IGP优先、EBGP优先。
二、BGP选路原则口诀(华为)
华为公司提供了一个有趣的口诀,帮助我们记忆BGP选路原则:
路径最短 自治系统途径 IGP优先 EBGP优先
这个口诀不仅简短易记,而且顺口溜节奏十足,值得推荐。
三、BGP选路规则
BGP的选路规则分为两类:路由选择规则和路由传输规则。路由选择规则是指BGP选择路由的过程和规则,如前面所述的BGP选路原则;而路由传输规则是指BGP传输路由信息和维护连接的过程和规则。这两类规则都非常重要,如果没有明确的选路规则和传输规则,BGP将无法正常工作。
四、BGP选路原则顺序
在使用BGP选路原则时,应始终按照以下顺序使用:
- 路径最短
- 自治系统途径
- IGP优先
- EBGP优先
按照这个顺序,可以保证BGP在选择路由时,先考虑最优路径,然后再考虑自治系统途径和其他因素。
五、BGP选路优先级
BGP的选路优先级是指BGP在选择路由时,每个原则的优先级。BGP选路原则的优先级如下:
- 权重(weight)
- 本地优先级(local-preference)
- AS路径长度(AS-path)
- 原点代码(origin code)
- 多路径(multipath)
这些优先级的设置可以与路由其他属性结合起来,以实现更精细的路由选择。
六、BGP选路配置
在Cisco IOS中,可以通过“IP路由”命令配置BGP选路规则。下面是一个简单的BGP选路配置示例:
router bgp 100 bgp log-neighbor-changes neighbor 192.168.1.1 remote-as 200 neighbor 192.168.1.1 next-hop-self neighbor 192.168.1.1 route-map RM-LOCAL-PREF in ip access-list standard JUNIPER-AS permit 10.10.10.0 0.0.0.255 route-map RM-LOCAL-PREF permit 10 match ip address JUNIPER-AS set local-preference 200
在这个配置中,“RM-LOCAL-PREF”是一个路由映射,用于设置本地优先级。它将进入AS 200的来自10.10.10.0/24的路由设置为200的本地优先级。“Next-hop self”命令指示BGP使用本地路由器的IP地址作为预先配置的下一跳,而不是远程BGP门户路由器的地址。这可以避免一些问题和冗余。
七、BGP选路选择
BGP选路选择的过程可以通过查看路由表来了解。在Cisco IOS中,可以使用“show ip bgp”命令查看选路信息。
Router# show ip bgp Network Next Hop Metric LocPrf Weight Path *>i10.0.0.0 192.168.2.1 0 100 0 200 i *> 192.168.1.0 0.0.0.0 0 110 0 i * i192.169.1.0 192.168.2.1 0 100 0 200 i *> 192.169.2.0 0.0.0.0 0 110 0 200 i
在上面的例子中,BGP选择了四个路由:10.0.0.0、192.168.1.0、192.168.2.0和192.169.2.0。下一跳和自治系统路径是已知的,每个路由的“Metric”和“LocPrf”属性显示了选路信息的详细信息。选路信息的解释可以参考文档或讨论区。
八、BGP选路原则的实现
实现BGP选路原则的方法可以分为两类:传入路由策略和传出路由策略。传入路由策略是指在进入路由器之前应用的策略,而传出路由策略是指在发送路由信息时应用的策略。
九、BGP选路优先级顺口溜
为了方便记忆,BGP选路优先级可以使用以下顺口溜:
WEIGHT(权重)最高, LOCAL-PREF(本地优先级), AS-PATH(自治系统路径)短, ORIGIN(原点代码)同, MULTI-PATH(多路径)最后在用。
十、结语
BGP选路原则是BGP协议中非常重要的一部分,它决定了BGP路由选择时的顺序和规则。我们必须深入了解这些原则,并根据实际情况优化BGP路由选择。同时,我们还需要学习如何配置和维护BGP路由,以保证网络的正常运行。