Warum trägt dnsmasq meine Router-IP in /etc/resolv.conf ein, statt 127.0.0.1?

Warum trägt dnsmasq meine Router-IP in /etc/resolv.conf ein, statt 127.0.0.1?

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-baseInstallation von dnsmasqauf 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.confauf 127.0.1.1 eingestellt (was in /etc/hostsauf eingestellt ist $HOSTNAME). Auf Maschine „B“, wo bestimmte Anwendungen wie OpenVPN Probleme mit der DNS-Auflösung haben, /etc/resolv.confist 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.confDatei vorhanden. Ich verstehe, dass das normal ist, wenn nur ausgeführt wird dnsmasq-base.

Der Inhalt /etc/resolvconfauf 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.confenthä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=dnsmasqresolv.confnameserver 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.confnach 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.confund ihn beim Beenden nicht wiederherstellen. Dies müssen Sie möglicherweise jedes Mal tun, wenn sudo dpkg-reconfigure resolvconfSie einen solchen Client beenden.

Sie können auch Folgendes versuchen: Kommentieren Sie es aus dns=dnsmasqund /etc/NetworkManager/NetworkManager.confstarten Sie dann neu. Dadurch wird der von NetworkManager gesteuerte lokale Weiterleitungs-Nameserver deaktiviert, der einige bekannte Probleme aufweist.

verwandte Informationen