only enable radv if upstream connection available
Hello, I'm a bit annoyed because my ipv6 tunnel (via sixxs) is unreliable from time to time and I wonder if bird can help me to at least stop sending out radv packets to my local machines if the tunnel is not working[1]. (Or maybe send packets, but with a zero lifetime.) I read about filters now and also spend some time googling, but still I don't see if/how this could be possible. Does someone of you has a nice idea or a link to an example that could help me? Best regards Uwe [1] for some definition of "not working"
On 9 Jan 2013, at 21:13, Uwe Kleine-König wrote:
I'm a bit annoyed because my ipv6 tunnel (via sixxs) is unreliable from time to time and I wonder if bird can help me to at least stop sending out radv packets to my local machines if the tunnel is not working[1]. (Or maybe send packets, but with a zero lifetime.)
Why don't you write a tiny perl script to modify your bird6.conf when according to when your tunnel starts or stops working (for whatever value of 'working' you choose), then reload bird, which is a soft config change. I don't see how bird could intuit what you mean y 'working'. -- Alex Bligh
Hi, is it possible to only announce IPv6 RA if you receive a default route via another protocol in bird? like the following: Upstream IPv6 Router Runs OSPF3, announce ::/0 to link1 + link2 ^ II link1 + link2 parallel to downstream router II v Downstream IPv6 Router, runs bird Runs OSPF3, announce local net to upstream router on link1 + link2 additionally annouce IPv6 RA to clients if ::/0 from upstream received ^ II local net to clients, only use IPv6 if connection to upstream router is ok.
On Thu, Jan 10, 2013 at 12:16:42AM +0100, Stefan Hellermann wrote:
Hi,
is it possible to only announce IPv6 RA if you receive a default route via another protocol in bird?
This is not currently possible, but it is simple feature that i already wanted to implement, so could be expected in near future. Question is how exactly such feature should behave - you could either withdraw just default route on IPv6 clients, or you could also deprecate assigned IPv6 addresses. The first behavior is simple and probably useful in most cases, but it does not help in a case when you have two (or more) completely independent uplinks (with different assigned IPv6 prefixes), i.e. non-BGP based multihoming. In that case you would need rules like like 'propagate this prefix if you received default route from that protocol'. Perhaps we could just have prefix-specific filters that decide whether given prefix should be propagated or not (based on received (default) routes). -- 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."
On Wed, Jan 09, 2013 at 10:13:08PM +0100, Uwe Kleine-König wrote:
Hello,
I'm a bit annoyed because my ipv6 tunnel (via sixxs) is unreliable from time to time and I wonder if bird can help me to at least stop sending out radv packets to my local machines if the tunnel is not working[1]. (Or maybe send packets, but with a zero lifetime.)
I read about filters now and also spend some time googling, but still I don't see if/how this could be possible.
Does someone of you has a nice idea or a link to an example that could help me?
Currently there is no such option short of external script that tests availability of uplink. You could either change config file and reload (as suggested by others), or just call 'birdc disable radv1' and 'birdc enable radv1' commands from a script. -- 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 (4)
-
Alex Bligh -
Ondrej Zajicek -
Stefan Hellermann -
Uwe Kleine-König