Comment afficher l'adresse DNS attribuée par DHCP?

33

Comment afficher l'adresse DNS attribuée par DHCP?

ifconfig ne peut pas le montrer.

$ 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)
Victor S
la source
Ce qui est retourné par: ifconfig | grep 'inet addr:' ?
david6
@ david6 inet addr: 192.168.1.111 Bcast: 192.168.1.255 Mask: 255.255.255.0 inet adr: 127.0.0.1 Mask: 255.0.0.0
Victor S
Cela devrait vous aidercat /var/lib/dhcp3/dhclient.leases | grep dhcp-server-identifier
devav2
@ devav2 $ cat /var/lib/dhcp/dhclient-529bed02-363e-4e97-bd5d-9f63f42f17f2-eth0.lease | grep option dhcp-server-identifier option dhcp-server-identifier 192.168.1.1; option dhcp-server-identifier 192.168.1.1; option dhcp-server-identifier 192.168.1.1; option dhcp-server-identifier 192.168.1.1; option dhcp-server-identifier 192.168.1.1;
Victor S
1
Que demande-t-on? Le service DHCP attribue une adresse IP à partir d'un pool (ou d'une plage). Un serveur DNS renvoie les adresses IP d'un nom d'hôte, d'un domaine ou d'une boîte aux lettres (enregistrement MX). Votresortie ifconfig a l' air normale ..
david6

Réponses:

40

Pour au moins Ubuntu 15.10 et ultérieur (éventuellement aussi des versions antérieures), exécutez-le dans un terminal:

nmcli dev show eth0 | grep IP4

eth0est le plus iface commun, mais il pourrait être eth1, eth2etc.

Pour les anciennes versions, utilisez nmcli dev list iface eth0 | grep IP4.

Marty Fried
la source
1
Réponse géniale! Appréciez votre partage! J? ai compris.
Victor S
Content que cela ait aidé. Je l'ai trouvé quand je voulais obtenir un moyen d'obtenir ces informations, puis les analyser pour les afficher à la demande, car j'avais 3 serveurs DNS possibles différents (FAI, Google et OpenDNS).
Marty Fried
7
À partir du 15.04, le commandement estnmcli dev show
Sergiy Kolodyazhnyy Le
3
Avec nmcli dev show eth0(comme sur 15.04) cela fonctionne aussi sur Debian Buster. Merci!
Luc
1
@YandryPozo A posté une réponse, comme demandé :)
Sergiy Kolodyazhnyy 17/09/2017
13
$ nm-tool 

listera également les serveurs DNS.

dixoncx
la source
1
+1 car cela a été testé et fonctionné jusqu'à la version 14.04. Pour 15.04 et les versions plus récentes, utilisez nmcliplutôt que suggéré par l’autre réponse.
clearkimura
7

Pour obtenir l'adresse DNS, ouvrez le terminal ( Ctrl+ Alt+ T) et tapez:

cat /var/lib/dhcp/dhclient.leases | grep dhcp-server-identifier
devav2
la source
2
Il n'y a rien dans /var/lib/dhcp/dhclient.leases, il est vide.
Victor S
$ file /var/lib/dhcp/dhclient.leases /var/lib/dhcp/dhclient.leases: vide
Victor S
try /var/lib/dhcp/dhclient.eth0.leases
frag
C'est un usage inutile decat . Vous voulez probablement dire grep domain-name-servers /var/lib/dhcp/dhclient.leases( domain-namenon dhcp-server).
Pablo Un
6

C'est ici:

cat /etc/resolv.conf

mais n'éditez pas ce fichier

Iulian Pojar
la source
Dans les récentes versions d'Ubuntu (après 2012, je pense), cela ne sera pas utile, car il contiendra nameserver 127.0.1.1, faisant référence à l'installation de localhost dnsmasq. Il est préférable d'interroger NetworkManager, écrit par @ anwar-shah et @ marty-fried
gerlos
Comme vous l'avez dit, ce fichier peut être édité et ne correspond donc pas nécessairement aux adresses attribuées par DHCP. Maintenant, si vous le modifiez vous-même, il est évident que ce sera différent - mais si vous utilisez un VPN de l'entreprise? Ou quelque chose d'autre influence le fichier? C'est pourquoi je pense que ce n'est pas une bonne réponse, même si elle est simple et universelle. C'est un bon endroit pour commencer, mais pas une vraie réponse en soi.
Luc
3

Comme alternative graphique à la réponse de @ MartyFried, essayez ceci.

  1. Cliquez sur l'icône Connectivité réseau sur le panneau supérieur.

  2. Sélectionner les paramètres Wi-Fi

  3. Il devrait vous montrer l'adresse du serveur DNS

    capture d'écran

Anwar
la source
4
Mon Ubuntu n’a pas de bureau graphique.
Victor S
@VictorS il montre la même information que l'autre réponse. J'ai vérifié
Anwar
1
Merci pour votre réponse, cela convient aux utilisateurs de gnome ou de KDE.
Victor S
2

Dans Ubuntu 16.04, l’information de dhcp est écrite en: /var/lib/NetworkManager/dhclient-<interface>.conf

Anton Krosnev
la source
2

Comme je l'ai mentionné dans les commentaires (qui à la demande générale est devenue une réponse maintenant), on peut utiliser à nmcli dev showpartir d'Ubuntu 15.04. Ajoutez grepau mélange et vous êtes prêt:

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

Maintenant que Ubuntu (et Debian et presque toutes les distributions) utilisent systemd (vérifiez auprès de file /sbin/init), le moyen le plus élégant d’obtenir cette information est de:

systemd-resolve --status
Pablo A
la source
1
La solution idéale pour les systèmes n'exécutant pas NetworkManager. Ubuntu 18.04, Ubuntu 19.10
Ryan Jeremiah Freeman
Cela fonctionne aussi à Raspbian
riofly
2

Ma solution actuelle (est 2015, Ubuntu 14.04), est la suivante:

  1. Démarrer la CLI
  2. Type: sudo apt-get install gnome-system-tools
  3. Une fois l'installation réussie, tapez sur le terminal: network-admin

Si vous ne pouvez pas le faire, essayez-le, bien que cela ne me suffise pas, mais mon travail a été accompli:

  1. type dig google.com
  2. vers la fin, vous pouvez voir quelque chose comme ceci (est. 2015) ;; SERVER: et ensuite une adresse IP (au moins, sur ma machine) qui est le serveur DNS réel qui résout le domaine pour vous. Ce serveur peut changer par nom d'hôte cependant.
AltCtrl
la source
0

Si votre ordinateur fonctionne derrière le routeur / WiFi de votre fournisseur Internet , vous obtiendrez une adresse IP privée du DHCP du routeur, par exemple 192.168.0.2 ou 192.168.1.100.

Pour obtenir l' adresse IP publique de DHCP ou DNS de votre fournisseur Internet , vous devez exécuter la ligne de commande suivante sur le terminal:

dig +short myip.opendns.com @resolver1.opendns.com
Fernando Santucci
la source