PowerDNS master i slave

PowerDNS do najlepsza alternatywa dla Bind‚a jaką można znaleźć na rynku. Za darmo oczywiście. Konfiguracja jest łatwa i przyjemna, jako backend dla trzymania danych rekordów można wybierać spośród róznych baz danych – SQLite, PostgreSQL i oczywiście MySQL.

Co nas cieszy to super prosta instalacja – wspierana praktycznie przez każdy system portów. Dokumentcja do projektu jest bardzo dobra, ale jest kilka trików o których nie wspomina.

Problemy, które mnie spotkały przy ustawiania serwera SLAVE. Po pierwsze serwer master MUSI mieć ustawioną konfigurację jako master, czyli w pliku /etc/powerdns/pdns.conf musi pojawić się master=yes Bez tego master nie będzie informował slave o zmianach.

Kolejne dwie ważne linijki w konfiguracji mastera to:

allow-axfr-ips=adres_ip
disable-axfr=no

pierwsza wskazuje na adres IP serwera slave – większą ilość adresów oddzielamy przecinkiem. Druga nie blokuje transfer AXFR.

Po tych ustawieniach warto sprawdzić przy pomocy DIG’a czy da się wykonać transfer „ręcznie”

dig @master.dns.serwer.pl domena.pl AXFR

Jeżeli chcemy żeby domeny propagowały automatycznie na slave trzeba utworzyć tabelę [pre]supermasters[/pre] i dodać do niej ip serwera master i jego nazwę. Ważne żeby kolumna „nameserver” pokrywała się z danymi w SOA serwera MASTER

I teraz najlepsze – o tyle o ile cały DNS działa w oparciu o UDP to do transferów AXFR musi być otwarty TCP na firewall – straciłem godzinę żeby do tego dojść.

I ostatnia „dobra” rada to ustawienie typu domeny na MASTER na serwerze NS który jest masterem. Na slave nie ustawiamy niczego, powinno się samo zaciągnąć z mastera.