Depuis les débuts du protocole Internet (Internet Protocol ou IP), la plage complète d’adresses ont toujours été classifiées dans différents rôles et usages. Ces rôles ont évolués au fil du temps, et ont été remis à jour avec l’arrivée d’IPv6.
Que ce soit dans sa version 4 ou sa version 6, IP définit des types et des classes d’adresses prévus pour être utilisés dans des cas d’usage différents. Cette classification peut se subdiviser en deux parties : la portée des adresses et leur visibilité. La portée d’une adresse peut être définie comme le type de destination vers lequel pointe l’adresse. La visibilité d’une adresse peut, pour sa part, être définie comme étant la connaissance d’une adresse à un niveau local, global, interne, etc. par un hôte spécifique.
Il existe quatre sortes de portées :
- Unicast
Lorsque cette adresse est utilisée, une unique destination est contactée. Ce type d’adresse est le plus couramment utilisé par la majeure partie des utilisateurs, et permet de contacter une entité spécifique sur un réseau donné.
- Anycast
L’adresse pointe vers de multiple destinations, mais seule la plus « proche » sera contactée simultanément, les autres destinations pouvant servir dès lors de destinations pour du partage de charge ou de la redondance. Le choix de la destination à contacter se fait via les mesures des protocoles de routages (notamment OSPF et BGP). La notion de proximité est ici intimement liée à ce protocole et à la méthode utilisée pour calculer les distances (bande passante, nombre de sauts, délai, …).
- Multicast
Similaire aux adresses anycast ci-dessus, ces adresses pointent vers de multiples destinations, mais les contactent toutes simultanément. Ces adresses sont particulièrement utilisées dans le cadre des protocoles de routage. En effet, ces protocoles s’en servent afin de contacter tous les équipements utilisant le même protocole qu’eux sur un même réseau.
- Broadcast
Une adresse de ce type pointe vers toutes les destinations d’un réseau, sans limitation. Ces adresses sont un type de multicast particulier, englobant toutes les destinations. Pour cette raison, IPv6 s’affranchit de la notion de broadcast pour se contenter du multicast.
La seconde classification, la visibilité, des adresses peut prendre différentes formes principales :
- Link-Local
Ces adresses ne sont valables qu’au niveau du lien. C’est-à-dire qu’au-delà du réseau local, ces adresses n’ont plus aucun sens. Elles sont utiles afin d’offrir une connectivité IP locale même si aucun mécanisme de configuration (annonces de préfixe, DHCP, …) n’est implémenté. Pour des besoins d’adressage, chaque interface doit être munie de cette adresse qui sera utilisée localement.
- Private
Les adresses de type privées ont été instaurées lorsque la pénurie d’adresses IPv4 s’est fait sentir. Couplées aux mécanismes de NAT, ces adresses ont permis un fractionnement du réseau permettant à IPv4 d’être maintenu plus longtemps. Elles n’ont une validité que sur les réseaux locaux (particuliers, entreprises, …) et ne peuvent être utilisés en dehors de ces limites. Ces adresses ne sont pas directement accessibles par des adresses publiques, globales.
- Public
A leur parfait opposé, les adresses de type public représentent les adresses globales IPv4, offrant par extension une connectivité globale. Ces adresses sont visibles et accessibles directement par toute entité connecté à Internet. La majeure partie de la plage IPv4 est allouée à ces adresses. IPv6 définit ce type comme étant global (cf. les points suivants).
- Site-Local
Ce type d’adresses était censé remplacé, au sein d’IPv6, les adresses privées IPv4. Toutefois, au regard de la quantité d’adresses disponibles, ce type est devenu rapidement déprécié et ses adresses sont retombés dans le domaine global.
- Global
Les adresses globales, définies par IPv6, englobent toutes les adresses ne correspondant à aucun autre type de visibilité. Leur définition est identique aux adresses publiques IPv4 puisque chacune de ces adresses fournit une connectivité globale unique à l’entité en disposant.
- Loopback
Les adresses dites de loopback (boucle locale) est un type d’adresse très spécifique, à la visibilité restreinte puisqu’uniquement disponible au niveau d’une entité. Elles peuvent parfois être qualifiées de type interface-local, ces adresses ne sortant jamais du cadre de l’entité considérée.
- Undefined
L’adresse undefined est utilisée dans ne nombreux cas de figure. Elle ne représente aucune adresse à proprement parler, et n’est en aucun cas routable. Sa signification dépend du cas considéré. Elle est notamment utilisée dans le cadre de DHCP par un hôte n’ayant reçu encore aucune adresse. Elle est souvent utilisée aussi pour représenter une route par défaut. Elle signifie généralement « toutes entités possibles » et est disponible à la fois dans IPv4 et dans IPv6.
Cette classification existe certes déjà avec IPv4, mais IPv6 remet de l’ordre en se débarrassant des ajouts et notions dont il n’a plus besoin (notamment la notion d’adresses privées). Lors de notre prochain article relatif à l’adressage IPv6 en lui-même, nous verrons que cette classification a un certain impact, mais que les mêmes règles peuvent être appliquées quel que soit le type considéré.