.: Les Services Dns et Wins :.

 

  1. Serveurs Dns
  2. Pourquoi WINS ?
  3. Les types de noeuds
  4. Les fichiers hosts et lmhosts

1. Le système de désignation de noms (DNS)

Maintenant que vous avez compris (j'espère !) comment circulent les paquets IP à travers Internet, il me reste à donner rapidement quelques explications sur le système de désignation de noms, en anglais Domain Name System (DNS). Vous avez vu plus haut que tout ordinateur connecté à Internet possède un numéro IP qui lui est propre. Pour communiquer avec un autre ordinateur, il vous faut connaître son adresse IP. Or, lorsque vous "surfez" sur le net, vous écrivez très rarement de tels numéros dans votre browser. C'est tout simplement que vous faites appel, sans le savoir, à un serveur DNS.

Un serveur DNS est simplement une machine qui associe le numéro IP à une adresse plus facilement mémorisable, bref une sorte d'annuaire téléphonique pour Internet. Ainsi, la machine qui répond lorsque vous tapez http://www.microsoft.com dans votre browser possède en fait l'adresse IP 207.68.137.65. Si vous tapiez http://207.68.137.65, vous obtiendriez exactement le même résultat. Un (ou plusieurs) serveur DNS se trouvent généralement chez votre provider; vous avez d'ailleurs sûrement reçu une feuille de configuration vous indiquant une ou deux adresses IP pour ces serveurs lors de la configuration de votre connexion à votre provider.

Une manière simple de constater l'utilité d'un serveur DNS est d'ouvrir (sous Windows 95) une fenêtre DOS, et de taper ping 'adresse de l'hôte', par exemple ping www.microsoft.com. "Ping" est une fonction très utile dans l'établissement de réseau : c'est une commande qui envoie un paquet IP tout simple à un ordinateur et lui demande simplement de répondre.
Sous Windows 95, quatre paquets IP sont envoyés, et si vous avez avez tapé 'ping www.microsoft.com' par exemple, votre ordinateur devrait ensuite vous écrire une ligne de type :
pinging www.microsoft.com [207.68.137.65] with 32 bytes of data
suivie de quatre lignes de la forme :
reply from 207.68.137.65: bytes=32 time=550ms TTL=128

Ces quatre dernières lignes vous indiquent que le serveur Microsoft a répondu à vos appels et vous montrent le temps total qu'a pris la transaction pour chaque ping (par exemple 550 millisecondes). Vous noterez surtout que le serveur DNS de votre provider aura fait automatiquement la translation www.microsoft.com <-> 207.68.137.65.

Astuces : J'ai parlé plus haut de l'adresse IP réservée 127.0.0.1, dite adresse de boucle; un ping sur cette adresse correspond à un ping "sur soi-même", ce qui permet de tester la bonne marche de la carte réseau.

 

2. Pourquoi WINS ?

J'ai déjà parlé de DNS (Domain Name System) : les serveurs DNS sont des machines dont le rôle est de faire la corrélation entre un nom de machine (par exemple, machine1.beaubleu.com) et son adresse IP (192.126.7.14).
Beaucoup d'entre vous ont cependant sûrement entendu parler du système WINS (Windows Internet Naming Service) présent sur les systèmes Microsoft (serveurs NT), et qui, de loin, semble faire la même chose.

Alors qu'en est-il ? Pourquoi Microsoft aurait-il créé un nouveau système ?

Hors des réseaux Microsoft, le problème se réduit simplement à dire que les machines sont identifiées par une adresse IP et un FQDN (Fully Qualified Domain Name ou nom de domaine pleinement qualifié) de type Internet (par exemple machine1.beaubleu.com; machine1 est le hostname de la machine; beaubleu.com est le domaine Internet).
Pour résoudre un FQDN en adresse IP, ou inversément, c'est le système DNS qui est utilisé. Un point c'est tout.

Revenons dans le monde Microsoft. Les anciens réseaux Microsoft étaient basés sur le protocole NetBEUI (ce protocole est encore largement utilisé dans les petits réseaux locaux). Sur ces réseaux, les machines sont identifiées par un nom NetBIOS, par exemple, machine2, et leur adresse physique de carte réseau. C'est tout. Mais dites-vous bien que ce nom NetBIOS n'a, à priori, rien à voir avec un hostname Internet !

Lorsque vous installez le protocole TCP/IP sur un ordinateur Microsoft, vous remarquez que l'OS remplit le champ "hostname" (de l'onglet DNS) avec le même nom que le nom NetBIOS, mais ce sont bien deux choses différentes.

Il me faut maintenant faire une petite digression sur les applications qui utilisent le réseau. Dans le monde Microsoft, on en trouve principalement de deux sortes :

Le protocole TCP/IP de Microsoft a ceci de particulier qu'il supporte ces 2 API grâce à une couche discrète : NBT (NetBIOS Over TCP/IP). Un exemple typique est celui de la commande NET de Microsoft (par exemple Net Use) : cette commande est fondamentalement une commande basée NetBIOS; elle ne devrait, en principe, pas fonctionner avec des hostnames TCP/IP. Pourtant, grâce à NBT, une commande 'Net Use * \\hostname_TCPIP\ressource' sur un réseau n'utilisant que le protocole TCP/IP fonctionne très bien.

Imaginons un réseau Microsoft n'utilisant que TCP/IP comme protocole, et regardons ce qui se passe au niveau de la liste d'ordinateurs présents dans le voisinage réseau. Bien que cette liste, appelée "liste browse", soit une applications basée NetBIOS, tous les ordinateurs (fonctionnant sous Microsoft je précise) pourront se voir dans le voisinage réseau, pour peu qu'ils soient sur le même segment Ethernet, cela grâce à NBT.

Par contre imaginons un réseau TCP/IP composé de deux sous-réseaux séparés par un routeur :

Dans un tel réseau, un ordinateur du réseau A ne verra dans son voisinage réseau que les ordinateurs de son sous-réseau, et non les ordinateurs du sous-réseau B; de façon analogue, un ordinateur du réseau B ne verra dans son voisinage réseau que les ordinateurs de son sous-réseau, et non les ordinateurs du sous-réseau A (bien évidemment, seuls des ordinateurs basés Microsoft son susceptibles d'être vus dans le voisinage réseau).

Conséquence : les clients TCP/IP Microsoft ont besoin d'une assistance pour connaître les noms NetBIOS.

Cette assistance a été fournie par Microsoft avec le service WINS.

Les serveurs WINS font un travail un peu analogue aux serveurs DNS, mais corrélant les adresses IP non pas avec un FQDN, mais avec un nom NetBIOS :

Serveur DNS :     FQDN (hostname)  <-->  adresse IP
Serveur WINS :    nom NetBIOS      <-->  adresse IP

WINS permet donc d'utiliser des noms NetBIOS dans un environnement TCP/IP.

La différence de fonctionnement entre WINS et DNS est que ce dernier est "statique" (il faut introduire manuellement les hostnames avec leur correspondance IP), alors que WINS est "dynamique" : un ordinateur à qui on a précisé un serveur WINS va immédiatement s'y annoncer lorsqu'il sera allumé sur le réseau. La base de données WINS est ainsi créée et maintenue dynamiquement, même si on peut y ajouter des entrées statiques.

Ainsi, pour notre réseau coupé par le routeur, il suffira de mettre en place un serveur WINS sur un des sous-réseau (A ou B) et d'indiquer son adresse IP aux ordinateurs de A et B pour que, cette fois, la liste browse soit complète de chaque côté.
Usuellement, on installe même un serveur WINS sur chaque segment Ethernet, et on crée des règles de "synchronisation" entre les différents serveurs WINS.

 

3. Les types de noeuds

Vous avez peut-être déjà entendu parler d'un b-node ou d'un h-node à propos d'un ordinateur. En fait, cette classification découle de la manière dont l'ordinateur s'annonce sur le réseau et y recherche d'autres ordinateurs. Le h-node est le mode de noeud par défaut d'un client Microsoft utilisant WINS. Si un client WINS ne peut pas contacter son serveur WINS, il se retransforme en b-node.Notez que vous pouvez savoir facilement quel est le mode de noeud en utilisant la commande IPCONFIG /ALL sous Windows NT, ou le programme WINIPCFG.EXE sous Windows 9x.

Astuce : Evitez de faire cohabiter des b-nodes et des p-nodes sur le même réseau : à cause des modes de résolution, deux ordinateurs avec le même nom NetBIOS pourraient exister simultanément sur le même réseau !

 

4. Les fichiers hosts et lmhosts

Le fichier hosts contient donc des corrélations adresse IP<-->FQDN (hostname) alors que le fichier lmhosts contient des corrélations adresse IP<-->nom NetBIOS.

Ordre de recherche :