On Fri, Apr 10, 2015 at 11:29:24AM +0200, Ondrej Zajicek wrote:
On Fri, Apr 10, 2015 at 10:23:23AM +0200, Patrik Lundin wrote:
Some things to note:
* I have not decided on the best way to create the dummy interfaces, the solution above was just a quick hack but it seems to work well.
Just add 'dummy' to /etc/modules, it will be loaded and dummy0 will be created by default.
Ah, this explains why my current solution was creating an extra dummy1 interface, I did not realize just loading the module would create dummy0. Thanks for the tip!
* While bird defaults to a "ptp" link type for eth0, bird6 defaults to "broadcast".
* The dummy0 interface defaults to being a stub interface in bird, while it requires configuration in bird6.
That is because OSPFv2 uses IPv4 addresses where /31 signalize ptp link and /32 stub link, OSPFv3 uses IPv6 link-local addresses and there is /64 everywhere.
Good to know, I was mostly pointing it out if anyone was wondering why my configuration differed somewhat between the protocols.
The above configuration works well, the main thing I am still not sure about if is there is a "best" way to take a specific anycast node out of rotation if it needs maintenance. Anyone have any experience with this? General ideas are appreciated as well!
There are two possibilities:
1) Shut down dummy interface (ip link set dummy0 down), OSPF should immediately stop propagating attached addresses. This is probably the cleanest solution. You could even have multiple dummy interfaces with different addresses for different services and disable them independently.
2) Shut down OSPF protocol (birdc disable ospf1), OSPF would immediately de-peer. It should be also immediate, although in unusual cases you have to wait for timeout.
Thanks for the ideas, once I have a second node available for testing I'll experiment with these solutions. Regards, Patrik Lundin