Ubuntu utilise "avahi" pour effectuer des recherches de nom d’hôte sur le réseau local, ce qui me permet de rechercher d’autres ordinateurs en ajoutant simplement ".local" au nom, par exemple. laptop.local ou desktop.local.
Cependant, avahi ne semble pas effectuer de recherches inversées pour les adresses IP des ordinateurs du réseau local. Ainsi, lorsque les applications recherchent des adresses IP pour des ordinateurs locaux, une requête est envoyée à un serveur Internet DNS sur Internet qui renvoie NXDOMAIN (le nom n'existe pas).
Est-il possible pour avahi d'effectuer des recherches inversées pour les adresses IP? Si c'est le cas, comment puis-je le faire?
Oui, avahi prend en charge les recherches d'adresse IP inversées pour les noms .local enregistrés sur le réseau local. Cependant, la plupart des commandes permettant d'effectuer des requêtes de test contactent directement les serveurs DNS sans utiliser avahi. Pour confirmer que cela fonctionne sur la ligne de commande, vous devez utiliser la commande getent hosts
à la place de nslookup
, Dig
ou Host
.
Par exemple, vous pouvez rechercher une adresse IP à l'aide des commandes suivantes:
$ nslookup 192.168.0.1
$ Dig -x 192.168.0.1
$ Host 192.168.0.1
$ getent hosts 192.168.0.1
Seule la commande getent hosts
renverra le nom correspondant car il s'agit de la seule commande qui utilise avahi pour effectuer la recherche inversée.
(En fait, cela s'applique également à la recherche de noms, mais il est généralement plus simple de simplement taper ping hostname.local
qui effectue une recherche de nom à l'aide de DNS ou d'avahi et vérifie la connectivité en même temps.)
Dig pourrait également effectuer une recherche DNS inversée à l'aide d'avahi:
Dig -x 192.168.0.1 @224.0.0.251 -p 5353
Il existe une commande avahi pour cela: avahi-resolve-address
. Par exemple.:
_avahi-resolve-address 192.168.0.1
_
Ou une variante équivalente:
_avahi-resolve --address 192.168.0.1
_