Warum meldet dig den DNS-Server als 127.0.0.1, wenn ich ein externes DNS verwende?

11

Ich verwende ungebunden und normalerweise openDNS als DNS-Server.

Wenn ich renne, dig google.comsag ich bekomme SERVER: 127.0.0.1#53(127.0.0.1). Was genau hört dieses Ding auf Port 53? ist das ungebunden oder hat es etwas mit dnsmasq zu tun (habe ich überhaupt dnsmasq installiert, wie dnsmasq.confes nicht zu sein scheint /etc?)

In resolv.conf gibt es nameserver 127.0.0.1aber dann im Netzwerkmanager die DNS-Server, die auf die beiden openDNS-Adressen verweisen. Also, was ist hier los? Zeigt der lokale Nameserver auf dnsmasq, das dann die Werte vom Netzwerkmanager verwendet? oder ist es ungebunden, dass tatsächlich zugehört wird?

fpghost
quelle
Was versuchst du zu erreichen?
Rahul Patil
3
Ich
ist das Ubuntu Server Edition oder was?
Rahul Patil
nein nur Desktop
fpghost

Antworten:

15

Standardmäßig verwendet NetworkManager Dnsmasq als DNS-Resolver, sofern es installiert ist. Dies ist die Standardeinstellung auf Debian-basierten Systemen. Daher wird Dnsmasq in einer Standardkonfiguration ausgeführt, in der nur Namen aufgelöst werden, die auf den in den Befehlszeilenoptionen angegebenen Upstream-Servern (plus dem Inhalt von /etc/hosts) basieren . Sie haben keine, /etc/dnsmasq.confda diese Datei nur im optionalen Paket dnsmasq vorhanden ist .

Führen Sie aus, um festzustellen, ob Ihr System derzeit Dnsmasq oder Unbound für DNS-Abfragen verwendet netstat -ulnp | grep ":53 ".

In Ubuntu 12.04 funktioniert NetworkManager nicht gut mit anderen DNS-Resolvern (siehe Fehler 959037 - Die Zusammenfassung von Thomas Hood deckt so ziemlich alles ab). Um Unbound zusammen mit NetworkManager weiterhin auszuführen, sollten Sie NetworkManager am besten anweisen, Dnsmasq nicht auszuführen (Sie benötigen es nicht zusätzlich zu Unbound, es sei denn, Sie verwenden Funktionen von Dnsmasq, die NetworkManager nicht verwendet). Das zu tun:

  1. Bearbeiten /etc/NetworkManager/NetworkManager.conf, um die Zeile mit dem Kommentar zu kommentieren dns=dnsmasq(fügen Sie #am Anfang dieser Zeile ein hinzu).
  2. Starten Sie NetworkManager mit neu service network-manager restart.
Gilles 'SO - hör auf böse zu sein'
quelle
Woher weiß Ubuntu derzeit, wie man Unbound verwendet (es scheint tatsächlich so zu sein); was ich hinaus will , warum ich etwas nicht brauchen , wie dns=unboundin /etc/NetworkManager/NetworkManager.conf? und angesichts der Tatsache, dass ich derzeit dns=dnsmasqin dieser Datei habe, warum verwendet Ubuntu tatsächlich ungebunden?
fpghost
@fpghost Welches du bekommst, hängt davon ab, welches zuerst gestartet wurde. Wenn Sie ohne Netzwerk booten, wird Unbound angezeigt, da es zuerst gestartet wird. Wenn Sie mit einer Netzwerkverbindung booten, ist dies meiner Meinung nach ein Fehler.
Gilles 'SO - hör auf böse zu sein'
OK, aber ich habe mich wirklich gefragt dns=..., ob ich die Zeile nicht vollständig auskommentieren soll, um zu verhindern, dass dnsmasq verwendet wird. Was ist, wenn ich die Zeile durch ersetze dns=unbound? Woher weiß NetworkManager sonst, dass ungebunden der lokale Resolver sein wird?
fpghost
1

In Ubuntu 12.04 wird dnsmasq jetzt standardmäßig ausgeführt, da es fest codiert ist network-manager. Standardmäßig dnsmasq als lokalen Resolver für Desktop-Installationen verwenden Dies ist die zweite große Änderung in dieser Version. Bei einer Desktop-Installation lautet Ihr DNS-Server "127.0.0.1", was auf einen von NetworkManager verwalteten dnsmasq-Server verweist.

SERVER: 127.0.0.1#53(127.0.0.1)

Dies bedeutet, dass Sie eine Antwort auf Ihre Anfrage von lokalen DNS erhalten, z. B. DNSMASQ.

Wenn Sie keinen lokalen Resolver möchten, können Sie DNSMASQ wie folgt deaktivieren.

Sie müssen die /etc/NetworkManager/NetworkManager.confDatei bearbeiten

gksudo gedit /etc/NetworkManager/NetworkManager.conf

und kommentieren Sie die folgende Zeile aus

dns=dnsmasq

zu

#dns=dnsmasq

Speichern Sie die Datei und beenden Sie sie.

Jetzt müssen Sie network-managermit dem folgenden Befehl neu starten

sudo systemctl restart network-manager

Referenz - Link

Rahul Patil
quelle
1
OK, aber was ist, wenn ich auch Unbound installiert habe? Hat dies Vorrang vor dnsmasq als lokalem Resolver? hören beide auf # 53? Wie kommen sie zusammen?
fpghost
auch warum /etc/dnsmasq.conffehlt?
fpghost
@fpghost dnsmasq lauscht auf 127.0.1.1, während ungebunden auf 127.0.0.1 lauscht, beide auf Port 53. Sie können dns = ungebunden in der Netzwerkmanager-Konfiguration festlegen, um ungebunden zu verwenden.
Talonx