J'utilise un Raspberry Pi 3 avec Ubuntu 18.04. Dans mon entreprise, nous avons un serveur DNS et quelques domaines avec ".local". Je sais que techniquement, ce n'est pas correct et il devrait plutôt être ".lan", car .local est réservé aux DNS multicast. Mais c'est comme ça et ça ne peut pas être facilement changé. Ainsi, sur ma machine Windows, je peux cingler et parcourir ces noms de domaine sans problème. Sur mon Ubuntu cependant je ne peux pas.
Je ne peux pas utiliser d'adresses IP car certains domaines se trouvent sur la même machine et le serveur Web IIS trie ce qui se passe où.
J'ai cherché et ça revient assez souvent:
- https://smallbusiness.chron.com/resolving-local-ubuntu-38861.html
- Pourquoi aucun de mes serveurs locaux ne résout-il?
- Le serveur Ubuntu ne résout pas les noms d'hôtes LAN
Cependant, changer /etc/nsswitch.conf ne fait pas l'affaire pour moi. j'ai essayé
- hôtes: fichiers mdns4_minimal [NOTFOUND = return] dns myhostname # default
- hôtes: fichiers dns
- hôtes: fichiers mdns4_minimal [NOTFOUND = continue] dns myhostname
- hôtes: fichiers mdns4 [NOTFOUND = return] dns myhostname
- hôtes: fichiers mdns4 [NOTFOUND = continue] dns myhostname
- hôtes: fichiers dns mdsn4_minimal myhostname
- hôtes: dns
- quelques autres
Rien de tout cela n'a fonctionné. J'ai également essayé de redémarrer après un changement. J'ai essayé de dire à avahi que le nom de domaine = alocal dans /etc/avahi/avahi-daemon.conf, ne fonctionnait pas après le redémarrage du service, ne fonctionnait pas après le redémarrage. Après que cela ne fonctionne pas, j'ai essayé de désactiver complètement le service avahi-daemon.
sudo systemctl disable avahi-daemon
Après un redémarrage, j'ai essayé à nouveau quelques permutations dans /etc/nsswitch.conf, sans effet.
avec mes paramètres actuels dans les hôtes (fichiers DNS) j'obtiens cette réponse:
dig login.name.local # not the actual name
; <<>> Dig 9.11.3-1ubuntu1.1-Ubuntu <<>> login.name.local
;; global options: +cmd
;; Got answer:
;; WARNING .local is reserved for Multicast DNS
;; You are currently testing what happens when an mDNS query is leaked to DNS
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 33538
;; flags: qr rd ra; QUERY: 1, ANSWER:0, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;login.name.local. 0 IN A
;; Query time: 2msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Thu Aug 23 10:51:50 CEST 2018
;; MSG SIZE rcvd: 56
Cependant, lorsque j'invite Dig à interroger directement le serveur, j'obtiens la bonne réponse:
dig @dnsIP login.name.local
; <<>> Dig 9.11.3-1ubuntu1.1-Ubuntu <<>> login.name.local
; (1 server found)
;; global options: +cmd
;; Got answer:
;; WARNING .local is reserved for Multicast DNS
;; You are currently testing what happens when an mDNS query is leaked to DNS
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57866
;; flags: qr aa rd ra; QUERY: 1, ANSWER:1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;login.name.local. 0 IN A
;; ANSWER SECTION:
login.name.local. 3600 IN A serverIP
;; Query time: 2msec
;; SERVER: dnsIP#53(dnsIP)
;; WHEN: Thu Aug 23 10:51:50 CEST 2018
;; MSG SIZE rcvd: 56
Cette version d'Ubuntu utilise netplan avec le gestionnaire de réseau. L'adresse IP DNS correcte est définitivement dans la liste. (en fait, c'est le DNS principal.) Le dnsIp est également le même que serverIP, mais cela ne devrait pas être un problème.
Ping ou connexion via un navigateur et cela ne fonctionne pas bien sûr. Aucun n'utilise la requête DNS.
Je ne sais pas quoi faire. Nous ne pouvons certainement pas passer à un autre nom de domaine. J'ai mis le nom du serveur dans / etc / hosts mais ce n'est qu'une solution temporaire.