在 Quagga 中宣传非传递路线

网络工程 BGP 斑驴
2022-02-05 04:58:27

我有两个 ebgp 对等体连接到我的 quagga 1.0.20160315 路由器。

其中一个对等点 (peer1) 正在广播 MP_REACH_NLRI 路径属性中带有标志 0x800(可选非传递)的路由。下一跳也被标记为可选非传递。

我的 quagga 路由器没有将这条路由通告给另一个 peer2,我怀疑这是因为路径属性中的 Non-Transitive 标志。

他们是一种覆盖传入路由中的非传递标志并将它们重新分配给所有其他对等方的方法吗?

在此先感谢您的帮助。问候

更新 我通过使用路由图并重新编写 bgp 下一跳来使其工作。由于非传递标志,原始路由未通告。

router bgp 64496  
bgp router-id 192.168.56.1  
network 192.1.1.0/24  
 !  
 redistribute connected  
 neighbor 192.168.20.201 remote-as 64496  
 neighbor 192.168.20.201 route-reflector-client  
 neighbor 192.168.20.201 update-source 192.168.20.1  
 neighbor 192.168.20.201 soft-reconfiguration inbound  
redistribute connected  
 neighbor 192.168.56.202 remote-as 64498  
 neighbor 192.168.56.202 update-source 192.168.56.1  
 neighbor 192.168.56.202 soft-reconfiguration inbound  
 neighbor 192.168.56.202 route-map set-nexthop out  
!  
route-map set-nexthop permit 10  
 set ip next-hop 192.168.56.1  
 set metric 200  
 set local-preference 5  
!   
1个回答

不,您不能更改标志。属性 MP_REACH_NLRI 在 RFC4760 中定义为可选非传递。您要宣传什么样的路线?

在同一 AS(64496) 中将邻居更新到 192.168.20.201 是 iBGP,而不是 eBGP。您应该能够通过更改本地 AS 或邻居 AS 轻松修复它。

在设置 nexthop 之前它不起作用的原因是 Quagga 路由器收到了来自 192.168.20.201 的路由,但无法使用它们的 nexthop。您可以使用neighbor <peer> next-hop-self来修复它而不是路线图。

此外,如果您想为所有路由器运行 eBGP,则无需配置neighbor <peer> route-reflector-client哪个用于 iBGP。