Hello, we have a setup here where we want to accounce different ipv6 prefixes on different interfaces. We tried it this way: protocol radv 'radvd_bat09' { interface "bat09" { max ra interval 20; link mtu 1280; prefix 2a03:2260:115:900::/64 { }; }; rdnss { ns 2a03:2260:115:900::2; }; }; protocol radv 'radvd_bat10' { interface "bat10" { max ra interval 20; link mtu 1280; prefix 2a03:2260:115:1000::/64 { }; }; rdnss { ns 2a03:2260:115:1000::3; }; }; Bird6 detects both protocols and lists them in show protocols, but it doesn't work. Clients on bat10 don't get a prefix. Another way might be to user the interface block multiple times in one radv protocol which is indeed possible. But how can I announce different dns servers for the different interfaces (like in the example above)? Does bird6 support multiple radv blocks or not? Regards, Matthias
On Mon, Mar 21, 2016 at 01:15:08AM +0100, Matthias Peter Walther wrote:
Hello,
we have a setup here where we want to accounce different ipv6 prefixes on different interfaces. We tried it this way:
protocol radv 'radvd_bat09' { interface "bat09" { max ra interval 20; link mtu 1280; prefix 2a03:2260:115:900::/64 { }; }; rdnss { ns 2a03:2260:115:900::2; }; };
protocol radv 'radvd_bat10' { interface "bat10" { max ra interval 20; link mtu 1280; prefix 2a03:2260:115:1000::/64 { }; }; rdnss { ns 2a03:2260:115:1000::3; }; };
Bird6 detects both protocols and lists them in show protocols, but it doesn't work. Clients on bat10 don't get a prefix.
Hi. Can you see bird sending router advertisements on bat10? What does the bird log say?
Another way might be to user the interface block multiple times in one radv protocol which is indeed possible. But how can I announce different dns servers for the different interfaces (like in the example above)?
According to the documentation you can put rdnss block inside the interface definition and then use "rdnss local yes" interface parameter to use only the rdnss block inside this interface definition. (Which is what I should have probably done in the config below)
Does bird6 support multiple radv blocks or not?
I'm using two different radv blocks on bird version 1.4.5 and it works fine: protocol radv radv_generic { interface "-vip-eduroam","vip-*" { managed no; other config yes; max ra interval 120; min ra interval 20; }; prefix ::/0 { valid lifetime 7200; preferred lifetime 1800; }; rdnss { ns 2001:1488:fffe:20::fe; ns 2001:1488:fffe:20::fd; }; dnssl { domain "office.nic.cz"; domain "nic.cz"; }; } protocol radv radv_eduroam { interface "vip-eduroam" { managed no; other config yes; max ra interval 120; min ra interval 20; }; prefix ::/0 { valid lifetime 7200; preferred lifetime 1800; }; } regards Martin
On Mon, Mar 21, 2016 at 07:42:08PM +0100, Martin Kraus wrote:
On Mon, Mar 21, 2016 at 01:15:08AM +0100, Matthias Peter Walther wrote:
Another way might be to user the interface block multiple times in one radv protocol which is indeed possible. But how can I announce different dns servers for the different interfaces (like in the example above)?
According to the documentation you can put rdnss block inside the interface definition and then use "rdnss local yes" interface parameter to use only the rdnss block inside this interface definition. (Which is what I should have probably done in the config below)
You are right, both variants (separate radv protocols or rdnns blocks inside interface blocks) should work. Also note that 'rdnss local' option only says that protocol-wide rdnss block should not be used for that interface. If you have only interface-specific rdnss blocks, that option is not necessary (interface-specific blocks are used always).
Does bird6 support multiple radv blocks or not?
I'm using two different radv blocks on bird version 1.4.5 and it works fine:
protocol radv radv_generic { interface "-vip-eduroam","vip-*" { managed no; other config yes; max ra interval 120; min ra interval 20; };
-- 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)
-
Martin Kraus -
Matthias Peter Walther -
Ondrej Zajicek