将路由注入 BGP 进行广告:BGP network 命令

网络工程 bgp
2021-07-11 00:30:44

我是 BGP 配置的完全新手。需要对理解 BGP 网络命令进行一些说明。

我们的 MPLS 站点路由器之一具有以下配置:(仅粘贴配置片段)“

R1#
interface Loopback0
 ip address 10.129.110.157 255.255.255.252

interface GigabitEthernet0/0
 ip address 10.129.110.154 255.255.255.252

interface GigabitEthernet0/1.10
 encapsulation dot1Q 10 native
 ip address 10.129.135.129 255.255.255.192

!         
interface GigabitEthernet0/1.20
 encapsulation dot1Q 20
 ip address 10.129.135.193 255.255.255.192



router bgp XXXXX
 bgp log-neighbor-changes
 neighbor 10.129.110.153 remote-as 7795
 neighbor 10.129.110.153
 neighbor 10.129.110.153 ebgp-multihop 10
 !
 address-family ipv4
  neighbor 10.129.110.153 activate
  neighbor 10.129.110.153 send-community
  neighbor 10.129.110.153 soft-reconfiguration inbound
  no auto-summary
  no synchronization
  **network 10.129.110.152 mask 255.255.255.248**
  network 10.129.135.128 mask 255.255.255.128
 exit-address-family
"

当输入 BGP 网络命令 "network 10.129.110.152 mask 255.255.255.248" 时,我们无法连接到环回地址“10.129.110.157”和来自我们网络其他任何地方的路由器。

但是当我们单独拆分网络命令时

 "network 10.129.110.152 mask 255.255.255.252"
 " network 10.129.110.156 mask 255.255.255.252"

一切正常。

有人可以向我解释 BGP 中网络命令的正确用法吗?此外,我们何时以及在什么情况下使用 BGP 中的聚合地址。

提前致谢。

2个回答

如果您熟悉 IGP(EIGRP、OSPF),则 network 命令用于广告网络和使用多播地址建立邻居。BGP 不同,因为我们静态分配邻居,network 命令用于简单地通告路由。

使用 IGP,您将在聚合网络块内通告所有前缀,因此如果您有:

"network 10.129.110.152 mask 255.255.255.248"

在说,EIGRP 下,您将在该网络内通告两个 /30。

BGP 的工作方式不同,因为您必须在 RIB 中拥有与您的网络语句完全匹配的内容。因为您没有与 10.129.110.152/29 网络完全匹配的网络,所以它没有做广告。添加与 RIB 匹配的网络语句后,您就可以开始了。

在某些情况下,您可能更喜欢使用空路由来锚定广告。所以你可以有:

 ip route 10.129.110.152 255.255.255.248 null 0

这会将网络路由放入路由表中,并且即使更具体的路由不可用,也会始终通告该路由。当您有一个飘动的链接时,这也有帮助,因为您的广告不会撤回并重新投放广告。

Aggregate-address 不同于 network 命令。使用 Aggregate-address 命令,您需要 BGP 表中的匹配项,而不是 RIB。网络不需要完全匹配,只需要在聚合地址中有更长的前缀。

这是一个非常有用的故障排除资源的链接。

NANOG BGP 故障排除

从旧的存档配置...

router bgp 7866
...
 network 66.152.0.0 mask 255.255.224.0
...
ip route 66.152.0.0 255.255.224.0 Null0 200

我们使用network. 空路由 a) 防止抖动(当该网络有实际接口时——例如客户提供的块),以及 b) 将网络放在路由表中,否则不会存在。