1

我试图让 Quagga 做一些简单的事情,比如向另一个 eBGP 连接的邻居通告 eBGP 学习的前缀。够简单吧?

BGPd 配置片段

!
router bgp 64620
 bgp router-id 172.29.253.80
 bgp log-neighbor-changes
 network 172.29.253.80/32
 timers bgp 10 30
 neighbor 10.35.253.2 remote-as 64901
 neighbor 10.35.253.2 next-hop-self
 neighbor 10.35.253.2 soft-reconfiguration inbound
 neighbor 10.47.0.254 remote-as 64621
 neighbor 10.47.0.254 ebgp-multihop 255
 neighbor 10.47.0.254 next-hop-self
 neighbor 10.47.0.254 soft-reconfiguration inbound
!

前缀 10.47.0.0/16 从邻居 10.47.0.254 学习并重新通告到 10.35.253.2

# sh ip bgp 10.47.0.0/16
BGP routing table entry for 10.47.0.0/16
Paths: (1 available, best #1, table Default-IP-Routing-Table)
  Advertised to non peer-group peers:
  10.35.253.2
  64621
    10.47.0.254 from 10.47.0.254 (10.47.0.254)
      Origin IGP, localpref 100, valid, external, best
      Last update: Mon Mar 19 08:35:28 2018

但是检查到 10.35.253.2 的通告路由发现它(10.47.0.0/16)确实没有被通告。我还用 tcpdump 验证了这一点。

# sh ip bgp neighbors 10.35.253.2 advertised-routes 
BGP table version is 0, local router ID is 172.29.253.80
Status codes: s suppressed, d damped, h history, * valid, > best, = multipath,
              i internal, r RIB-failure, S Stale, R Removed
Origin codes: i - IGP, e - EGP, ? - incomplete

   Network          Next Hop            Metric LocPrf Weight Path
*> 172.29.253.80/32 10.35.253.1              0         32768 i

Total number of prefixes 1

BGPd版本

# /usr/lib/quagga/bgpd --version
bgpd version 0.99.24.1
4

1 回答 1

1

原来这是 Quagga 中的一个错误。 https://bugzilla.quagga.net/show_bug.cgi?id=972

通过切换到似乎更积极维护的 FRR 来解决。

于 2018-03-21T14:13:55.000 回答