Bird2 not distributing IPv6 address on dummy to OSPF
Hello, I just installed fresh Debian 11 server and I need to distribute IPv6 /128 address from dummy1 interface to OSPF. Direct protocol see that address, but neighbour not. Am I missing something? ip -6 route 2a02:6ca3:0:2::25 dev dummy1 proto bird metric 32 pref medium 2a02:6ca3:0:2::25 dev dummy1 proto kernel metric 256 pref medium bird> show route table master6 Table master6: 2a02:6ca3:0:2::25/128 unicast [ospf2 00:32:34.008] I (150/0) [172.20.12.25] dev dummy1 log syslog all; router id 172.20.12.25; protocol device { } protocol direct { disabled; # Disable by default ipv4; # Connect to default IPv4 table ipv6; # ... and to default IPv6 table } protocol kernel { ipv4 { export all; }; } protocol kernel { ipv6 { export all; }; } protocol static { ipv4; } protocol static { ipv6; } protocol ospf v2 { ipv4 { import all; }; area 0 { interface "ens192" { type broadcast; }; interface "dummy1" { stub; }; }; } protocol ospf v3 { ipv6 { import all; }; area 0 { interface "ens192" { type broadcast; }; interface "dummy1" { stub; }; }; }
Hello everyone, I just found that neighbour router Mikrotik has the LSA in table. So I incorrectly mentioned that Bird2 is not advertising route. But that route does not appear in Mikrotik routing table. I compared the same configuration with Quagga (which works correctly) and the difference between LSAs is LA option bit. NOT WORKING: referenced-LS-type=Router LSA referenced-LS-ID=0 prefix=2a02:6ca3:0:2::25/128 options=01000000 (LA) WORKING: referenced-LS-type=Router LSA referenced-LS-ID=0 prefix=2a02:6ca3:0:2::2/128 options=00000000 prefix=2a02:6ca3:0:2::3/128 options=00000000 prefix=2a02:6ca3:0:2::4/128 options=00000000 According to RFC5340: LA-bit The "local address" capability bit. If set, the prefix is actually an IPv6 interface address of the Advertising Router. Advertisement of local interface addresses is described in Section 4.4.3.9. An implementation MAY also set the LA-bit for prefixes advertised with a host PrefixLength (128). So does it mean that Mikrotik does not understand "MAY implementation" of LA-bit for host PrefixLength (128)? ut 28. 9. 2021 o 1:15 Blažej Krajňák <blazej.krajnak@gmail.com> napísal(a):
Hello,
I just installed fresh Debian 11 server and I need to distribute IPv6 /128 address from dummy1 interface to OSPF. Direct protocol see that address, but neighbour not. Am I missing something?
ip -6 route 2a02:6ca3:0:2::25 dev dummy1 proto bird metric 32 pref medium 2a02:6ca3:0:2::25 dev dummy1 proto kernel metric 256 pref medium
bird> show route table master6 Table master6: 2a02:6ca3:0:2::25/128 unicast [ospf2 00:32:34.008] I (150/0) [172.20.12.25] dev dummy1
log syslog all; router id 172.20.12.25; protocol device { } protocol direct { disabled; # Disable by default ipv4; # Connect to default IPv4 table ipv6; # ... and to default IPv6 table } protocol kernel { ipv4 { export all; }; } protocol kernel { ipv6 { export all; }; } protocol static { ipv4; } protocol static { ipv6; } protocol ospf v2 { ipv4 { import all; }; area 0 { interface "ens192" { type broadcast; }; interface "dummy1" { stub; }; }; } protocol ospf v3 { ipv6 { import all; }; area 0 { interface "ens192" { type broadcast; }; interface "dummy1" { stub; }; }; }
Hi, For some reason MikroTik have problem when using /127-/128. It will works well when using /126. Br, Dewangga On Tue, 28 Sep 2021 at 16.12 Blažej Krajňák <blazej.krajnak@gmail.com> wrote:
Hello everyone,
I just found that neighbour router Mikrotik has the LSA in table. So I incorrectly mentioned that Bird2 is not advertising route. But that route does not appear in Mikrotik routing table. I compared the same configuration with Quagga (which works correctly) and the difference between LSAs is LA option bit.
NOT WORKING: referenced-LS-type=Router LSA referenced-LS-ID=0 prefix=2a02:6ca3:0:2::25/128 options=01000000 (LA)
WORKING: referenced-LS-type=Router LSA referenced-LS-ID=0 prefix=2a02:6ca3:0:2::2/128 options=00000000 prefix=2a02:6ca3:0:2::3/128 options=00000000 prefix=2a02:6ca3:0:2::4/128 options=00000000
According to RFC5340:
LA-bit The "local address" capability bit. If set, the prefix is actually an IPv6 interface address of the Advertising Router. Advertisement of local interface addresses is described in Section 4.4.3.9. An implementation MAY also set the LA-bit for prefixes advertised with a host PrefixLength (128).
So does it mean that Mikrotik does not understand "MAY implementation" of LA-bit for host PrefixLength (128)?
ut 28. 9. 2021 o 1:15 Blažej Krajňák <blazej.krajnak@gmail.com> napísal(a):
Hello,
I just installed fresh Debian 11 server and I need to distribute IPv6 /128 address from dummy1 interface to OSPF. Direct protocol see that address, but neighbour not. Am I missing something?
ip -6 route 2a02:6ca3:0:2::25 dev dummy1 proto bird metric 32 pref medium 2a02:6ca3:0:2::25 dev dummy1 proto kernel metric 256 pref medium
bird> show route table master6 Table master6: 2a02:6ca3:0:2::25/128 unicast [ospf2 00:32:34.008] I (150/0)
[172.20.12.25]
dev dummy1
log syslog all; router id 172.20.12.25; protocol device { } protocol direct { disabled; # Disable by default ipv4; # Connect to default IPv4 table ipv6; # ... and to default IPv6 table } protocol kernel { ipv4 { export all; }; } protocol kernel { ipv6 { export all; }; } protocol static { ipv4; } protocol static { ipv6; } protocol ospf v2 { ipv4 { import all; }; area 0 { interface "ens192" { type broadcast; }; interface "dummy1" { stub; }; }; } protocol ospf v3 { ipv6 { import all; }; area 0 { interface "ens192" { type broadcast; }; interface "dummy1" { stub; }; }; }
-- Sent from iDewangga Device
On Tue, Sep 28, 2021 at 11:04:28AM +0200, Blažej Krajňák wrote:
Hello everyone,
I just found that neighbour router Mikrotik has the LSA in table. So I incorrectly mentioned that Bird2 is not advertising route. But that route does not appear in Mikrotik routing table. I compared the same configuration with Quagga (which works correctly) and the difference between LSAs is LA option bit.
Hello I also bumped into this issue. You are right, BIRD sets LA-bit for /128 prefixes, Mikrotik for some reason ignores them. AFAIK when modified to not set LA-bit, it worked. Simple workaround is to export the prefix as an external route: protocol static { ipv6 route 20xx:xxxx:xxxx::1/128 via "dummy0" { ospf_metric1 = 0; }; }
According to RFC5340:
LA-bit The "local address" capability bit. If set, the prefix is actually an IPv6 interface address of the Advertising Router. Advertisement of local interface addresses is described in Section 4.4.3.9. An implementation MAY also set the LA-bit for prefixes advertised with a host PrefixLength (128).
So does it mean that Mikrotik does not understand "MAY implementation" of LA-bit for host PrefixLength (128)?
-- 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."
participants (3)
-
Blažej Krajňák -
NitrouZ -
Ondrej Zajicek