dnsmasq: jak obsługiwać domenę lokalną (A, PTR)?

1

(zaadaptowano z listy mailingowej dnsmasq, którego archiwum wydaje się być wyłączone, więc nie jestem pewien, czy nadal jest aktywne)

Cześć,

Skonfigurowałem dnsmasq w mojej sieci domowej, aby zastąpić starszy system isc / bind :) podczas zmiany architektury. Instalacja opiera się na oknie debian, które działa jako router / zapora ogniowa / „mistrz wszystkich prawd” (DNS, ntp, ...):

  • dostęp ADSL do Internetu z publicznym adresem IP przypisanym do eth1
  • sieć przewodowa 192.168.0.0/24 powiązana z eth0 (która ma adres 192.168.0.10)
  • sieć przewodowa 192.168.1.0/24 związana z wlan3 (która ma adres 192.168.1.10)
  • nazwa domeny dla sieci wewnętrznej to „home”
  • zapora ogniowa jest obsługiwana przez ścianę brzegową

Konfiguracja dnsmasq to:

domain-needed
bogus-priv
local=/home/
expand-hosts
domain=home
dhcp-range=eth1,192.168.0.70,192.168.0.150,240h,set:lan
dhcp-range=wlan3,192.168.1.10,192.168.1.50,240h,set:wifi
dhcp-option=42,0.0.0.0
dhcp-option=27,1
dhcp-option=19,0           # option ip-forwarding off
dhcp-option=44,0.0.0.0     # set netbios-over-TCP/IP nameserver(s) aka
WINS server(s)
dhcp-option=45,0.0.0.0     # netbios datagram distribution server
dhcp-option=46,8           # netbios node type
dhcp-option=252,"\n"
dhcp-option=vendor:MSFT,2,1i
dhcp-authoritative

Co działa:

  • klienci w podsieciach (zarówno przewodowi, jak i bezprzewodowi) otrzymują adresy IP przez DHCP w oczekiwanych zakresach
  • zewnętrzne (Internet = przekazane) rozpoznawanie DNS działa dla tych klientów i serwera

Co nie działa:

  • „domowa” nazwa domeny nie wydaje się być obsługiwana poprawnie. /etc/hostsma 192.168.0.10 server.homewpis, który najwyraźniej nie jest używany przez dnsmasq, tj. dig servernie zwraca nazwy, dig server.hometeż nie.
  • Nie udało mi się wysłać rozwiązania rozpoznawania nazw zależnego od sieci, do której jest wysyłane. Mianowicie, serverpozycja avove powinna idealnie wskazywać 192.168.0.10 dla sieci przewodowej i 192.168.1.10 dla sieci bezprzewodowej. Dzisiejsza konfiguracja działa, ale naprawdę nie jest poprawna (ruch do serwera z sieci bezprzewodowej dociera do serwera przez interfejs przewodowy).

Jestem pewien, że jest to coś oczywistego, ale jestem zupełnie nowy w dnsmasq i doceniłbym bardzo wszelkie wskazówki. Było podobne pytanie jakiś czas temu, ale przyjął odpowiedź sugeruje, że nie jest dnsmasq obsługi tych podstawowych wymagań (domena lokalna, aktualizacje PTR) poprawnie (?)

Dziękuję Ci

WoJ
źródło

Odpowiedzi:

3

W końcu rozwiązałem pierwszy i kluczowy problem poprzez:

  • kopiowanie /etc/resolv.confdo/etc/resolv.dnsmasq
  • ustawienie tylko jednej nameserver 127.0.0.1linii/etc/resolv.conf
  • w /etc/dnsmasq.confdodałemresolv-file=/etc/resolv.dnsmasq

Zmusza to serwer do rozpoznawania nazw DNS na lokalnym DNS ...

... czyli dnsmasq ...

... który korzysta z serwerów nadrzędnych zdefiniowanych w /etc/resolv.dnsmasq

Drugi problem pozostaje, ale ma mniejsze znaczenie.

WoJ
źródło
Dzięki Simonowi Kelleyowi (autorowi dnsmasq) rozwiązany jest również drugi problem: localise-queriesnależy go dodać do pliku konfiguracyjnego dnsmasq (szczegóły są dostępne man dnsmasq)
WoJ,
0

„kopiowanie /etc/resolv.conf do /etc/resolv.dnsmasq”

jest to przydatne tylko w Debianie. przyzwoita nieinwazyjna konfiguracja pozwala dnsmasq odczytać plik resolv.conf, który powinien zaczynać się od 127.0.0.1

domena prawdopodobnie nie działa z powodu twoich ustawień wyszukiwania w /etc/resolv.conf (nie tych, których obecnie używa dnsmasq)

użytkownik870269
źródło