Was ist mein DNS-Server?


22

Meine /etc/resolv.conf sieht so aus:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1

# OpenDNS Fallback (configured by Linux Mint in /etc/resolvconf/resolv.conf.d/tail).
nameserver 208.67.222.222
nameserver 208.67.220.220   

Wenn ich nslookup verwende, verwende ich anscheinend 127.0.1.1:

moose@pc08 ~ $ nslookup www.google.com
Server:     127.0.1.1
Address:    127.0.1.1#53

Non-authoritative answer:
Name:   www.google.com
Address: 173.194.44.17
Name:   www.google.com
Address: 173.194.44.16
Name:   www.google.com
Address: 173.194.44.19
Name:   www.google.com
Address: 173.194.44.18
Name:   www.google.com
Address: 173.194.44.20

Aber wenn ich mit der rechten Maustaste auf den Netzwerkmanager klicke und auf "Verbindungsinformationen" klicke, erhalte ich:

Verbindungsinformationen

whois 217.0.43.129 zeigt, dass dies der Deutschen Telekom AG gehört, meinem ISP.

Warum zeigt der Netzwerkmanager diese Informationen an? Welchen DNS-Server verwende ich derzeit?

dnsmasq

Ja, ich scheine dnsmasq auszuführen:

moose@pc08 ~ $ ps aux | grep dnsmasq
nobody    1479  0.0  0.0   5468  1404 ?        S    14:16   0:00 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/var/run/sendsigs.omit.d/network-manager.dnsmasq.pid --listen-address=127.0.1.1 --conf-file=/var/run/nm-dns-dnsmasq.conf --cache-size=0 --proxy-dnssec --enable-dbus=org.freedesktop.NetworkManager.dnsmasq --conf-dir=/etc/NetworkManager/dnsmasq.d

1
Mögliche Kopie der Befehlszeile zum
Auflisten von

Antworten:


17

Sie verwenden dnsmasqeinen einfachen Weiterleitungs-DNS-Server, der lokal unter der Kontrolle von NetworkManager ausgeführt wird. Dnsmasq leitet DNS-Abfragen an die DNS-Server weiter, deren Adressen vom DHCP-Server bereitgestellt wurden. Es ist auch möglich, diese DNS-Serveradressen mithilfe des Verbindungseditors statisch festzulegen.

Die dnsmasqausführbare Datei wird vom dnsmasq-base-Paket bereitgestellt, von dem das network-manager-Paket abhängt. Es gibt auch ein Paket mit dem Namen "dnsmasq", das ebenfalls von dnsmasq-base abhängt. Dieses "dnsmasq" -Paket sollte jedoch nur installiert werden, wenn Sie dnsmasqunabhängig von NetworkManager ausgeführt werden möchten, um andere Funktionen als die reine DNS-Weiterleitung zu nutzen.


@jdthood - Ihre Änderungen sind ziemlich umfangreich und können so ausgelegt werden, dass sie über die Absicht des OP hinausgehen. Bitte erstellen Sie Ihre eigene Antwort, wenn dies erforderlich ist, um Ihre Gedanken zu unterstützen. Vielen Dank.
fossfreedom

@jdthood: Ich danke Ihnen für Ihre Bemühungen, eine korrekte Antwort zu erhalten. Ich bin jedoch der Ansicht, dass das in NetworkManager integrierte Standardverhalten von dnsmasq darin besteht, 150 Einträge in Übereinstimmung mit ihren jeweiligen TTL-Einstellungen zwischenzuspeichern.
Roy

Standardmäßig ist der Cache von NM-dnsmasq deaktiviert. Machen Sie ps -ef|grep dnsmasqund suchen Sie nach der Option --cache-size=0.
Jdthood

1
Dies ist bei meiner 12.04-Box nicht der Fall, aber eine Google-Suche zeigt, dass Sie Recht haben. Dies ist die Standardeinstellung für 12.04 und 12.10. Also, ein Caching-DNS-Server mit deaktiviertem Caching dann :)
Roy

dnsmasq scheint den nächsten DNS-Server zu verwenden (dh den, den es am schnellsten erreichen kann), wenn Sie in Ihren Einstellungen zwei oder mehr angeben. Was unter dem Gesichtspunkt der Benutzererfahrung (schneller) Sinn macht. Plus, die resolv.conf-Datei erwähnte die andere, OpenDNS als Fallback, nicht primär, oder?
Sergiy Kolodyazhnyy

17

Als Erweiterung der Antwort von happyskeptic müssen Sie keine Schnittstelle angeben. Das macht es für mich:

> nmcli dev show | grep DNS
IP4.DNS[1]:                             172.22.216.251
IP6.DNS[1]:                             2a01:4f0:400c:1::1

Für Ubuntu 14.04 und ältere Verwendung nmcli dev list | grep DNS

> nmcli dev list | grep DNS
IP4.DNS[1]:                             172.22.216.251
IP6.DNS[1]:                             2a01:4f0:400c:1::1

1
Mein Ubuntu 16-System willnmcli dev show
normalerweise

Das liegt daran, dass die nmcliVersion seit Ubuntu 15.04 aufgrund des Übergangs auf ein anderes Init-System geändert wurde. In neueren Releases ist der Befehl also nur geringfügig anders
Sergiy Kolodyazhnyy

Wenn ich mit NetworkManager und VPNC in meinem Arbeitsnetzwerk angemeldet bin, wird der DNS-Server meiner Arbeit in dieser Ausgabe nicht angezeigt, obwohl die Auflösung offensichtlich ist. Ich weiß (noch) nicht, wie ich den VPN-DNS-Server sehen soll.
Peter V. Mørch

1
Damit dnsmasq den DNS anzeigt, den es verwendet, kann man ihm das USR1-Signal senden und dann Statistiken und ähnliches an syslog senden. Also: tail -F /var/log/syslog | grep dnsmasq.\*Server & sudo pkill -USR1 dnsmasq
Alexander Skwar

7

Ich habe festgestellt, dass auf Kubuntu 14.04 das NetworkManager-Applet (oder Plasma-Ding, wie auch immer es heißt) in KDE die DNS-Server-Informationen unter den Verbindungsdetails nicht anzeigt.

In diesem Fall müssen Sie in der Befehlszeile Folgendes ausführen und nach den Zeilen 'IP4.DNS' suchen:

nmcli dev list iface wlan0

(Ersetzen Sie wlan0 durch die Schnittstelle, über die Sie eine Verbindung zum Netz herstellen.)


Groß! Es wird mir helfen, wenn der DNS verschwindet ...
Karatedog

1
nmcli device show wlan0in meinem Fall
Searene

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.