Qual è il mio server DNS?


22

Il mio /etc/resolv.conf è simile al seguente:

# 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   

Quando uso nslookup, mi sembra di usare 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

Ma quando faccio clic con il tasto destro del mouse su Network Manager e faccio clic su "Informazioni sulla connessione", ottengo:

informazioni sulla connessione

whois 217.0.43.129 rivela che questo appartiene a Deutsche Telekom AG, il mio ISP.

Perché il gestore della rete mostra queste informazioni? Quale server DNS sto attualmente utilizzando?

dnsmasq

Sì, mi sembra di eseguire dnsmasq:

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
possibile duplicato della riga
krlmlr

Risposte:


17

Si sta utilizzando dnsmasqun server DNS di inoltro leggero che viene eseguito localmente sotto il controllo di NetworkManager. Dnsmasq inoltra le query DNS ai server DNS i cui indirizzi sono stati forniti dal server DHCP. È anche possibile impostare staticamente questi indirizzi dei server DNS utilizzando l'Editor connessioni.

L' dnsmasqeseguibile è fornito dal pacchetto dnsmasq-base da cui dipende il pacchetto gestore di rete. Esiste anche un pacchetto chiamato semplicemente "dnsmasq" che dipende anche da dnsmasq-base, ma questo pacchetto "dnsmasq" dovrebbe essere installato solo se si desidera eseguire dnsmasqindipendentemente da NetworkManager per sfruttare funzionalità diverse dal semplice inoltro DNS.


@jdthood - le tue modifiche sono piuttosto estese e potrebbero essere interpretate per andare oltre l'intento del PO. Si prega di creare la propria risposta se necessario per supportare i propri pensieri. Grazie.
Fossfreedom

@jdthood: apprezzo il tuo impegno per garantire una risposta corretta. Comprendo tuttavia che il comportamento predefinito di dnsmasq, integrato con NetworkManager, è di memorizzare nella cache 150 voci in base alle rispettive impostazioni TTL.
Roy,

Di default la cache di NM-dnsmasq è disabilitata. Fai ps -ef|grep dnsmasqe cerca l'opzione --cache-size=0.
jdthood,

1
Questo non è il caso sulla mia casella 12.04, ma una ricerca su Google mostra che hai ragione, che è l'impostazione predefinita sia su 12.04 che su 12.10. Quindi, un server DNS di memorizzazione nella cache con la memorizzazione nella cache disabilitato quindi :)
Roy

Sembra che dnsmasq stia usando il server dns più vicino (cioè quello che può raggiungere più velocemente), se ne specifichi due o più nelle impostazioni. Ciò ha senso dal punto di vista dell'esperienza dell'utente (fornendo più velocemente). Inoltre, il file resolv.conf menzionava l'altro, OpenDNS come fallback, non primario, giusto?
Sergiy Kolodyazhnyy,

17

Come espansione della risposta di happyskeptic, non è necessario specificare un'interfaccia. Questo lo fa per me:

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

Per Ubuntu 14.04 e versioni precedenti 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
Il mio sistema Ubuntu 16 lo desideranmcli dev show
dal

Questo perché la nmcliversione è stata cambiata da Ubuntu 15.04 a causa della transizione a un diverso sistema init, quindi sì, nelle versioni più recenti il ​​comando è leggermente diverso
Sergiy Kolodyazhnyy,

Quando accedo alla mia rete di lavoro utilizzando NetworkManager e VPNC, non vedo il server DNS del mio lavoro in questo output, anche se chiaramente si sta risolvendo. Non (ancora) so come vedere il server DNS VPN.
Peter V. Mørch,

1
Per fare in modo che dnsmasq mostri il DNS che sta utilizzando, è possibile inviargli il segnale USR1 e quindi scaricare le statistiche e simili su syslog. Quindi, fai: tail -F /var/log/syslog | grep dnsmasq.\*Server & sudo pkill -USR1 dnsmasq
Alexander Skwar

7

Ho scoperto che su Kubuntu 14.04 l'applet NetworkManager (o cosa Plasma, come si chiama) in KDE non mostra le informazioni sul server DNS sotto i dettagli della connessione.

In questo caso, il modo per trovarlo è eseguire quanto segue dalla riga di comando e cercare le righe 'IP4.DNS':

nmcli dev list iface wlan0

(sostituisci wlan0 con l'interfaccia che usi per connetterti alla rete)


Grande! Mi aiuterà quando il DNS scompare ...
Karatedog,

1
nmcli device show wlan0nel mio caso
Searene,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.