Keywords: Anycast, Recursive, DNS, dnsdist, PowerDNS
As part of the ISP services I operate for myself, Recursive DNS server IP addresses are part of this. It is annoying when a DNS server fails for some reason and lookups have a delay to fail over to the other IP. Operating systems aren’t always intelligent about it either. Some try each and every time, others remember state from previous queries.
2x DNS Server IPs were handled, 1 each, by individual backends. A backend failing would take down that IP, and DNS service on that IP.
2x (IPv4 and also IPv6) DNS Server IPs were handled in high availability by 3x intelligent PowerDNS dnsdist frontends in 2x locations using BGP to distribute health-checked DNS server IPs into routing.
Backend resolving handled by 3x redundant PowerDNS Recursor backends also in 2x locations.
Any frontend or backend can die or be ungracefully removed from service at any point and it will be removed active use almost immediately, and automatically!