Ich habe zwei Schnittstellen:
wlan0
- Wi-Fi-Client über DHCP konfiguriert;wlan1
- statische IP-Adresse, diehostapd
als Zugriffspunkt ausgeführt wirddnsmasq
und IP-Adressen und Service-DNS-Anforderungen auf dieser Schnittstelle ausgibt.
Leider scheint es, dass beim dnsmasq
Ausführen etwas das überschreibt resolv.conf
und das lokale dnsmasq
für die lokalen Abfragen übernimmt. Hier ist das resolv.conf
After dnsmasq
gelaufen ...
pi@raspberrypi:~$ cat /etc/resolv.conf
# Generated by resolvconf
domain home
nameserver 127.0.0.1
dnsmasq
ist nur an gebunden wlan1
und wurde in keinem Fall so konfiguriert, dass er als lokaler Namensauflöser fungiert.
Wenn ich dnsmasq
die DHCP-Lease töte und dann aktualisiere, verfügt die resolv.conf
Datei über die richtigen DNS-Server, die über DHCP konfiguriert wurden.
Ich denke, dies könnte das Ergebnis einer Interaktion mit sein resolv.conf
, aber ich bin mir nicht sicher.
Ich kann nicht herausfinden, wer die DNS-Serverkonfiguration des lokalen Computers überschreibt, um auf den lokalen Server zu verweisen dnsmasq
, oder wie dies korrekt verhindert werden kann.
Beachten Sie, dass ich dnsmasq
nur DNS-Anfragen beantworten wlan1
möchte, weil ich diese Schnittstelle so einrichten möchte, dass ein Captive-Portal zum Konfigurieren der SSID auf der wlan0
Schnittstelle über eine Webseite erstellt wird und die auf dem Computer ausgeführte Software die wlan0
Verbindung verwendet ins Internet gehen.
/etc/default/dnsmasq
hat jetzt die Option, am Ende den Hash zu entfernen, was die Arbeit erledigt :IGNORE_RESOLVCONF=yes
.IGNORE_RESOLVCONF=yes
eigentlich nichts bewirkt, das Hinzufügen hatDNSMASQ_EXCEPT=lo
das Problem tatsächlich behoben. Dies war auf rasbian 2018-03-13 mit dnsmasq 2.76.