![Warum trägt dnsmasq meine Router-IP in /etc/resolv.conf ein, statt 127.0.0.1?](https://rvso.com/image/31670/Warum%20tr%C3%A4gt%20dnsmasq%20meine%20Router-IP%20in%20%2Fetc%2Fresolv.conf%20ein%2C%20statt%20127.0.0.1%3F.png)
Ich habe in verschiedenen Kontexten Probleme mit der DNS-Auflösung, die anscheinend auf meine Netzwerkkonfiguration zurückzuführen sind.
Ich führe gerade die dnsmasq-base
Installation von dnsmasq
auf zwei Linux-Installationen aus (Lubuntu 12.04 und 12.10). Ich habe nichts Besonderes getan, um zu konfigurieren dnsmasq
, aber ich denke, einige andere Änderungen, die ich zuvor vorgenommen habe, könnten beim Upgrade zu einer falschen Konfiguration geführt haben.
Die Arbeitskonfiguration auf Maschine „A“ mit 12.04 ist /etc/resolv.conf
auf 127.0.1.1 eingestellt (was in /etc/hosts
auf eingestellt ist $HOSTNAME
). Auf Maschine „B“, wo bestimmte Anwendungen wie OpenVPN Probleme mit der DNS-Auflösung haben, /etc/resolv.conf
ist 192.168.1.1 eingestellt, was meine Gateway-IP ist. Nur bestimmte Anwendungen sind davon betroffen. Das Surfen im Internet funktioniert beispielsweise einwandfrei.
Irgendeine Idee, ob dieser Unterschied die Ursache für die Probleme bei der DNS-Auflösung ist und warum sich „B“ anders verhält?
Änderungen:
Sowohl ‚A‘ als auch ‚B‘ laufen dnsmasq
, beide verwenden DHCP zur DNS-Konfiguration und ich verwende nur dnsmasq für DNS.
Es ist keine /etc/dnsmasq.conf
Datei vorhanden. Ich verstehe, dass das normal ist, wenn nur ausgeführt wird dnsmasq-base
.
Der Inhalt /etc/resolvconf
auf den beiden Maschinen scheint identisch zu sein. Keine überflüssigen/fehlenden Dateien.
Es tut mir leid, dass ich das Problem nicht genauer beschreiben kann. „Problem mit der DNS-Auflösung“ war das Endergebnis meiner Diskussion mit dem technischen Support meines VPN-Anbieters.
Antwort1
Auf Maschine B sollte, wenn es /etc/NetworkManager/NetworkManager.conf
enthält , nur eine Zeile „Nameserver“ enthalten, nämlich . 127.0.1.1 ist die Adresse, an der der von NetworkManager gesteuerte lokale Weiterleitungs-Nameserver lauscht. NetworkManager gibt diesem Nameserver die zu verwendenden Weiterleitungsadressen.dns=dnsmasq
resolv.conf
nameserver 127.0.1.1
Versuchen Sie, es auf Maschine B auszuführen sudo dpkg-reconfigure resolvconf
. Dadurch wird der benötigte symbolische Link von /etc/resolv.conf
nach wiederhergestellt ../run/resolvconf/resolv.conf
.
Verwenden Sie einen VPN-Client eines Drittanbieters? Solche Clients sind dafür bekannt, dass sie den Client beschädigen /etc/resolv.conf
und ihn beim Beenden nicht wiederherstellen. Dies müssen Sie möglicherweise jedes Mal tun, wenn sudo dpkg-reconfigure resolvconf
Sie einen solchen Client beenden.
Sie können auch Folgendes versuchen: Kommentieren Sie es aus dns=dnsmasq
und /etc/NetworkManager/NetworkManager.conf
starten Sie dann neu. Dadurch wird der von NetworkManager gesteuerte lokale Weiterleitungs-Nameserver deaktiviert, der einige bekannte Probleme aufweist.