Nicholas,

Any update (or patch to test) for this?
It’s still broken in the git master.

Otherwise I would prefer to back this commit out until it’s resolved.
(I worry as it masks other potential BGP errors. Nearly half of my BGP
compliance tests fail because of this problem)

- Martin Winter

On 6 Jul 2015, at 0:50, Martin Winter wrote:

It seems we have a bad commit in git master.

Commit c99f348 “*: add VRF ID in the API message header” is the bad commit.

It seems (at least) direct connected next hops in received BGP routes show up as inaccessible with “ebgp-multihop” configured. (It works without the
ebgp-multihop)
(in this example: 172.16.1.0/24, which is announced from the directly
connected BGP neighbor with a connected next hop of 192.168.1.1)

dut# show ip bgp
BGP table version is 0, local router ID is 192.168.1.101
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.16.1.0/24    192.168.1.1              0             0 501 i
*> 192.168.1.0      0.0.0.0                  0         32768 i

Total number of prefixes 2
dut# show ip bgp 172.16.1.0/24
BGP routing table entry for 172.16.1.0/24
Paths: (1 available, no best path)
Not advertised to any peer
501
 192.168.1.1 (inaccessible) from 192.168.1.1 (192.168.1.1)
   Origin IGP, metric 0, localpref 100, valid, external
   Last update: Sun Jul  5 21:47:03 2015

dut# show ip route 192.168.1.1
Routing entry for 192.168.1.0/24
Known via "connected", distance 0, metric 0, vrf 0, best
* directly connected, eth1


Here is how the issue can be reproduced:

2 computer’s running Quagga connected to each other of a single ethernet. (I’m
using Quagga for the tester to show the issue and on the DUT for this)
“Tester” is basically just used to announce the test network to the DUT which
runs the faulty Quagga code.

Here is the relevant config:

Tester:
[…]
interface eth1
ip address 192.168.2.1/24
ipv6 nd suppress-ra
no link-detect
!
router bgp 501
bgp router-id 192.168.1.1
network 172.16.1.0/24
neighbor 192.168.1.101 remote-as 500
!
ip route 172.16.1.0/24 Null0
!
[…]

DUT:
[…]
interface eth1
ip address 192.168.1.101/24
ipv6 nd suppress-ra
no link-detect
!
router bgp 500
bgp router-id 192.168.1.101
network 192.168.1.0/24
neighbor 192.168.1.1 remote-as 501
neighbor 192.168.1.1 ebgp-multihop 255
!
[…]

Sidenotes (not sure if it’s relevant):
- Ubuntu 14.04.2LTS
- Quagga configured with “--enable-vtysh --enable-tcp-zebra --enable-user=root --enable-multipath=0 --enable-fpm --enable-pimd --enable-isisd”


- Martin Winter
[email protected]

_______________________________________________
Quagga-dev mailing list
[email protected]
https://lists.quagga.net/mailman/listinfo/quagga-dev

Reply via email to