On Thu, Oct 10, 2019 at 04:57:28PM +0200, Jan-Philipp Litza wrote:
Hi list,
maybe this question boils down to "How can I tell bird to always use global IPv6 addresses as nexthops". But let me give you a sketch of my problem:
RR ---- R1 ---- R2
Addresses: RR 2001:db8:1::100, fe80:1::100%I1 R1 2001:db8:1::1, fe80:1::1%I1 2001:db8:2::1, fe80:2::1%I2 R2 2001:db8:2::2, fe80:2::2%I2
RR is an route reflector with * a direct iBGP session to R1 / 2001:db8:1::1, and * a multihop eBGP session to R2 / 2001:db8:2::2. As RR isn't supposed to forward any traffic, it has "missing lladdr ignore" set on the iBGP session. R1 and R2 don't talk to each other.
Now RR exports this route to R1, and this is where things go wrong:
bird> show route all 2001:db8:3::/64> 2001:db8:3::/64 unicast [RR 2019-10-10 from 2001:db8:1::100] * (100/0) [AS4242424242?] via fe80:1::100 on I2 Type: BGP univ BGP.origin: Incomplete BGP.as_path: 4242424242 BGP.next_hop: 2001:db8:2::2 BGP.local_pref: 100
R1 correctly identifies the BGP.next_hop as being on-link for I2, but uses the link-local address of RR on the interface to R2 as nexthop.
(Actually, it's even worse: R1 doesn't really use fe80:1::100 as nexthop, but the link-local address of the peer that was formerly in the place of RR. That address isn't even present anymore on any server anywhere!)
Hi Not really sure how that might happen with direct session. What is your BIRD version and configs? What routes do you have in routing table? -- Elen sila lumenn' omentielvo Ondrej 'Santiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."