web-dev-qa-db-fra.com

Que fait ".local"?

À la maison, j'ai plusieurs machines Ubuntu sur mon réseau, mais le DNS est fourni par un serveur Windows (2K). Lorsque je leur envoie des messages à un autre utilisateur, si je les appelle "machine", je ne peux pas me connecter, mais si je me connecte en tant que "machine.local", je peux me connecter.

De même, je ne peux pas me connecter depuis un client Windows (comme PuTTY).

Que se passe t-il ici? - C'est clairement une chose Ubuntu.

26
Marc

Par défaut, Ubuntu inclut avahi. Il s'agit d'une implémentation de zeroconf qui permet aux noms d'hôte d'ordinateur d'être résolus avec le nom virtuel ".local". Chaque fois que votre ordinateur essaie de se connecter à "hostname.local", avahi effectuera des diffusions sur le réseau local pour voir s'il existe des ordinateurs avec ce nom d'hôte. Les autres ordinateurs exécutant avahi (ou quelque chose de compatible) devraient répondre.

Si vous regardez dans /etc/nsswitch.conf, vous trouverez la ligne suivante:

hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4

Mdns4_minimal est le paramètre de configuration qui permet à cette redirection de fonctionner.

Votre question suggère en fait qu'avahi fonctionne correctement car vous dites que vous pouvez vous connecter à vos ordinateurs Ubuntu en utilisant "hostname.local". Cependant, vous ne précisez pas clairement ("Quand je leur ssh depuis un autre, ...") si vous essayez de vous connecter depuis un autre ordinateur Ubuntu ou depuis un autre ordinateur Windows. Sans installer d'autres logiciels tels que Bonjour, les ordinateurs Windows ne peuvent pas résoudre les noms "nomhôte.local" de type zeroconf.

32
user8979

Pour résoudre votre problème, vous avez juste besoin d’Avahi. Cela annonce les noms de vos machines Ubuntu sur le lot Windows.

Sudo apt-get install avahi-daemon

machinename.local fonctionne grâce à une autre implémentation de zeroconf (dont Avahi est aussi) appelée Bonjour, créée (IIRC) par Apple. Il est installé par défaut. Je ne sais pas pourquoi Avahi n'est pas aussi, mais étant donné la confusion que cela cause aux gens, ça ne devrait pas être.

Il y a plus à ce sujet sur Wikipedia: http://en.wikipedia.org/wiki/.local

13
Oli