WINS fournit une base de données distribuée permettant d'enregistrer et de retrouver les mappages nom d'ordinateur/adresse IP dans un environnement de réseau routé. WINS est conçu pour résoudre les problèmes que pose la résolution des noms dans le cadre d'interréseaux complexes.
WINS contribue à réduire les diffusions locales de messages de résolution des noms et permet aux utilisateurs de localiser facilement les systèmes situés sur des réseaux distants. Si des ordinateurs sont déplacés d'un sous-réseau à un autre et que leurs adresses IP sont modifiées par adressage dynamique DHCP, ces modifications sont automatiquement répercutées sur la base de données WINS. Il n'est pas nécessaire que l'administrateur applique les changements manuellement.
Les sections suivantes examinent comment la résolution de noms est effectuée par WINS et les messages de diffusion de résolution de noms.
WINS se compose des deux éléments suivants :
Le serveur WINS, qui gère les requêtes et les inscriptions de noms
Le logiciel client, qui requiert la résolution des noms d'ordinateur
Les clients de réseaux Windows (les ordinateurs Windows NT, Windows 98, Windows 95 ou Windows for Workgroups 3.11 configurés pour utiliser WINS) peuvent utiliser WINS directement. Les ordinateurs non-WINS d'un interréseau qui sont compatibles B-nud (comme décrit dans les RFC 1001 et 1002) peuvent accéder à WINS par le biais de proxies (ordinateurs configurés pour utiliser WINS) qui écoutent les diffusions de requêtes de noms puis répondent pour les noms qui ne figurent pas sur le sous-réseau local).
Pour autoriser l'exploration sans WINS, l'administrateur du réseau doit s'assurer que le domaine principal de l'utilisateur a des ordinateurs SunLink Server, Windows NT Server ou Windows NT Workstation des deux côtés du routeur afin d'agir en tant qu'explorateurs maîtres. Ces ordinateurs ont besoin de fichiers LMHOSTS correctement configurés comportant des entrées pour les contrôleurs de domaine à travers le sous-réseau.
Avec WINS, ces stratégies sont inutiles car les serveurs et les proxies WINS fournissent de manière transparente le support nécessaire pour que l'exploration se fasse à travers les routeurs quand les domaines en comportent.
Si un ordinateur client exécutant Windows NT est également configuré pour utiliser DHCP et si l'administrateur spécifie les informations du serveur WINS dans le cadre des options DHCP, l'ordinateur sera automatiquement configuré avec les informations du serveur WINS.
Dans un environnement implémentant WINS et la résolution de noms par diffusion, un ordinateur client configuré pour utiliser WINS ne se comportera pas de la même manière qu'un ordinateur client non-WINS. Il y aura des différences au niveau de la façon dont ces clients géreront la résolution, l'inscription, le relâchement et le renouvellement, opérations qui sont décrites dans les sections suivantes.
S'il y a des serveurs WINS sur un interréseau, les noms d'ordinateur NetBIOS sont résolus en utilisant deux méthodes de base selon si la résolution WINS est disponible et activée sur l'ordinateur client. Quelle que soit la méthode utilisée, le processus n'est pas visible à l'utilisateur une fois que le système est configuré.
Si WINS n'est pas activé sur le client - L'ordinateur inscrit son nom en envoyant des paquets de requête d'inscription de nom (sous la forme de messages de diffusion) au sous-réseau local. Pour trouver un ordinateur donné, l'ordinateur non-WINS envoie des paquets de requête de nom (sous la forme de messages de diffusion) sur le sous-réseau local (ce message de diffusion ne peut pas être retransmis par les routeurs IP). Si la résolution de noms locale échoue, le fichier LMHOSTS local est consulté. Ces processus sont suivis que l'ordinateur soit un ordinateur du réseau, une station de travail ou un autre périphérique.
Si WINS est activé sur le client - L'ordinateur commence par adresser sa requête au serveur WINS. En cas d'échec, il envoie des requêtes de recherche et d'inscription de nom (sous la forme de messages de diffusion) en suivant les étapes ci-après :
La requête de nom du client est tout d'abord envoyée au serveur WINS. Si le nom est trouvé dans la base de données WINS, le client peut alors établir une session sur la base du mappage d'adresse reçu du serveur WINS.
Si la recherche du serveur WINS est infructueuse et si l'ordinateur client est configuré en tant que H-nud, l'ordinateur client envoie des paquets de requête de recherche de nom (sous la forme de messages de diffusion) de la même manière qu'un ordinateur non-configuré pour utiliser WINS.
Enfin, si cette autre méthode échoue, le fichier LMHOSTS local est contrôlé (la recherche englobe également tous les fichiers LMHOSTS centralisés auxquels il est fait référence dans les déclarations #INCLUDE du fichier local).
Les serveurs WINS acceptent et répondent aux recherches de noms UDP (User Datagram Protocol). Tout mappage nom / adresse IP enregistré avec un serveur WINS peut être fourni de manière fiable en tant que réponse à une requête de nom. Toutefois, la présence d'un mappage dans la base de données ne garantit pas que le périphérique correspondant fonctionne, elle indique simplement qu'un ordinateur utilisait cette adresse IP et qu'il s'agit d'un mappage couramment valide.
L'inscription des noms garantit l'unicité du nom d'ordinateur NetBIOS et de l'adresse IP affectés à un périphérique donné.
Si WINS est activé sur le client - La requête d'inscription de nom est envoyée directement au serveur WINS pour être ajoutée à la base de données. Un serveur WINS accepte ou rejette l'inscription d'un nom d'ordinateur selon le contenu courant de sa base de données, comme suit :
Si la base de données contient une adresse différente pour le nom en question, WINS challenge l'entrée courante pour déterminer si le périphérique correspondant demande toujours à utiliser ce nom.
Si un autre périphérique utilise le nom, WINS rejette la requête d'inscription du nouveau nom.
Sinon, WINS accepte l'entrée et l'ajoute à sa base de données locale avec une date d'expiration, un numéro de version unique croissant, et d'autres informations.
Si WINS n'est pas activé sur le client - Pour qu'un ordinateur qui n'est pas configuré pour utiliser WINS puisse s'inscrire, un paquet de requête indiquant son nom d'ordinateur NetBIOS et son adresse IP est diffusé dans le réseau local. Tout périphérique du réseau qui utilisait ce nom au préalable challenge l'inscription de nom (avec une réponse d'inscription négative), ce qui donne une erreur pour l'ordinateur qui a essayé d'enregistrer le nom dupliqué. Si la requête d'inscription de nom reste non-challengée pendant une période de temps donnée, l'ordinateur demandeur adopte nom et adresse.
Après qu'un ordinateur non-configuré pour utiliser WINS a demandé à utiliser un nom, il doit challenger les tentatives d'inscription de noms dupliqués (avec une réponse d'inscription de nom négative) et répondre de manière positive aux requêtes de noms ayant pour objet son nom (avec une réponse de recherche positive). La réponse de recherche de nom positive contient l'adresse IP de l'ordinateur de sorte à permettre aux deux systèmes d'établir une session.
Lorsqu'un ordinateur arrête d'utiliser un nom donné, il ne challenge plus les requêtes d'inscription relatives à ce nom. C'est ce que l'on appelle relâcher un nom.
Si WINS est activé sur le client - Lorsqu'un ordinateur est arrêté dans les règles, il relâche son nom et le serveur WINS marque l'entrée correspondante de la base de données comme relâchée. Si l'entrée reste relâchée pendant une certaine période de temps, le serveur WINS la marque comme éteinte, met à jour le numéro de version et signale le changement aux autres serveurs WINS.
Si un nom est marqué relâché sur un serveur WINS et qu'une nouvelle requête d'inscription utilisant ce nom avec une autre adresse arrive, le serveur WINS peut immédiatement donner ce nom au client qui le demande car il sait que l'ancien client n'utilise plus ce nom. Ceci peut arriver, par exemple, lorsqu'un portable configuré pour utiliser DHCP change de sous-réseau.
Si l'ordinateur a relâché son nom lors d'un arrêt effectué dans les règles, le serveur WINS ne challenge pas le nom lorsque l'ordinateur est reconnecté. Si en revanche l'arrêt n'a pas été effectué dans les règles, une inscription relative au même nom mais avec une nouvelle adresse fait que le serveur WINS challenge l'inscription. Le challenge échoue et l'inscription réussit car l'ordinateur n'a plus l'ancienne adresse.
Si WINS n'est pas activé sur le client - Lorsqu'un ordinateur non-configuré pour utiliser WINS relâche un nom, une diffusion est effectuée pour permettre à tous les systèmes du réseau qui avaient mis le nom en cache de le supprimer. Lorsqu'ils reçoivent des paquets de requête de nom indiquant le nom supprimé, ces ordinateurs ignorent tout simplement la requête ce qui permet aux ordinateurs du réseau d'acquérir le nom relâché.
Pour que les ordinateurs non-configurés pour utiliser WINS soient accessibles depuis d'autres sous-réseaux, leurs noms doivent être ajoutés en tant qu'entrées statiques à la base de données WINS ou aux fichiers LMHOSTS du ou des systèmes distants car sinon ils ne répondront qu'aux recherches de noms qui proviennent de leur sous-réseau local.
Il est régulièrement demandé aux ordinateurs clients de renouveler leurs inscriptions de noms NetBIOS auprès du serveur WINS. Lorsqu'un ordinateur client s'inscrit pour la première fois à un serveur WINS, ce serveur WINS lui renvoie un message qui lui indique quand il devra renouveler son inscription, comme suit :
L'intervalle de renouvellement par défaut pour les entrées de la base de données WINS est de six jours.
Les clients WINS doivent s'inscrire et opérer un rafraîchissement tous les trois jours.
Les serveurs WINS primaires et secondaires devraient avoir le même intervalle de renouvellement.
Une entrée dite statique n'expire jamais.
Si une entrée appartient au serveur WINS local, le nom est relâché à l'heure spécifiée à moins que le client ne l'ait renouvelé entre-temps. Si une entrée appartient à un autre serveur WINS, elle est revalidée à l'heure spécifiée. Si une entrée n'existe pas dans la base de données du serveur WINS qui en est le propriétaire, elle est supprimée de la base de données WINS locale. Une requête de renouvellement de nom est traitée comme l'inscription d'un nouveau nom.
Mal régler l'intervalle de renouvellement peut avoir des effets négatifs sur les performances du système et du réseau.
Un proxy WINS est un ordinateur configuré pour utiliser WINS, qui facilite la résolution des recherches de noms pour les ordinateurs qui ne sont pas configurés pour utiliser WINS dans des intranets TCP/IP routés. Par défaut, les ordinateurs non-configurés pour utiliser WINS sont configurés en B-nud, mode qui utilise les diffusions IP pour la résolution de noms. L'ordinateur proxy WINS attend les requêtes de noms par diffusion sur le sous-réseau local.
Lorsqu'un ordinateur non-configuré pour WINS envoie une diffusion de recherche de nom IP, le proxy WINS accepte la diffusion et recherche le mappage nom d'ordinateur NetBIOS/adresse IP dans son cache. Si le cache du proxy WINS contient le bon mappage, le proxy WINS envoie cette information à l'ordinateur non-WINS. Si le mappage nom d'ordinateur/adresse IP ne figure pas dans le cache, le proxy WINS interroge un serveur WINS pour le mappage nom d'ordinateur/adresse IP.
S'il n'y a pas de serveur WINS de disponible sur le sous-réseau local, le proxy WINS peut interroger un serveur WINS à travers un routeur. Le proxy WINS cache (stocke en mémoire) les mappages nom/adresse IP qu'il reçoit du serveur WINS. Ces mappages sont utilisés pour répondre aux requêtes de nom par diffusion suivantes provenant d'ordinateurs B-nud du sous-réseau local.
Les mappages nom/adresse IP que le proxy WINS reçoit du serveur WINS sont stockés pendant une durée limitée dans la mémoire cache du proxy WINS (la valeur par défaut lors de l'installation est de six minutes ; la valeur minimale de une minute).
Lorsque le proxy WINS reçoit une réponse du serveur WINS, il stocke le mappage dans sa mémoire cache et répond à toutes les diffusions de requête de nom suivantes par le mappage reçu du serveur WINS.
Le rôle du proxy WINS est similaire à celui de l'agent de relais DHCP/BOOTP, qui transmet les requêtes des clients DHCP à travers les routeurs. Etant donné que le serveur WINS ne répond pas aux diffusions, un ordinateur configuré en tant que proxy WINS devrait être installé sur les sous-réseaux qui comportent des ordinateurs qui utilisent la diffusion pour la résolution de noms.
Pour configurer un ordinateur Windows NT, Version 4.0, en tant que proxy WINS, vous devez modifier manuellement le registre de cet ordinateur. Le mot clé EnableProxy doit être mis sur 1 (REG_DWORD). Ce mot clé se trouve dans la clé suivante : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netbt\Parameters