Réponses:
Vous devriez pouvoir obtenir des informations raisonnables dans:
$ cat /etc/resolv.conf
127.0.0.53
Voici comment je le fais:
nmcli dev show | grep DNS
Cela a fonctionné avant la manière ci-dessus:
nm-tool | grep DNS
/etc/resolv.conf
volonté pointe sur votre machine, avec dnsmasq
les noms de résolution tels que configurés par NetworkManager .
network-manager
paquet.
Je pense que vous pouvez également interroger DNS et il vous indiquera quel serveur a renvoyé le résultat. Essaye ça:
dig yourserver.somedomain.xyz
Et la réponse devrait vous dire quel (s) serveur (s) ont renvoyé le résultat. La sortie qui vous intéresse ressemblera à ceci:
;; Query time: 91 msec
;; SERVER: 172.xxx.xxx.xxx#53(172.xxx.xxx.xxx)
;; WHEN: Tue Apr 02 09:03:41 EDT 2019
;; MSG SIZE rcvd: 207
Vous pouvez également dig
demander à interroger un serveur DNS spécifique en utilisantdig @server_ip
dnsutils
paquet.
SERVER: 127.0.0.53#53(127.0.0.53)
Faites juste un nslookup
. Une partie de ses résultats inclut le serveur qu’il utilise.
Dans l'exemple ci-dessous, il est indiqué que le serveur DNS utilisé est 8.8.8.8.
$ nslookup google.com
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: google.com
Address: 172.217.22.174
$ nslookup www.google.com
dnsutils
paquet.
nslookup google.com
dans l’hôte Windows et j’ai trouvé le serveur de noms. Ajoutez-le /etc/resolv.conf
comme: nameserver xx.xx.xx.xx
et redémarrez le service network
, et tout va bien. Te louerai.
Sur les systèmes exécutant systemd, utilisez:
systemd-resolve --status
Avec la nouvelle network-manager
commande nmcli
, procédez comme suit:
nmcli --fields ipv4.dns,ipv6.dns con show <connection_name>
Sur les nouvelles versions de network-manager (comme dans Ubuntu 16.04), les noms de champs sont légèrement différents:
nmcli --fields ip4.dns,ip6.dns con show <connection_name>
Si vous ne connaissez pas le nom de la connexion, utilisez:
nmcli -t --fields NAME con show --active
Par exemple:
$ nmcli --fields ip4.dns,ip6.dns con show 'Wired connection 1'
IP4.DNS[1]: 172.21.0.13
IP4.DNS[2]: 172.21.0.4
order «con» «show» is not valid
.
Error: invalid field 'ip4.dns'; allowed fields: NAME,UUID,TYPE,TIMESTAMP,TIMESTAMP-REAL,AUTOCONNECT,AUTOCONNECT-PRIORITY,READONLY,DBUS-PATH,ACTIVE,DEVICE,STATE,ACTIVE-PATH.
nmcli
C'était simplement tout ce dont j'avais besoin sur Ubuntu 19.04
pour obtenir le premier serveur DNS (IP uniquement):
cat /etc/resolv.conf |grep -i '^nameserver'|head -n1|cut -d ' ' -f2
cat
affichera la configuration DNSgrep
filtre uniquement le serveur de nomshead
gardera seulement la première ligne / instancecut
prendre la partie ip de la ligne (deuxième colonne avec '' comme séparateur)Pour mettre l'IP du DNS dans une variable d'environnement, vous pouvez utiliser comme suit:
export THEDNSSERVER=$(cat /etc/resolv.conf |grep -i '^nameserver'|head -n1|cut -d ' ' -f2)
grep -m 1
arrête l'appariement après le premier match pour ne pas avoir à l'utiliserhead
grep -Pom 1 '^nameserver \K\S+' /etc/resolv.conf
. Je viens d'écrire des groupes de capture avec l'expression régulière de grep perl
Si vous utilisez le gestionnaire de réseau, vous obtenez probablement tous les paramètres du réseau de votre serveur DHCP de votre université.
Si vous ne voulez pas utiliser votre shell pour vérifier vos paramètres DNS (comme décrit par hesse et Alexios), vous pouvez les voir à partir du panneau "Informations réseau".
Vous pouvez accéder à ce panneau en appuyant sur le bouton droit de la souris sur l'icône du gestionnaire de réseau et en sélectionnant "Informations de connexion" dans le menu.
resolvectl
$ resolvectl status | grep -1 'DNS Server'
DNSSEC supported: no
Current DNS Server: 1.1.1.1
DNS Servers: 1.1.1.1
1.0.0.1
Pour la compatibilité, systemd-resolve
est un lien symbolique vers de resolvectl
nombreuses distributions comme pour Ubuntu 18.10:
$ type -a systemd-resolve
systemd-resolve is /usr/bin/systemd-resolve
$ ll /usr/bin/systemd-resolve
lrwxrwxrwx 1 root root 10 nov. 15 21:42 /usr/bin/systemd-resolve -> resolvectl
$ type -a resolvectl
resolvectl is /usr/bin/resolvectl
$ file /usr/bin/resolvectl
/usr/bin/resolvectl: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=09e488e849e3b988dd2ac93b024bbba18bb71814, stripped
La commande
nmcli dev list iface <interfacename> | grep IP4
Remplacez "interfacename" par le vôtre.
examiner
nmcli dev list iface eth0 | grep IP4
Cela listera tous les serveurs DNS (si vous en utilisez plusieurs).
nmcli dev list iface [devicename]
est la commande correcte
J'ai Fedora 25 et j'ai également eu une réponse lente similaire en ligne de commande aux commandes sudo.
nmcli dev show | grep DNS
a montré que seul un de mes 3 adaptateurs (deux actifs) avait des entrées DNS. En ajoutant des entrées DNS à la seule carte active qui n'a pas eu d'entrée - presto! Tout est bon et le temps de réponse est immédiat.
Dans CentOS, vous pouvez utiliser:
/usr/sbin/named -v
Une fois que vous pensez que vous avez trouvé votre dns, vous pouvez interroger directement avec dig: dig @<dns ip> <host to lookup>
. Si cela fonctionne, vous devriez le voir ensuite SERVER
avec un statut de NOERROR
.
/etc/nsswitch.conf
dicte quels services de noms sont utilisés (DNS, LDAP, etc.) et dans quel ordre. Disfgrep hosts: /etc/nsswitch.conf
. S'il fait uniquement référence à DNS,/etc/resolv.conf
est-il le bon endroit pour rechercher vos serveurs de noms? Mais il est également probable que vous utilisiez mDNS (alias ZeroConf, alias Avahi, alias Bonjour, etc.), etc. Dans ce cas, tout dépend de ce que vous utilisez.