Les adresses IP majoritairement utilisées actuellement (IPv4) sont particulièrement bien connues et relativement faciles à retenir et utiliser. IPv6 introduit toutefois une certaine complexité dans ces adresses, celles-ci étant sensiblement plus longues, mais aussi devant respecter des règles stricts que nous allons détailler au sein de cet article.

La nomenclature utilisée pour IPv6 diffère sensiblement par rapport à IPv4. En effet, en quadruplant la taille de l’adresse (de 32 à 128 bits), il a fallu trouver une méthode aisée de noter ces adresses dans une forme intelligible par l’être humain. La notation IPv4 se reposait sur un découpage en octet (8 bits), formant quatre blocs d’une valeur comprise entre 0 et 255 (valeur maximale possible sur 8 bits). Ces quatre blocs sont séparés par des points, pour obtenir le format bien connu 192.168.0.1 qui est un exemple classique d’adresse IPv4.

Les 128 bits IPv6 ne pouvaient efficacement être notés sous cette forme. Un nouveau format a été pensé, sous la forme de blocs de 16 bits représentés sous leur forme hexadécimale. Cette notation permet de simplifier la représentation des adresses IPv6 qui, sous une forme décimale classique, deviendraient beaucoup trop longues :

La représentation donnée ici considère le cas le plus extrême où chaque bloc est utilisé au maximum de ses capacités. Ces blocs peuvent toutefois contenir de 1 à 4 digits hexadécimaux (de 0 à F), permettant d’alléger d’autant la notation.

Plus intéressant encore, les adresses IPv6 peuvent être simplifiées à l’extrême en remplaçant des blocs entiers de zéros par « :: ». Cette nomenclature doit respecter des règles strictes de manière à ne pas engendrer d’ambigüité dans les différentes adresses :

    • Il ne peut y avoir qu’un seul « :: » au sein d’une adresse. Par exemple :

    • Seuls des blocs entiers de 16 bits peuvent être remplacés de la sorte. Par exemple :

    • Les zéros supplémentaires ne peuvent être ignorés dans la notation que s’ils sont situés au début d’un bloc, jamais à la fin. Par exemple :

Les adresses IPv6 peuvent arborer un affichage différent selon le déploiement choisi. En effet, si les adresses IPv4 servent de support à la conception de l’adresse IPv6, l’affichage suivant peut être envisagé afin de montrer cette appartenance :

IPv4 disposait d’une notion de masque réseau permettant de connaître la taille allouée aux hôtes, ainsi que la part définissant le réseau en lui-même. Ce masque, ou préfixe, se retrouve dans une forme étendue au sein d’IPv6. Ce préfixe est défini par deux valeurs différentes : la valeur du préfixe en lui-même, ainsi que par sa taille (en nombre de bits). La syntaxe généralement admise depuis IPv4 s’applique ici aussi :

Ici aussi, remarquons qu’il existe des règles au niveau de la syntaxe permettant d’éviter une mauvaise interprétation de cette représentation. Les règles sont similaires à ce que nous avons abordé précédemment pour la simplification des adresses. Dans le cadre d’une configuration IPv6, il n’est toutefois pas nécessaire de spécifier séparément l’adresse IPv6 et le préfixe/taille de préfixe séparément. La notation « adresse IP /taille du préfixe » se suffit à elle-même puisqu’elle permet d’en retirer la valeur du préfixe. Si cet exercice semble complexe pour l’esprit humain, particulièrement au travers de la notation hexadécimale, pour la machine en revanche, il n’en est rien, celle-ci abordant cet affichage sous sa forme binaire, lui permettant de traiter l’information beaucoup plus rapidement.

Pour finir cette section relative à la syntaxe utilisée pour IPv6, il est intéressant de noter que la notion de port, associé à un service en particulier, existe toujours (p.ex. le port 80 pour le protocole http, 443 pour HTTPS, etc.). Toutefois, si on prête attention à la syntaxe IPv4, et qu’on la reporte pour IPv6, un problème va rapidement se poser. Une convention syntaxique a été prévue afin de prendre ce genre de cas en considération. En encadrant l’adresse IPv6 par des crochets, les différents éléments d’un couple adresse/port, voire d’une URI/URL, peuvent être strictement séparés.

La nomenclature IPv6 demande un peu de pratique avant d’y être habitué. Le fait d’écrire les adresses en hexadécimal est relativement troublant, mais ce n’est au final qu’une question de pratique. Les questions de syntaxes ne sont toutefois pas les seules à mériter des explications. D’autres problématiques, liées à la classification des adresses, ainsi que les questions d’adressage, seront traitées au sein d’articles ultérieurs.