Académique Documents
Professionnel Documents
Culture Documents
1
Pourquoi IPv6?
Fonctionnalités
Adressage
Format
Auto-configuration
Mobilité
Module 5 : IPv6
Objectifs
Ce module traite d'IPv6.
Connaissances
– Présentation du protocole
– Intérêt
– Fonctionnalités
– Nomenclature d’adressage
– Mobilité
Progression
Présentation de IPv6 Format des en-têtes
Pourquoi IPv6 ? Mobilité IP
Nomenclature d’adressage
SR700 5-1
CHAPITRE 1 : IPv6
Pourquoi IPv6 ?
Pourquoi IPv6 ?
IPv6 est devenu l’Arlésienne de l’informatique réseau : la migration de IPv4 à IPv6 est sans
cesse reportée. La première question qui vient à l’esprit est la suivante : pourquoi avons-nous
besoin de IPv6 ?
SECURITE
IPv6 intègre, en natif, IPSec (IP Security). D’ailleurs, IPSec a été d’abord implémenté dans cette
version de IP et ensuite seulement, à la suite du retard de la migration vers IPv6, sur IPv4.
QoS
IPv6 intègre les champs DSCP et FLOW LABEL permettant de faire de la QoS et de la
commutation IP nativement. Une fois de plus, cette technique a été transplantée sur IPv4.
PAS DE BROADCAST
Plus de broadcast en IPv6. Il existe toujours les unicasts et les multicasts, dont l’espace
d’adressage a été agrandi, mais un nouveau type a été ajouté : l’anycast. L’anycast permet
d’utiliser des adresses IP partagées par plusieurs machines.
5-2 SR700
Module 5 : IPv6
NOUVEAUX BESOINS
Les applications, les utilisateurs et les réseaux actuels ont de nouveaux besoins que IPv4 a du
mal à satisfaire, ou au prix d’une grande complexité ou d’un coût parfois prohibitif.
Citons quelques exemples :
La mobilité IP, beaucoup moins complexe et moins chère à mettre en place en IPv6 qu’en
IPv4.
La téléphonie IP, qui accroit considérablement la nécessite d’agrandir l’espace d’adressage
public.
Les performances des réseaux, notamment le routage, qui est un facteur de délais
supplémentaires dans l’acheminement des données. La principale cause en est la complexité
de l’en-tête IPv4 et la faible hiérarchisation de l’adressage. En IPv6, l’en-tête est simplifié, sa
lecture beaucoup plus rapide et plus fluide. De plus, l’adressage est beaucoup plus structuré.
Pour améliorer encore les choses, la commutation IP est possible nativement via le champ
FLOW LABEL.
La voix sur IP, la centralisation des applications (CITRIX) et bientôt la virtualisation
généralisée des serveurs et des applications ont créés des besoins que IPv4 ne sait pas
combler nativement. La QoS (Quality Of Service) a permis de répondre à ces besoins
spécifiques via l’utilisation du champ ToS en mode DSCP. Le mode IP Precedence n’est
plus guère utilisé. En IPv6, le champ DSCP est identique. Mais, en utilisant ce champ en
conjonction avec FLOW LABEL, on peut sur chaque machine, et non plus uniquement sur
les routeurs, définir des règles de QoS et de commutation IP très performantes.
La domotique standardisée qui engendre des besoins et des problématiques proches de celles
des réseaux informatiques.
Le « tout électronique », dans les domaines de l’automobile, de la santé, des
communications, l’audio-vidéo… De plus en plus de technologies utilisées dans ces
domaines dérivent plus ou moins directement de celles développées en informatique. A
terme, le but sera de pouvoir tout interconnecter, accéder à tout de n’importe où.
Les besoins en sécurité. IPv4 a été développé à une époque sans pirates et sans failles
décelables. Ce n’est plus le cas aujourd’hui, le niveau technique général a explosé, Internet
permet l’échange de quantités d’informations considérables, et les accès haut débit
permettent des actions qui n’étaient pas envisageables il y a peu de temps encore. IPv6
permettrait de renforcer la normalisation des échanges sécurisés.
Fonctionnalités de IPv6
Fonctionnalités de IPv6
5-4 SR700
Module 5 : IPv6
Espace d’adressage
Espace d’adressage
IPv4 : 32 bits
2^32 = 4.294.967.296 nœuds adressables
IPv6 : 128 bits
=~ 3,4E38 (3,4*10^38) nœuds adressables
= 340.282.366.920.938.463.463.374.607.431.768.211.456
IPv4
En IPv4, une adresse IP est codée sur 32 bits, sur 4 octets. Le nombre maximum théorique de
nœuds adressables est donc de 2^32=4.294.967.296. En réalité, un peu moins de par le
découpage en classes d’adresses.
IPv6
En IPv6, une adresse IP est codée sur 128 bits, soit 16 octets. Le nombre maximum théorique de
nœuds adressables est donc de 2^128=340.282.366.920.938.463.463.374.607.431.768.211.456.
On peut s’amuser à faire toutes sortes de calculs plus ou moins significatifs. Par exemple, cela
donne en moyenne, pour une population terrestre de 6 milliards d’individus, 3,429 adresses IP
par habitant !
Comme nous le voyons, l’espace d’adressage de IPv6 est confortable et devrait nous permettre
de disposer de suffisamment d’adresses pour une période relativement longue.
Usage étendu
Usage étendu
L’immense espace d’adressage de IPv6 permet d’envisager des usages à IP qui n’étaient pas
concevables antérieurement :
Aux téléphones IP, c'est-à-dire, bientôt, tous les téléphones qu’ils soient fixes ou mobiles. Le
numéro de téléphone ne sera plus qu’un alias, l’identifiant réseau étant l’adresse IP.
Aux appareils audio-vidéo. Ce qui permettra essentiellement deux choses :
L’administration distante et unifiée des machines, via le protocole SNMP.
L’intégration de ces appareils dans les réseaux informatiques, facilitant l’échange des
données multimédia. Plus besoin des nombreuses, complexes et souvent chères prises
spécifiques : une interface réseau suffira. Certains appareils haut de gamme actuels
intègrent déjà cet équipement en standard.
La domotique. Actuellement, elle n’est possible que par l’utilisation de boitiers propriétaires.
L’évolution attendue est la normalisation des connexions, en Ethernet, de l’adressage, en
IPv6, et de l’administration, en SNMP.
Aux transports : chaque véhicule pourra être identifié par une ou plusieurs adresses IP
fournies par le constructeur. Ce qui rendra la localisation d’un véhicule beaucoup plus
efficace pour la gestion des flottes, les interventions d’urgence ou les vols.
5-6 SR700
Module 5 : IPv6
Sécurité
Sécurité
STATIQUE
Cet usage concerne essentiellement les connexions distantes aux entreprises, à des sites
sensibles, etc. Selon la destination, la machine, préalablement configurée, sélectionnera le profil
contenant les paramètres adaptés. Il est possible d’utiliser des clés pré-partagées, des clés
publiques spécifiques…
Cette technique est en tout point similaire à celle utilisée en IPv4.
DYNAMIQUE
Cette utilisation est beaucoup moins répandue en IPv4. Elle consiste à établir dynamiquement
des échanges sécurisés avec une autre machine, que celle-ci soit locale ou distante. Il faudra
simplement que les deux machines possèdent chacune leur propre certificat numérique, ce qui
leur permettra d’être identifiées de façon unique.
Types d’adresses
Types d’adresses
Unicast
Source unique, destination unique
Une adresse par interface
Multicast
Source unique, destination multiple
Gestion par groupes, diffusion sélective
Anycast
Adresse de destination partagée par plusieurs interfaces
L’adresse la plus « proche » est utilisée, la proximité étant déterminée par le
protocole de routage
Les mêmes services doivent être disponibles sur les machines partageant une
même adresse
En IPv6, il existe trois types d’adresses : unicast, multicast et anycast. Le broadcast a disparu,
les mécanismes dynamiques sont tous remplacés par des multicasts.
UNICAST
Une adresse source unique et une adresse de destination unique. Pas de changement par
rapport à IPv4, hormis le format des adresses.
Il faut au minimum une adresse par interface. On peut en avoir plusieurs, autant que
nécessaire.
MULTICAST
Une adresse source unique, une adresse de destination identifiant un groupe.
Tous les adhérents à un groupe recevront une copie du datagramme, raison pour laquelle on
appelle également un multicast une diffusion sélective.
Un datagramme multicast est forcément en mode non connecté, en IP ou UDP, jamais en
TCP.
Une adresse multicast ne peut pas être utilisée en source.
Une plage d’adresses leur est réservée. En IPv6, cet espace d’adressage a encore été agrandi.
Les adresses de multicast commencent par le préfixe FF00::/8.
ANYCAST
Une adresse source unique, une adresse de destination partagée par plusieurs interfaces.
Il n’y a pas de plage réservée pour les anycasts, contrairement aux multicasts, c’est
simplement une adresse unicast partagée.
Concrètement, lorsque plusieurs machines partagent la même adresse anycast, c’est le
protocole de routage qui déterminera laquelle est la plus proche de la source.
5-8 SR700
Module 5 : IPv6
Les mêmes services doivent bien évidemment être disponibles sur toutes les machines
partageant une même adresse anycast.
Les adresses anycast sont utilisées pour le Load Balancing et la découverte dynamique de
certains services.
Une adresse anycast n’est jamais utilisée en adresse source.
Adressage IPv6
Adressage IPv6
X:X:X:X:X:X:X:X
X est noté en hexadécimal et représente une valeur de 16
bits
On peut simplifier l’écriture en cas de série de zéros
consécutifs en les remplaçant par « :: »
Exemple : AA01:0:0:0:0:0:0:1 donne AA01::1
On ne peut le faire qu’une fois
NOTATION
Une adresse IPv6 est notée en hexadécimal par blocs de 16 bits séparés par « : » :
X:X:X:X:X:X:X:X.
Il est possible de simplifier la notation lorsqu’une suite de plusieurs zéro existe et la
remplacer par « :: ». Exemple : AA01:0:0:0:0:0:0:1 peut être raccourcie en AA01::1.
L’adresse est composée de :
Une adresse de sous-réseau sur 64 bits, elle-même subdivisée en plusieurs parties fixes
dont l’adresse du FAI et celle du client.
Un identifiant fixe sur 64 bits, l’adresse d’hôte.
PREFIXE
Les masques de sous-réseau, ou préfixes, ne sont plus nécessaires en adressage des machines.
Néanmoins, ils sont toujours indispensables pour le routage et les réseaux qui auront un
découpage réseau spécifique.
La notation se fait en CIDR :
/32 utilisé pour annoncer les réseaux agrégés d’un FAI
/48 utilisé pour annoncer les réseaux agrégés d’un client
/64 pour les annonces d’un sous-réseau
5-10 SR700
Module 5 : IPv6
Adresses réservées
Adresses réservées
ADRESSES RESERVEES
L’adresse ::/128 (00..0 sur 128 bits) est appelée « UNSPECIFIED ADDRESS » et est
équivalente à 0.0.0.0/32 en IPv4.
Elle est utilisée :
En source pour les clients DHCP
En destination pour la route par défaut
L’adresse ::1/128 (00..1 sur 128 bits) est équivalente à 127.0.0.1/32 en IPv4. On l’appelle
également LOCALHOST, elle est utilisée pour les interfaces de bouclage (LOOPBACK).
L’adresse FF02 ::1/8 est équivalente à 224.0.0.1 en IPv4. Elle est utilisée pour atteindre toute
machine multicast du sous-réseau de l’émetteur.
L’adresse FF02 ::2/8 est équivalente à 224.0.0.2 en IPv4. Elle est utilisée pour atteindre tous
les routeurs multicast du sous-réseau de l’émetteur.
Adresse lien-local
Adresse lien-local
PRINCIPES
L’adresse lien-local, ou Scope Link, est une adresse que toute machine IP utilise au
démarrage.
Cette adresse a une valeur locale, elle n’est pas routable.
Elle a le format suivant :
La partie réseau est égale à FE80::/64
L’identifiant d’interface est égal à l’EUI-64, Extended Unique Identifier, qui est calculé à
partir de l’adresse MAC ou de l’adresse physique dans les réseaux autres qu’Ethernet.
IEEE EUI-64
Ce format d’adresse physique a été développé, initialement, pour la domotique (IEEE 1394) sur
64 bits. Il est devenu le standard pour toute machine physique. Comme les réseaux locaux
utilisent aujourd’hui quasi-exclusivement l’adressage physique MAC sur 48 bits, des règles de
conversion ont été définies.
5-12 SR700
Module 5 : IPv6
IEEE EUI-64
IEEE EUI-64
FORMAT EUI-64
Une adresse EUI-64 est composée de deux parties :
Sur 24 bits est codé l’identifiant du constructeur ou du fabriquant, comme pour l’adressage
MAC
Sur 40 bits est codé le numéro de série
Le bit U :
A la valeur 0 si l’adresse est universelle, à l’inverse de l’adressage MAC
A la valeur 1 si l’adresse est gérée localement
Le bit G :
A la valeur 0 si l’adresse est individuelle, affectée à une interface unique. Une fois
encore, à l’inverse de l’adressage MAC.
A la valeur 1 si l’adresse est de groupe, partagée par plusieurs machines. Généralement,
c’est une adresse de multicast. Toujours en opposition à la nomenclature MAC.
5-14 SR700
Module 5 : IPv6
Adresses site-local :
Equivalentes aux adresses privées IPv4
Format des préfixes d’adresses : FEC0::/48
Adresses globales
Equivalentes aux adresses publiques IPv4
Format des préfixes d’adresses : 2001::/16
Nous avons vu le format général des adresses IPv6, ainsi que les adresses lien-local. Il existe
d’autres types d’adresses IPv6 :
ADRESSES DE SITE-LOCAL
Les adresses dites de site-local sont équivalentes aux adresses privées en IPv4
Le format des préfixes d’adresses est le suivant : FEC0::/48
ADRESSES GLOBALES
Les adresses dites globales sont équivalentes aux adresses publiques en IPv4
Le format des préfixes d’adresses est le suivant : 2001::/16
ADRESSES 6to4
Les adresses dites 6to4 sont réservées pour la migration vers IPv6
Le format des préfixes d’adresses est le suivant : 2002::/16
Auto-configuration
Module 5 : IPv6
PRINCIPE
L’auto-configuration permet à une machine IP d’utiliser comme ID d’interface son adresse
MAC, l’adresse réseau lui étant fournie par un routeur. Son adresse IPv6 aura alors le format
suivant : 64 bits pour la partie réseau, 64 bits pour l’identifiant d’interface.
Il est également possible d’utiliser un ID d’interface autre que celui de l’adresse MAC, fixe ou
aléatoire.
L’avantage de cette technique est sa souplesse d’utilisation, notamment pour les ordinateurs
portables. Il est ainsi facile de se connecter à n’importe quel réseau sans avoir à connaitre au
préalable les paramètres IP nécessaires. Toutefois, cette technique ne remplace par DHCP, qui
offre des fonctionnalités beaucoup plus étendues.
FONCTIONNEMENT
1) Le PC émet un Router Solicitation, un datagramme multicast spécifique.
2) Le routeur répond par un Router Advertisement, dans lequel il précise le type de réseau, le
préfixe ainsi que la route par défaut.
RENUMBERING
Le renumbering permet à un routeur d’avertir les machines utilisant l’auto-configuration du
changement d’un paramètre dans l’adressage IP, via l’émission d’un Router Advertisement.
5-16 SR700
Module 5 : IPv6
Après bien des discussions, des modifications, et des conflits, l’IAB (Internet Architecture
Board) a fini par définir un format d’adressage qui se veut définitif. Nous passerons sur les
différents formats précédents, dont certains étaient volontairement provisoires, pour étudier
directement celui qui sera utilisé pour la migration.
PREFIXES
Une route sur Internet avec un préfixe en /32 annonce un FAI/ISP
Une route avec un préfixe en /48 annonce un client. Ce client peut être une entreprise, un
corps d’état, une administration, une ONG, une université…
Une route en /64 annonce un réseau client
On le voit, le routage en sera grandement simplifié, comme nous le verrons dans le chapitre
suivant.
5-18 SR700
Module 5 : IPv6
Mobilité IP
Mobilité IP
PRINCIPES
IPv6 intègre la mobilité IP, qui permet une gestion dynamique et transparente des
déplacements des machines d’un réseau à un autre. Le principe est de conserver les
connexions actives d’une machine lors d’un changement de réseau.
Une machine IPv6 mobile possède une adresse d'origine, la HOME ADDRESS, qui ne
change pas lors de ses déplacements.
Sur le réseau d’origine de la machine, un routeur, le HOME AGENT, permet le suivi de ses
déplacements.
Une machine mobile peut découvrir dynamiquement son HOME AGENT en utilisant une
adresse anycast spéciale. Cette adresse est composée des éléments suivants :
Le préfixe en /64 du réseau d’origine
L’EUI-64 réservé FDFF:FFFF:FFFF:FFFE
La mobilité IP utilise un NEXT HEADER, un champ optionnel en IPv6, spécifique.
MOBILITE
Une machine mobile IP connait le réseau IPv6 auquel elle est connectée via la réception des
RA (Router Advertisements).
En cas de déplacement, elle acquière une adresse supplémentaire via l’auto-configuration.
Cette adresse est nommée CARE-OF-ADDRESS.
Ensuite, elle communique cette CARE-OF-ADDRESS, via un message BU (Binding
Update), à son HOME AGENT.
ROUTAGE
Local : pour communiquer en local, une machine mobile utilisera sa CARE-OF-ADDRESS.
Distant :
Pour communiquer avec une machine mobile, c’est sa HOME ADDRESS qu’il faudra
utiliser. La machine mobile répondra avec sa CARE-OF-ADDRESS. C’est un mécanisme
de routage triangulaire.
Pour améliorer le routage, la machine mobile peut émettre à destination d’un hôte distant
un message BU, permettant alors une communication « directe » sans passer par le
HOME AGENT.
5-20 SR700
Module 5 : IPv6
IPv4 vs IPv6
IPv4 vs IPv6
En-tête IPv6
En-tête IPv6
EN-TETE IPv6 :
VERSION : identique à IPv4, la valeur en IPv6 est fixée à 6.
PAYLOAD : remplace LONGUEUR TOTALE, puisque la longueur d’en-tête est fixe en
IPv6. Ce champ indique la taille de la charge utile, des données transportées.
HOP LIMIT : identique à IPv4, nombre de routeurs que peut traverser ce datagramme avant
d’être détruit. Le champ a juste été renommé, ce qui correspond maintenant réellement à son
rôle.
NEXT HEADER : équivalent à PROTOCOLE en IPv4, il peut indiquer :
Un protocole de niveau 3 (ICMP, IGMP, IP)
Un protocole de niveau 4 (TCP, UDP, OSPF…)
Un champ optionnel présent immédiatement après les 40 octets d’en-tête IPv6. Le champ
optionnel peut contenir lui-même un champ Next Header indiquant un autre champ
optionnel ou un protocole de niveau 4.
TRAFFIC CLASS : correspond à ToS/DSCP en IPv4. Il permet de définir la classe des
données transportées et d’appliquer une éventuelle stratégie de QoS. IP Precedence n’est
plus supporté.
FLOW LABEL : permet le traitement par flux des datagrammes en les « taggant ». Cette
technique améliore les performances, en commutant IP.
En effet, en routage IP classique, on traite les datagrammes IP un par un indépendamment les
uns des autres. Si un flux de données entre deux machines compte 10.000 datagrammes, les
10.000 seront routés indépendamment. A chaque datagramme reçu, le routeur consultera sa
table de routage et déterminera le next hop, ensuite il déterminera l’interface la plus
« proche » de ce next hop. Le but de la commutation IP est justement de traiter tous les
datagrammes d’un même flux de données de la même façon, sans avoir à tout recalculer à
chaque fois. Tant d’un point de vue du routage, que de la QoS.
Les principes de la commutation IP en IPv6 sont les suivants :
5-22 SR700
Module 5 : IPv6
Next Header
NEXT HEADER
EXEMPLES :
Aucune extension ou option. Dans ce cas, le Next Header contient le code du protocole de
transport utilisé, ici TCP.
Une extension :
Le champ Next Header de l’en-tête IPv6 indique le code de l’extension, ici EXT1.
Dans l’en-tête de EXT1, le champ Next Header indique le code du protocole de niveau 4,
ici TCP.
Deux extensions :
Le champ Next Header de l’en-tête IPv6 indique le code de la première extension, ici
EXT2.
Dans l’en-tête de EXT2, le champ Next Header indique le code de la seconde extension,
ici EXT1.
Dans l’en-tête de EXT1, le champ Next Header indique le code du protocole de niveau 4,
ici TCP.
5-24 SR700