web-dev-qa-db-fra.com

Ubuntu 18.04 ne reconnaissant pas les noms d'hôte du routeur

J'avais précédemment installé Xubuntu 16.04 et il reconnaissait les noms d'hôte définis par mon routeur (Tomato).

Par exemple, j'ai un ordinateur avec le nom mate sur le réseau avec une adresse IP statique de 192.168.2.202, et auparavant je pouvais le faire:

$ Host mate                                                               
mate has address 192.168.2.202

Mais maintenant je reçois ceci:

$ Host mate
Host mate not found: 2(SERVFAIL)

Cette fois-ci, j'ai effectué une installation minimale sur le bureau. Je me demande donc s'il manque un paquet.

MODIFIER:

$ cat /var/run/systemd/resolve/resolv.conf:
nameserver 192.168.2.1
$ cat /var/run/NetworkManager/resolv.conf
nameserver 127.0.0.53
$ netstat -antup
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:5000            0.0.0.0:*               LISTEN      3421/VBoxHeadless   
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      663/systemd-resolve 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      950/sshd            
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      737/cupsd              
tcp6       0      0 :::5900                 :::*                    LISTEN      3421/VBoxHeadless   
tcp6       0      0 :::22                   :::*                    LISTEN      950/sshd            
tcp6       0      0 ::1:631                 :::*                    LISTEN      737/cupsd           
udp    14784      0 0.0.0.0:52712           0.0.0.0:*                           2092/VirtualBox     
udp     8704      0 0.0.0.0:53789           0.0.0.0:*                           2092/VirtualBox     
udp     9536      0 0.0.0.0:5353            0.0.0.0:*                           730/avahi-daemon: r 
udp    19648      0 0.0.0.0:55126           0.0.0.0:*                           2092/VirtualBox     
udp     8704      0 0.0.0.0:39114           0.0.0.0:*                           2092/VirtualBox     
udp    13248      0 0.0.0.0:41109           0.0.0.0:*                           2092/VirtualBox     
udp        0      0 0.0.0.0:57555           0.0.0.0:*                           730/avahi-daemon: r 
udp     3648      0 0.0.0.0:59213           0.0.0.0:*                           2092/VirtualBox     
udp     8064      0 0.0.0.0:59519           0.0.0.0:*                           2092/VirtualBox     
udp     3648      0 0.0.0.0:48795           0.0.0.0:*                           2092/VirtualBox     
udp     3648      0 0.0.0.0:48900           0.0.0.0:*                           2092/VirtualBox     
udp    36096      0 127.0.0.53:53           0.0.0.0:*                           663/systemd-resolve 
udp    37120      0 0.0.0.0:68              0.0.0.0:*                           1066/dhclient       
udp    15424      0 0.0.0.0:33008           0.0.0.0:*                           2092/VirtualBox     
udp     3648      0 0.0.0.0:49597           0.0.0.0:*                           2092/VirtualBox     
udp    14464      0 0.0.0.0:33395           0.0.0.0:*                           2092/VirtualBox     
udp        0      0 0.0.0.0:631             0.0.0.0:*                           828/cups-browsed    
udp    19840      0 0.0.0.0:49883           0.0.0.0:*                           2092/VirtualBox     
udp    14592      0 0.0.0.0:33614           0.0.0.0:*                           2092/VirtualBox     
udp6       0      0 :::51356                :::*                                730/avahi-daemon: r 
udp6   49344      0 :::5353                 :::*                                730/avahi-daemon: r 
$ systemd-resolve --status
Global
          DNSSEC NTA: 10.in-addr.arpa
                      16.172.in-addr.arpa
                      168.192.in-addr.arpa
                      17.172.in-addr.arpa
                      18.172.in-addr.arpa
                      19.172.in-addr.arpa
                      20.172.in-addr.arpa
                      21.172.in-addr.arpa
                      22.172.in-addr.arpa
                      23.172.in-addr.arpa
                      24.172.in-addr.arpa
                      25.172.in-addr.arpa
                      26.172.in-addr.arpa
                      27.172.in-addr.arpa
                      28.172.in-addr.arpa
                      29.172.in-addr.arpa
                      30.172.in-addr.arpa
                      31.172.in-addr.arpa
                      corp
                      d.f.ip6.arpa
                      home
                      internal
                      intranet
                      lan
                      local
                      private
                      test

Link 6 (vboxnet2)
      Current Scopes: none
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no

Link 5 (vboxnet1)
      Current Scopes: none
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no

Link 4 (vboxnet0)
      Current Scopes: none
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no

Link 3 (wlp4s1)
      Current Scopes: none
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no

Link 2 (eno1)
      Current Scopes: DNS
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
         DNS Servers: 192.168.2.1

Mon routeur est 192.168.2.1

EDIT 2:

L'utilisation de Dig indique que le routeur signale correctement le nom d'hôte.

$ Dig @192.168.2.1 mate    
; <<>> Dig 9.11.3-1ubuntu1.1-Ubuntu <<>> @192.168.2.1 mate
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47046
;; flags: qr aa rd ra ad; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;mate.              IN  A

;; ANSWER SECTION:
mate.           0   IN  A   192.168.2.202

;; Query time: 0 msec
;; SERVER: 192.168.2.1#53(192.168.2.1)
;; WHEN: Mon Jun 18 18:53:26 PDT 2018
;; MSG SIZE  rcvd: 38

Mais si je ne mentionne pas spécifiquement l'adresse IP DNS du routeur, je ne la trouve pas.

$ Dig mate             
; <<>> Dig 9.11.3-1ubuntu1.1-Ubuntu <<>> mate
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 65394
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;mate.              IN  A

;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Mon Jun 18 19:06:13 PDT 2018
;; MSG SIZE  rcvd: 33 

Il semble donc que même s’il figure dans la liste /var/run/systemd/resolve/resolv.conf il n’est pas utilisé. Comment puis-je réparer ça?

1
Sarke

Cela semble lié à ce problème:

https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/162432

Lors d'une nouvelle installation, /etc/resolv.conf est lié à /run/systemd/resolve/stub-resolv.conf au lieu de /run/systemd/resolve/resolv.conf.

La mise à jour par https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1624320/comments/8 l'a corrigée.

0
Sarke

Voici ce qui se produit: les problèmes résolus par systemd ne résolvent pas les noms de domaine locaux si ceux-ci ne sont pas des noms complets tels que mate.local

Comme indiqué dans un document sur Systemd-networkd , une bonne solution consiste à supprimer le fichier /etc/nsswitch.conf

Sudo nano /etc/nsswitch.conf

Modifier la ligne des hôtes

# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         compat systemd
group:          compat systemd
shadow:         compat
gshadow:        files
# ---- MODIFY THIS LINE ------------------------------------------------
# hosts:          files mdns4_minimal [NOTFOUND=return] dns myhostname
# ---- TO --------------------------------------------------------------
hosts:          files mdns4_minimal dns myhostname
# ---- THATS ALL -------------------------------------------------------
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

Explication:
Le nom d’hôte résout d’abord la recherche dans les fichiers (/etc/hosts), puis avec avahi (zeroconf), puis demande au serveur DNS. Et ne vous arrêtez plus si avahi ne trouve pas un nom local comme [NOTFOUND=return] forcé. J'espère que c'est clair.

service de redémarrage

Sudo systemctl restart systemd-resolved
0
cmak.fr