Questions about anycasting setup
scg at gibbard.org
Sat Mar 10 00:57:02 CST 2012
On Mar 9, 2012, at 1:01 AM, Pete Carah wrote:
>> Well, let's say, using Quagga/BIRD might not really be best practice for
>> everybody... (e.g., *we* are using Cisco equipment for this)
> Actually there is a *very* good reason why many (most?) anycast
> instances use quagga/BIRD/gated/etc
> to speak bgp (or even ospf for internal anycast) which using a Cisco (or
> any separate router) usually won't accomplish.
I've done this two ways.
I've used Quagga to announce routes directly from the anycast servers. This guarantees you that the route will go away if the server completely goes away, and that traffic will be directed elsewhere. It also allows you to run scripts on the servers that can withdraw the routes in other circumstances, such as if a script running on the server detects that the server is non-responsive (or overloaded).
I've used load balancers in front of the name servers. Like Quagga running directly on the server, a load balancer can withdraw routes when all servers behind it stop responding. It has some advantages, in that it can withdraw routes to non-responsive servers even in cases where the server may be too confused to detect its own problems and send the appropriate messages to Quagga. It can spread load among a larger collection of servers than a router would be able to on its own, sit in front of the servers and do rate limiting, and things like that. It could help with the overload issue Bill mentions by selectively sending some queries to other sites without the all or nothing effect you get from a BGP route withdrawal. On the other hand, load balancers aren't cheap, and and once installed in the middle of a network they become one more device to fail.
I have no idea what Cisco equipment Elmar is using, but I wouldn't jump to the conclusion that it can't withdraw routes when needed.
More information about the NANOG