Come visualizzare l'indirizzo DNS assegnato da DHCP?


33

Come visualizzare l'indirizzo DNS assegnato da DHCP?

ifconfig non può mostrarlo.

$ ifconfig -a
eth0      Link encap:Ethernet  HWaddr 90:e6:ba:22:6a:f2  
          inet addr:192.168.1.111  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::92e6:baff:fe22:6af2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:224856 errors:0 dropped:0 overruns:0 frame:0
          TX packets:220040 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:166848627 (166.8 MB)  TX bytes:20256333 (20.2 MB)
          Interrupt:46 Base address:0x4000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:5889 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5889 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:468885 (468.8 KB)  TX bytes:468885 (468.8 KB)

wlan0     Link encap:Ethernet  HWaddr 00:26:5e:e8:4f:8e  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

Cosa viene restituito da: ifconfig | grep 'inet addr:' ?
— david6,

@ david6 inet addr: 192.168.1.111 Bcast: 192.168.1.255 Mask: 255.255.255.0 inet addr: 127.0.0.1 Mask: 255.0.0.0
— Victor S

Questo dovrebbe aiutarticat /var/lib/dhcp3/dhclient.leases | grep dhcp-server-identifier
— devav2

@ devav2 $ cat /var/lib/dhcp/dhclient-529bed02-363e-4e97-bd5d-9f63f42f17f2-eth0.lease | grep dhcp-server-identifier option dhcp-server-identifier 192.168.1.1; opzione dhcp-server-identificativo 192.168.1.1; opzione dhcp-server-identificativo 192.168.1.1; opzione dhcp-server-identificativo 192.168.1.1; opzione dhcp-server-identificativo 192.168.1.1;
— Victor S,

1
Cosa stanno chiedendo? Il servizio DHCP assegna un indirizzo IP da un pool (o intervallo). Un server DNS restituisce gli indirizzi IP per un nome host, dominio o cassetta postale (record MX). L'output di ifconfig sembra normale ..
— david6

Risposte:


40

Per almeno Ubuntu 15.10 in poi (possibilmente anche versioni precedenti) eseguito in un terminale:

nmcli dev show eth0 | grep IP4

eth0è il più iface comune, ma potrebbe essere eth1, eth2e così via

Per le versioni precedenti utilizzare nmcli dev list iface eth0 | grep IP4.


1
Risposta fantastica! Apprezzo la tua condivisione! Capito.
— Victor S,

Sono contento che abbia aiutato. L'ho trovato quando volevo un modo per ottenere quelle informazioni, quindi analizzarle per visualizzarle su richiesta, poiché avevo 3 diversi possibili server DNS (ISP, Google e OpenDNS).
— Marty Fried,

7
A partire dal 15.04, il comando ènmcli dev show
— Sergiy Kolodyazhnyy il

3
Con nmcli dev show eth0(come il 15.04) funziona anche su Debian Buster. Grazie!
— Luc,

1
@YandryPozo Ha inviato una risposta, come richiesto :)
— Sergiy Kolodyazhnyy,

13
$ nm-tool 

elencherà anche i server DNS.


1
+1 perché questo è stato testato funzionando fino alla versione 14.04. Per la versione 15.04 e successive, utilizzare invece nmclicome suggerito dall'altra risposta.
— Clearkimura,

7

Per ottenere l'indirizzo DNS aprire il terminale ( Ctrl+ Alt+ T) e digitare:

cat /var/lib/dhcp/dhclient.leases | grep dhcp-server-identifier

2
Non c'è nulla in /var/lib/dhcp/dhclient.leases, è vuoto.
— Victor S,

$ file /var/lib/dhcp/dhclient.leases /var/lib/dhcp/dhclient.leases: vuoto
— Victor S

provare /var/lib/dhcp/dhclient.eth0.leases
— frag

Che un uso inutile dicat . Probabilmente intendi grep domain-name-servers /var/lib/dhcp/dhclient.leases( domain-name, no dhcp-server).
— Pablo Un

6

Ecco qui:

cat /etc/resolv.conf

ma non modificare questo file


Nelle recenti versioni di Ubuntu (post 2012 penso) non sarà utile, poiché conterrà nameserver 127.0.1.1, facendo riferimento all'installazione di dnsmasq di localhost. È meglio interrogare NetworkManager come scritto da @ anwar-shah e @ marty-fried
— gerlos

Come accennato, quel file può essere modificato e quindi non sono necessariamente gli indirizzi assegnati da DHCP. Ora, se lo modifichi tu stesso, ovviamente, sarà diverso, ma cosa succede se usi una VPN aziendale? O qualcos'altro influenza il file? Ecco perché penso che non sia una buona risposta, anche se semplice e universale. È un buon primo posto in cui guardare, ma non una risposta vera da sola.
— Luc,

3

In alternativa alla GUI della risposta di @ MartyFried, prova questo.

  1. Fai clic sull'icona Connettività di rete nel pannello superiore.

  2. Seleziona Impostazioni Wi-Fi

  3. Dovrebbe mostrarti l'indirizzo del server DNS

    immagine dello schermo


4
Ubuntu non ha alcun desktop GUI.
— Victor S,

@VictorS mostra le stesse informazioni dell'altra risposta. L'ho controllato
— Anwar,

1
Grazie per la tua risposta, è conveniente per gli utenti di gnome o KDE.
— Victor S,

2

In Ubuntu 16.04, le informazioni da dhcp sono scritte in: /var/lib/NetworkManager/dhclient-<interface>.conf


2

Come ho accennato nei commenti (che per popolare richiesta è diventata una risposta ora), si può usare a nmcli dev showpartire da Ubuntu 15.04. Aggiungi grepal mix e sei pronto:

$ nmcli dev show | grep 'DNS'                                                                                                                                                                     
IP4.DNS[1]:                  208.67.222.222
IP4.DNS[2]:                  208.67.220.220

2

Ora che Ubuntu (e Debian e quasi tutte le distro) usano systemd (controlla con file /sbin/init) forse il modo più elegante per ottenere queste informazioni è con:

systemd-resolve --status

1
La risposta perfetta per i sistemi che non eseguono NetworkManager. Ubuntu 18.04, Ubuntu 19.10
— Ryan Jeremiah Freeman il

Funziona anche in Raspbian
— riofly

2

La mia soluzione effettiva (est 2015, Ubuntu 14.04), è questa:

  1. Avvia la CLI
  2. Genere: sudo apt-get install gnome-system-tools
  3. Al termine dell'installazione, digitare sul terminale: network-admin

Se in qualche modo non puoi farlo, prova questo, anche se non è abbastanza buono per me, ma ha fatto il mio lavoro:

  1. genere dig google.com
  2. verso la fine puoi vedere qualcosa del genere (est. 2015) ;; SERVER: e quindi un indirizzo IP (almeno, sulla mia macchina) CHE è l'effettivo server DNS che risolve il dominio per te. Tuttavia, quel server può cambiare per nome host.

0

Se il tuo computer funziona dietro al router / WiFi del tuo provider Internet , otterrai un indirizzo IP privato dal DHCP del router, qualcosa come 192.168.0.2 o 192.168.1.100.

Per ottenere l' indirizzo IP pubblico del DHCP del DNS dal tuo provider Internet , devi eseguire la seguente riga di comando sul terminale:

dig +short myip.opendns.com @resolver1.opendns.com
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.