# Internetwork Packet Exchange

Internetwork Packet Exchange (IPX), est l’implémentation Novell du Internet Datagram Protocol (IDP) développé par Xerox. IPX est un protocole datagramme sans connexion qui transmet des paquets à travers un réseau local (LAN) et fournit aux stations Netware et aux serveurs de fichiers des services d’adressage et de routage inter-réseaux. Il s’agit donc d’un protocole de couche 3 du modèle OSI. C’est un protocole de communication qui est utilisé conjointement avec Sequenced Packet exchange (SPX) dans les réseaux locaux NetWare de Novell.
L’adressage IPX permet, comme l’adressage IP, d’obtenir un système hiérarchique, offrant ainsi aux administrateurs les bases de la conception du réseau local (LAN). Ces adresses occupent 80 bits : 32 bits (en caractères hexadécimaux) définissant le numéro de réseau choisi par l’administrateur et 48 bits pour la partie représentant le nœud qui correspondent à l’adresse MAC de l’hôte.
L’avantage de l’utilisation de l’adresse MAC pour la partie hôte du nœud est que le protocole ARP (gourmand en ressources réseau) devient inutile et donc inutilisé.
Les spécifications d’IPX prévoient que les clients reçoivent une adresse qui leur est assignée dynamiquement. Les numéros de réseau sont configurés sur les interfaces physiques des serveurs et des routeurs. Les serveurs peuvent choisir de générer automatiquement un numéro de réseau interne au moment de l’installation.
Les serveurs peuvent aussi créer leur propre numéro de réseau IPX interne en plus des numéros de réseau appliqués à leurs interfaces. Lorsqu’un client se connecte à un serveur, il utilise l’adresse IPX interne de celui-ci. Cette adresse est formée du numéro de réseau interne du serveur et de l’adresse de nœud 0000.0000.0001.
NetWare prend en charge plusieurs types d’encapsulation (c’est-à-dire des types de trame) pour la gamme de protocoles Ethernet :
* ARPA (appelé Ethernet_II par Novell)
* Novell-ether (appelé Ethernet_802.3 par Novell)
* SAP (appelé Ethernet_802.2 par Novell)
* SNAP (appelé Ethernet_SNAP par Novell)

## Structure du paquet IPX

Détails des champs :
| Checksum | Mis à FFFFFFh |
| Longueur du paquet | Longueur du datagramme IPX en octets |
| Contrôle transport | Utilisé par les routeurs Netware. Mis à zéro avant une transmission de paquets |
| Type paquet | Spécifie l’information contenue dans le paquet : 0 Hello ou SAP 1 RIP 2 Paquet ECHO 3 Paquet erreur 4 Netware 386 ou SAP 5 Protocole de séquencement de paquets 16/31 Protocoles expérimentaux 17 Netware 286 |
| Numéro de réseau | Nombre sur 32 bits déterminé par l’administrateur réseau. 0 en local. |
| Numéro de nœud | Nombre sur 48 bits qui identifie l’adresse hardware LAN. Si ce nombre est FFFF FFFF FFFF, l’adresse est une adresse de broadcast. |
| Socket | Nombre qui identifie le paquet de haut niveau 0451h NCP 0452h SAP 0453h RIP 0455h Netbios 0456h Diagnostic 0457h Paquet de sérialisation (SER) 4000-6000h Sockets éphémères utilisées pour les communications des serveurs de fichiers et des réseaux |

## Abandon du protocole

Novell a abandonné IPX à partir de 1998, avec la sortie NetWare 5.0 qui a un support natif de TCP/IP, au profit de IPv6 (en commençant par supporter IPv4).

## Lien externe

* Protocole IPX/SPX dans Vista