Jak uzyskać dnsmasq do określenia alternatywnych serwerów DNS?

19

Pracuję w sieci z ~ 10 pulpitami kubuntu (oraz licznymi serwerami i telefonami IP) i próbuję przekonać dnsmasq, aby określił inny serwer dns jako tryb failover. Próbowałem użyć

server=192.168.0.90

ale to właśnie dodało pojedynczy serwer dhcp / dns do /etc/resolv.conf na mojej maszynie testowej (dynamiczny adres IP i świeżo zrestartowany bez dzierżawy).

pfyon
źródło

Odpowiedzi:

27

Odpowiedziałem na własne pytanie, dzięki rfc2132

dhcp-option=6,192.168.0.90,192.168.0.98

Jednak RFC2132 określa opcję 5 jako listę serwerów nazw i opcję 6 jako listę serwerów nazw domen i nie jestem pewien, jaka jest różnica. Tak czy inaczej, opcja 6 umieści je poprawnie jako

nameserver 192.168.0.90
nameserver 192.168.0.98

w /etc/resolv.conf

pfyon
źródło
1
Niestety /etc/resolv.conf odświeża się po ponownym uruchomieniu
Farid Movsumov,
3
@FeridMovsumov use server=8.8.8.8in /etc/dnsmasq.conf
Tek
2
@Tek Google musi wiedzieć wszystko?
ceving
1
@ceving Jeśli nie Google, to twój dostawca usług internetowych
Tek
8

Publikowanie jako osobna odpowiedź zamiast komentarza na twój temat, ponieważ w ten sposób mogę korzystać z linków.

Opcja 5 dotyczy serwerów nazw IEN 116 - absurdalnie przestarzały protokół, którego Jon Postel chciał zabić ponad dwadzieścia lat temu. Solaris nadal go obsługuje , ale nie będzie w następnej wersji.

Brad Ackerman
źródło
0

Innym sposobem jest ustawienie serwera dnsmasq jako serwera DNS dla DHCP i użycie go /etc/resolv.confna serwerze dnsmasq do określenia listy serwerów DNS. W ten sposób możesz łatwo zmienić DNS (i ustawić aliasy) bez konieczności oczekiwania na odnowienie DHCP - po prostu uruchom ponownie lub kill -HUPdnsmasq, aby ponownie załadować konfigurację.

Andrzej
źródło
Andrew, polecenie „zabij” oczekuje, że identyfikator procesu nie nazwa procesu. Powinieneś użyć albo kill -HUP, pidof dnsmasqalbo killall -HUP dnsmasq.