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óżnych 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ę supermasters
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.