NetBIOS

{{#ifeq:||Un article de Ziki, l'encyclopédie libre.|Une page de Ziki, l'encyclopédie libre.}}

NetBIOS (NETwork Basic Input Output System) est une architecture réseau codéveloppée par IBM et Sytek (en) au début des années 1980. NetBIOS est utilisé principalement par Microsoft. Ce n'est pas un protocole réseau, mais un système de nommage et une interface logicielle qui permet d’établir des sessions entre différents ordinateurs d’un réseau.

NetBIOS a connu plusieurs implémentations :

  • NBF (NetBIOS Frames Protocol, connu à tort sous le nom NetBEUI)
  • NBX (NetBIOS over IPX/SPX)
  • NBT (NetBIOS over TCP/IP)

Les deux premières ont disparu de nos jours.

Les noms NetBIOS sont appelés à disparaître en faveur des noms DNS. De plus, le partage de fichiers avec le protocole SMB peut à présent se passer de NetBIOS et fonctionner directement par-dessus TCP/IP.

Historique

Fichier:Netbios-netbt-netbeui.png
NetBIOS et le modèle en couches TCP/IP

NetBIOS a été développé en 1983 par Sytek Inc. comme interface de programmation pour les communications entre ordinateurs IBM PC sur un réseau local.

IBM a écrit en 1985 un émulateur NetBIOS nommé NetBEUI (Modèle:Lang). À cette occasion, IBM a étendu l'interface de programmation et défini le protocole NBF. NBF pouvait fonctionner par-dessus la couche IEEE Logical Link Control, donc à la fois par-dessus Token Ring d'IBM et par-dessus Ethernet.

En 1986, Novell a publié Advanced Novell NetWare 2.0 qui comportait son propre émulateur NetBIOS et pouvait fonctionner par-dessus IPX/SPX.

En 1987, une méthode pour encapsuler NetBIOS dans des paquets TCP et UDP, Modèle:Lang a été publiée. Elle a été décrite dans les Modèle:RFC et Modèle:RFC.

NetBIOS over TCP/IP

NetBIOS over TCP/IP utilise les ports :

Modèle:Lang (port UDP 137)

Ce service sert à associer un nom d’ordinateur à une adresse IP.

Ce nom est limité à Modèle:Nombre, plus un caractère renseignant sur le type de machine : par exemple, avec l’interface graphique, on peut avoir un contrôleur de domaine et une machine cliente qui portent le même nom sur Modèle:Nombre ; en interne, le seizième caractère est attribué automatiquement et permet de différencier les deux.

Modèle:Lang (port UDP 138)

Description

Ce service permet d’échanger des messages en mode non connecté.

En-tête d’un paquet (en octets)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...... 49 50 ...... 84
Type de message Modèle:Lang ID du datagramme IP source Port source Longueur Offset du paquet Nom de l’émetteur Nom du destinataire

Modèle:Lang (port TCP 139)

Ce service permet d’échanger des messages en mode connecté jusqu’à Modèle:Nombre.

Quelques commandes utiles

  • nbtstat -a nomnetbios : affiche la table correspondant à ce nom netbios
  • nbtstat -A 192.0.2.123 : affiche la table correspondant à cette adresse IP
  • nbtstat -n : affiche la table locale
  • nslookup -S nomnetbios : idem sous UNIX

Références

Modèle:Références

Modèle:Palette Modèle:Portail