Social Icons

samedi 1 septembre 2012

comment comprendre le fonctionement de L'adressage IPv6

Généralités :
IPng (Next generation) ou IPv6 répond au besoin d’évolution de la communauté Internet et comble les faiblesses d’IPv4. La plus connue concerne l’espace d’adressage, IPv4 met en place un adressage à plat (Net_ID) ce qui a conduit à l’explosion des tables de routage (certains routeurs Internet ont plusieurs dizaines de milliers d’entrées dans leur table de routage). Le CIDR a partiellement résolu ce problème en faisant disparaître la notion de classe d’adresses, en autorisant l’agrégation d’adresses de réseaux contigus en un seul préfixe réseau et en organisant une affectation géographique des adresses. La seconde faiblesse concerne la pénurie d’adresses, l’utilisation d’un adressage privé associé à la translation d’adresses (NAT) résout partiellement ce problème mais pénalise fortement les performances. Aussi, l’adressage dans IPv6 a-t-il été porté à 128 bits, ce qui correspond à plusieurs milliers d’adresses au m2 de surface terrestre.
Dans un système de réseaux interconnectés, seul un adressage hiérarchique permet l’allégement des tables de routage, chaque routeur ne traitant que la partie de l’adresse correspondant  son domaine. Cependant, dans une communauté aussi vaste que celle d’Internet, l’adressage hiérarchique devient vite sans signification, aussi entre l’adressage à plat non significatif d’IPv4 et l’adressage hiérarchique, tel que celui d’X.121, un compromis a été réalisé. L’adressage IPv6 comporte quatre champs .
Le premier, sur 48 bits, est une agrégation hiérarchique de préfixes décrivant la connectivité du site, ce champ est désigné sous le terme topologie publique (identifiant des prestataires). Le second, sur 16 bits, décrit la topologie locale du site, enfin le dernier, sur 64 bits, identifie de manière unique au monde une interface. Cet adressage est dénommé adressage agrégé ou Aggregatable Global Unicast Address Format.

La notation et le type d’adresse

Une notation hexadécimale, sur 16 bits séparés par deux points « : », remplace la notation décimale pointée d’IPv4. L’adresse passe de 32 à 128 bits, huit mots de 16 bits. Ainsi, une adresse IPv6 s’écrit :
                                                FE0C:DA98:0:0:0:0:5645:376E
La notation peut être simplifiée en remplaçant une succession de 0 par « :: », l’abréviation « :: » ne pouvant être utilisée qu’une seule fois. Ainsi, l’adresse précédente devient :
                                                    FE0C:DA98::5645:376E
IPv6 adopte une notation similaire à celle du CIDR, le champ préfixe étant désigné par un nombre représentant la longueur en bits du préfixe, l’écriture est donc de la forme : @IPv6/ longueur du préfixe en bits, soit par exemple :
                                                      FE0C:DA98/32
                                                   FE0C:DA98:0:0/64
                                                     FE0C:DA98::/64
Très pénalisante en terme de performance réseau, la notion de broadcast disparaît. Elle est remplacée par une généralisation des adresses multicast. IPv6 distingue trois types d’adresse :
– les adresses unicast : une adresse unicast désigne une interface, elle peut être utilisée pour identifier un groupe d’interfaces lorsque ces interfaces constituent une agrégation de liens et doivent être vues comme une seule interface ;
– les adresses multicast (FF00::/8) : ces adresses désignent un ensemble d’interfaces dont la localisation n’est pas nécessairement sur le même réseau physique. Un datagramme adressé à une adresse multicast est acheminé à toutes les interfaces du groupe ;
– les adresses anycast : ces adresses introduites par IPv6 correspondent à une restriction des adresses de multicast. Elles désignent un ensemble d’interfaces partageant un même préfixe réseau. Cependant, lorsqu’un datagramme est adressé à une adresse anycast, il n’est délivré qu’à une seule interface du groupe, celle dont la métrique, au sens routage du terme, est la plus proche du noeud source.

Le plan d’adressage

L’identifiant d’interface
L’indentifiant d’interface dans IPv6 correspond à la notion d’Host_ID d’IPv4. Afin de faciliter les
opérations d’autoconfiguration et de disposer d’un identifiant unique au niveau mondial, l’identifiant
correspond à une nouvelle proposition d’extension de l’adressage IEEE sur 64 bits. Ce nouvel
identifiant d’interface sur 64 bits (EUI-64, End-User Interface) garantit l’unicité d’adresse. Pour
les interfaces non dotées de cet identifiant, celui-ci peut être déduit de l’adresse MAC IEEE de
48 bits.
Lorsqu’une interface n’est dotée d’aucun identifiant, l’administrateur local peut lui attribuer un
identifiant, le bit U12 est alors positionné à 0.

Les adresses spécifiques
Comme dans IPv4 certaines adresses ont une signification particulière :
– L’adresse dite indéterminée (Unspecified address), correspondant à l’adresse 0.0.0.0 d’IPv4,
elle désigne une interface en cours d’initialisation. Cette adresse 0:0:0:0:0:0:0 ou :: ne doit
jamais être attribuée à une interface.
– L’adresse de bouclage (Loopback address) correspond à l’adresse 127.0.0.1 d’IPv4, elle vaut
0:0:0:0:0:0:0:1 ou encore ::1.

Elles commencent par (“0” où “x” est n'importe quel caractère hexadécimal, couramment )

fe8x:  <- actuellement le seul en usage.
fe9x:
feax:
febx:
Ce type d'adresse se trouve sur chaque interface disposant d'IPv6 après une auto-configuration sans état (ce qui est couramment le cas).

Les adresses dites de site local
Les adresses de site local (FEC0::/10) correspondent aux adresses privées d’IPv4 (RFC 1918,
adresses de type 10.0.0.0). À l’instar d’IPv4, ces adresses ont une portée limitée au réseau privé,
elles ne peuvent être utilisées pour se connecter à Internet . Le champ SLA_id (Site
Level Aggregator) correspondant au champ Subnet_ID d’IPv4 permet à l’administrateur local de
hiérarchiser son réseau.
  
Autre avantage: parce qu'il est possible avec IPv6 d'assigner plus d'une seule adresse par interface, vous pouvez assigner une telle adresse site-local en plus de l'adresse globale.
Il commence par:

fecx:  <- le plus couramment utilisé.
fedx:
feex:
fefx:
(où “x” est n'importe quel caractère hexadécimal, couramment “0”)

Le plan d’adressage agrégé
L’adressage agrégé se présente comme étant un compromis entre un adressage hiérarchique strict et un adressage à plat. Il instaure une hiérarchie vis-à-vis des fournisseurs d’accès. Le premier niveau de hiérarchisation (TLA_id, Top Level Aggregator) sur 13 bits correspond à l’identification du fournisseur d’accès de transit à Internet. Le champ suivant sur 24 bits (NLA_id, Next Level Aggregator) est un champ d’agrégation dont le découpage est défini par l’autorité désignée dans le champ précédent. La dernière partie champ du NLA désigne le site local connecté au fournisseur d’accès. Le dernier champ d’agrégation (SLA_id, Site Level Aggregator) sur 16 bits permet au gestionnaire du site de hiérarchiser son plan d’adressage. Devant la difficulté de dimensionner les champs TLA et NLA, un champ de 8 bits a été prévu pour permettre le débordement à droite (TLA) ou à gauche (NLA) des champs TLA et NLA. La figure suivant représente ce type d’adresse.
Il commence par (les x étant des caractères hexadécimaux)

2xxx: 
3xxx:
Note: la dénomination “agrégeable” est abandonnée dans les brouillons actuels. Il y a quelques sous-types définis en plus, ci-dessous:
*Les adresses de test 6bone.
*Les adresses 6to4
*Les adresses assignées par un fournisseur dans la hiérarchie de routage
*Adresses réservées aux exemples et à la documentation

L’adressage multicast
Afin d’éviter l’usage intempestif de broadcast qui pénalise les performances, IPv6 a généralisé la notion de multicast en définissant différents niveaux de diffusion. Une adresse multicast désigne un ensemble de noeuds, elle est dite aussi adresse sur abonnement. L’adresse multicast comporte quatre champs , le premier identifie une adresse de multicast (préfixe FF00::/8). Le second, le champ flags, est un champ de bits (4 bits) dont seul le dernier est défini, il s’agit du bit T. Ce bit, lorsqu’il est à « 0 », indique que l’adresse est permanente. Le champ suivant indique le niveau de diffusion (scope). Les différentes valeurs de ce champ sont :
– 0, réservé ;
– 1, noeud local ;
– 2, lien local ;
– 5, site local ;
– 8, l’organisation locale ;
– E, global.

 Certaines adresses multicast ont été prédéfinies, ce sont notamment les adresses de diffusion des
protocoles de routage. Chaque protocole de routage possède sa propre adresse.

L’adressage d’anycast
Concrètement, une adresse anycast résulte de la concaténation d’un préfixe désignant le sous-réseau
adressé et d’un suffixe nul . En principe, actuellement une adresse anycast ne peut être
attribuée qu’à une passerelle.
Les adresses anycast sont des adresses spéciales utilisées pour couvrir des besoins tels que déterminer le serveur DNS le plus proche, le serveur DHCP le plus proche, ou tout groupe dynamique similaire. Les adresses sont prises dans l'espace d'adressage unicast (agrégeable ou site-local pour le moment). Le mécanisme anycast (au regard du client) sera pris en compte par un protocole de routage dynamique.

Note: Les adresses anycast ne peuvent être utilisées comme adresse source, elles sont utilisables uniquement comme adresse de destination.

Un simple exemple d'une adresse anycast est celle d'un routeur de sous-réseau. Soit un noeud avec l'adresse IPv6 suivante assignée:

3ffe:ffff:100:f101:210:a4ff:fee3:9566/64  <- L'adresse du noeud
L'adresse anycast de routeur de sous-réseau sera créée en laissant totalement blanc le suffixe (les 64 bits inférieurs):

3ffe:ffff:100:f101::/64  <- l'adresse anycast de routeur de sous-réseau





L’adressage de transition d’IPv4 vers IPv6
La migration d’IPv4 vers IPv6 ne peut être réalisée que progressivement. Durant un temps assez important, les deux versions de protocoles devront cohabiter. Aussi, deux solutions ont été envisagées pour permettre d’utiliser les adresses IPv4 dans le domaine IPv6. La première  dite IPv4 mappée est une représentation interne des adresses afin de permettre à des programmes IPv6 de fonctionner sur un réseau IPv4, la communication se faisant d’une machine IPv4 à IPv4.
La seconde dite IPv4 compatible, permet à deux machines IPv6 de communiquer à travers un réseau IPv4 (tunnel IPv4). Le datagramme IPv6 d’adresse « ::a.b.c.d » est encapsulé dans un datagramme IPv4 d’adresse « a.b.c.d »).

CONCLUSION
Défini pour répondre à un besoin précis, TCP/IP n’a été conçu que pour satisfaire les besoins de l’armée américaine, de ce fait il a bénéficié d’une approche très pragmatique. Si cette approche en limite les possibilités, elle autorise aussi les évolutions. Aujourd’hui TCP/IP, bien que conçu pour des applications en mode texte, a su s’adapter pour répondre aux transferts de flux multimédia.

Aucun commentaire :

Enregistrer un commentaire

Abonnez-vous par e-mail

Pour recevoire les nouvelles article