Formateur : Dans cette
leçon, nous allons présenter les concepts entourant l'IPv6,
ou Protocole Internet version 6.
Jusqu'à présent,
nous n'avons parlé que de l'IPv4, mais
l'un des problèmes de l'IPv4 est que son espace
d'adressage est limité.
En effet, l'adresse IPv4 ne
comporte que 32 bits, ce qui nous
en donne seulement 4. 2 milliards de combinaisons d'adresses possibles.
Maintenant, j'en connais 4. 2 milliards, cela semble beaucoup d'adresses
IP, mais lorsque nous avons supprimé des parties entières,
comme les adresses APIPA, les adresses d'hôtes locaux, les adresses
IP privées, et qu'il y a eu un énorme gaspillage avant même
de commencer à utiliser le sous-réseau, cela
a posé un gros problème et nous avons commencé
à manquer d'adresses réseau dans le cadre de l'IPv4.
C'est ce qu'on appelle l'épuisement de l'adresse, et c'est une réalité.
En fait, en novembre 2019, le RIPE NCC,
le registre Internet régional pour l'Europe,
l'Asie de l'Ouest et l'ex-URSS, et la NASA ont déjà
épuisé l'ensemble
de leur réserve d'adresses IPv4.
Heureusement, l'IETF (Internet Engineering
Task Force) avait déjà commencé à se projeter
dans l'avenir et a développé
l'IPv6 en tant que norme dès 1995 avec une RFC qui
documentait sa vision de l'IPv6, qu'elle appelait IP Next
Generation ou IPNG (nouvelle génération d'IP).
Vous voyez maintenant que l'IPv6 est en fait une énorme amélioration par rapport à l'IPv4 en
termes de nombre d'adresses disponibles.
Au lieu d'utiliser une adresse de 32 bits comme dans
IPv4, IPv6 utilisera une adresse de 128 bits.
Vous disposerez ainsi d'un espace d'adressage beaucoup plus important.
En fait, il va vous donner une
possibilité de 340 milliards d'adresses IP.
Cela représente suffisamment d'adresses
IP pour chaque homme, femme et enfant de la planète.
Il s'agit de deux à la puissance 128.
En fait, il y a beaucoup, beaucoup d'adresses IP pour chaque
homme, femme et enfant de la planète parce qu'il
y a tellement d'adresses IP disponibles.
Vous vous demandez peut-être
si nous sommes passés de l'IPv4 à l'IPv6.
Qu'est-il advenu de la version 5 ?
Pourquoi sommes-nous passés directement à la version 6 ?
La version 5 a bien été créée, mais elle n'a jamais été pleinement adoptée en tant
que protocole ou norme officielle.
Il n'a donc jamais été produit.
Au lieu de cela, un grand nombre de ces concepts
développés dans le cadre de la version 5,
parce qu'il s'agissait d'un protocole expérimental,
ont été introduits dans l'IPv6 lorsqu'il est devenu
une norme officielle.
Parlons donc des avantages de l'IPv6.
L'un des principaux avantages
est que l'espace d'adressage est beaucoup
plus vaste grâce à ces adresses de 128 bits.
En outre, l'IPv6 a également
amélioré l'efficacité de nos réseaux en supprimant
le type de flux de données de diffusion de l'IPv4.
Aujourd'hui, IPv6 est également plus sûr car
il n'y a pas de fragmentation des paquets ou des datagrammes
dans la norme IPv6.
Il n'y a pas non plus d'unité de transmission
maximale pour la découverte au sein de chaque session, contrairement
à l'IPv4 qui contient un MTU d'une certaine taille pour chaque paquet.
Avec IPv4, si je vous envoie un paquet dont la taille
est supérieure à la taille maximale de l'unité de transmission,
il sera fragmenté et envoyé
sur le réseau.
Une fois arrivé à destination,
il est réassemblé et lu.
Il s'agit en fait d'un risque pour la sécurité.
Il nécessitait également un traitement supplémentaire
et pouvait en fait ralentir vos réseaux parce qu'il
devenait une manière très inefficace de faire les choses dans nos
réseaux modernes avec des vitesses
de connexion à l'internet plus élevées.
Avec l'IPv6, ils ont donc décidé de supprimer
complètement la fragmentation.
Outre tous ces nouveaux avantages, les créateurs
de l'IPv6 ont été très intelligents et ont
compris que pour être pleinement adopté et accepté, l'IPv6
devait être rétrocompatible avec l'IPv4 et permettre
à l'IPv6 et à l'IPv4 de coexister sur le même réseau.
Après tout, c'est déjà à la fin des années 1990 que l'IPv6
a été développé et publié et que de nombreux réseaux
informatiques ont été mis
en place dans le monde entier.
Il ne nous serait donc
pas possible de tout changer en un seul jour.
Pensez-y comme à la migration actuelle
des véhicules à essence vers les véhicules
électriques.
Cela se produit tout au long des
années 2020 et 2030.
Il serait impossible de dire que le 1er janvier
2025, plus personne ne pourra utiliser de véhicules
à essence.
Tous ces véhicules seront remplacés
par des véhicules électriques à partir de cette date.
Si un gouvernement essayait de
faire cela, il aurait probablement une révolution
sur les bras parce que beaucoup de gens possèdent déjà des voitures à essence et
ont dépensé beaucoup d'argent et d'investissements dans ces voitures
et dans l'infrastructure pour les supporter.
C'est pourquoi nous n'allons pas simplement remplacer toutes les
voitures à essence du jour au lendemain.
Au lieu de cela, il y aura une lente transition de l'énergie
gazeuse à l'énergie électrique d'ici 2030 ou peut-être 2040, car de plus en plus
de voitures récentes vendues dans le monde le seront sous forme
électrique et on cessera de vendre des véhicules
fonctionnant à l'énergie gazeuse.
C'est exactement la même chose avec l'IPv6.
L'IPv6 permet donc à l'IPv4 et à l'IPv6 de coexister sur les mêmes réseaux
et l'équipement qui fait fonctionner
ces réseaux est connu sous le nom de double
pile, ce qui signifie simplement qu'il
peut faire fonctionner simultanément
les protocoles IPv4 et les protocoles IPv6 sur les mêmes
dispositifs de réseau.
Avec les appareils à double pile, si un client prend en charge IPv6, le
commutateur du routeur préférera utiliser IPv6 et communiquera
selon cette méthode.
Maintenant, si un appareil n'est pas en mesure de prendre
en charge IPv6, il se retourne et dit,
d'accord, je vais vous parler en utilisant l'ancien protocole IPv4.
De cette façon, je peux encore vous soutenir.
Une autre méthode que nous utilisons est connue sous le nom de tunneling.
C'est ici que l'IPv6 sera tunnelé sur un dispositif IPv4.
Cela permet à vos anciens routeurs IPv4 de
continuer à acheminer le trafic IPv6.
L'IPv6 sera essentiellement tunnelisé
comme mécanisme d'encapsulation des paquets IPv6 dans
les en-têtes IPv4 et de transport de ces données IPv6 par le biais
des routeurs IPv4 et autres infrastructures
existantes.
Pour ce faire, il crée un tunnel point à point
entre la source et la destination,
puis encapsule ces informations.
Cela permet à des clients et à des serveurs IPv6 isolés de communiquer
sans avoir à mettre à niveau tous
les routeurs et commutateurs qui utilisent
encore IPv4 et qui peuvent exister entre eux.
Aujourd'hui, il se peut qu'un jour, l'IPv4 soit complètement supprimé.
Mais jusqu'à présent, cela ne s'est pas produit.
Et personnellement, je ne retiens pas mon souffle.
D'après certains articles
que j'ai lus, l'IPv4 devrait rester en vigueur
au moins jusqu'en 2040. En tant que technicien réseau,
vous devrez donc savoir travailler avec l'IPv4 et
l'IPv6 dans un avenir prévisible.
Un autre avantage de l'IPv6 est qu'il dispose d'un en-tête simplifié.
Ainsi, au lieu des 12 champs que nous avions dans IPv4,
nous n'en avons plus que cinq dans IPv6, ce qui en
fait un en-tête allégé beaucoup
plus efficace à envoyer sur nos réseaux.
Vous vous demandez peut-être
à quoi ressemble un en-tête IPv6 ?
Je vais vous le montrer, mais sachez que vous n'avez pas
besoin de l'apprendre par cœur pour l'examen.
Il s'agit plutôt de montrer les différents
champs qui existaient dans IPv4, qui est en
haut, par rapport à IPv6, qui est en bas.
Vous pouvez maintenant constater
à quel point IPv6 est plus simple qu'IPv4.
Très bien, revenons à certains points
que vous devez comprendre pour l'examen.
Par exemple, à quoi ressemble une adresse IPv6 ?
J'ai déjà dit qu'il avait une longueur de 128 bits, ce
qui signifie qu'il y aurait 128 uns ou zéros si nous l'écrivions
en binaire, et cela me semble
être une très mauvaise idée, donc nous n'allons
pas le faire.
Nous pourrions utiliser la notation décimale
pointée comme pour l'IPv4, mais
cela représenterait encore beaucoup d'octets à écrire,
car nous aurions besoin de 16 octets pour représenter l'ensemble des 128 bits.
Pour résoudre ce problème,
l'IETF a donc décidé d'utiliser
des chiffres hexadécimaux.
L'hexadécimal est en base 16, ce dont vous vous
souvenez peut-être de
vos cours d'algèbre au lycée.
En hexadécimal, chaque chiffre
hexadécimal représente en fait quatre bits.
Cela va nous permettre de représenter une adresse IPv6
en combinant quatre chiffres hexadécimaux pour former
ce que nous appelons un segment.
Un segment contient 16 bits.
Elle est représentée par ces quatre chiffres hexadécimaux.
Ensuite, nous ajouterons un deux-points
et nous continuerons à ajouter des
segments jusqu'à ce que nous atteignions 128 bits, ce qui
nécessitera huit segments, chacun d'entre
eux comportant quatre chiffres hexadécimaux.
Cela me donne un total de 32 chiffres hexadécimaux,
ce qui est encore assez long.
Avec 128 bits représentés dans une adresse IPv6, cela signifie que
nous n'aurons pas plus de 32 chiffres hexadécimaux à l'intérieur
de tous ces segments.
Pourquoi ai-je dit qu'il ne fallait pas dépasser 32 chiffres
pour le total de ces huit segments ?
Pourquoi ne serait-ce pas simplement 32 chiffres
hexadécimaux, puisque 32 chiffres multipliés par quatre
bits par chiffre donneraient 128 bits ?
En effet, l'IPv6 nous permet d'utiliser une
abréviation pour simplifier
nos très longues adresses IPv6.
Les règles de la sténographie sont très importantes
car elles peuvent faire l'objet de questions d'examen.
Ainsi, si vous avez quatre zéros pour un segment,
vous pouvez en fait mettre un zéro à la place et
supprimer les zéros initiaux.
Par exemple, imaginons que j'aie une adresse IPv6
très longue : 2018:0000:0000:0000:0000:0000:4815:54ae.
En utilisant la règle simple,
je peux remplacer tous les segments qui ont plusieurs
zéros par un seul zéro.
Cela me donnerait 2018:0:0:0:0:0:4815:54ae.
Très bien, cela a permis de réduire le nombre de chiffres
hexadécimaux de 32 à seulement 17, soit environ la moitié de la longueur.
Nous nous améliorons, mais je ne vais pas m'arrêter là.
Il existe une autre règle que
je peux utiliser dans le monde de l'abréviation IPv6.
Cette règle stipule que si plusieurs segments
contiennent tous des zéros et qu'aucun
autre chiffre hexadécimal n'y est représenté, je peux
les résumer en utilisant un double deux-points et en supprimant
tous ces zéros.
Cette règle est particulière
car on ne peut utiliser les deux points qu'une seule fois à l'intérieur
d'une adresse IPv6.
En utilisant ma règle des deux points,
je peux donc résumer 2018:0:0:0:0:0:4815:54ae en supprimant ces cinq séries
de zéros et en les remplaçant par un double
point, ce qui me donne 2018::4815::54ae.
Je suis donc passé de 32 chiffres hexadécimaux à
17 chiffres hexadécimaux et maintenant
je suis passé de 17 chiffres à 12 chiffres,
ce qui est beaucoup plus petit et beaucoup
plus facile à utiliser.
Vous pouvez voir à quel point ce raccourci est utile.
Comment reconnaître une adresse IPv6
d'une adresse IPv4 ?
La première façon consiste à examiner ce qu'est l'IPv4.
L'IPv4 utilisera toujours la notation décimale pointée
avec quatre octets.
L'IPv6, quant à lui, utilise
des deux-points entre les chiffres
et s'écrit en hexadécimal.
L'une des questions posées le
jour du test consiste à identifier
une adresse IPv6 lorsque vous en voyez une.
Par exemple, on peut vous poser la question suivante
: laquelle des adresses suivantes est une adresse IPv6 ?
C'est une bonne question à vous poser.
Vous allez avoir des options comme 192. 168. 1. 1, dont nous savons
qu'il ne s'agit pas d'une adresse IPv4.
Vous obtiendrez 12:34:56:78:90:AB
ou 1234::5678::90AB.
Attendez une minute, les deux dernières choses que je viens de dire sont
vraiment similaires, n'est-ce pas ?
Oui, mais une seule d'entre elles est une adresse IPv6 valide.
Savez-vous de laquelle il s'agit ?
Parce que la plupart des étudiants ne s'y retrouvent pas.
La deuxième option n'est pas une adresse IPv6.
Il s'agit plutôt d'une adresse MAC.
N'oubliez pas que les adresses MAC,
qui sont des adresses physiques de niveau
2, sont toujours composées de 12 chiffres hexadécimaux
séparés par des deux points.
En général, ils sont écrits
sous la forme de six groupes de deux chiffres chacun
et chacun d'entre eux est séparé par un seul deux-points.
Une adresse IPv6, en revanche, doit toujours être écrite en
segments de quatre chiffres chacun, et elle
doit toujours comporter 16 segments, à moins qu'il
n'y ait un double deux-points.
Dans cet exemple, nous avons un double deux-points entre
le premier et le deuxième segment de notre troisième option.
Il s'agit donc d'une bonne abréviation que nous pouvons utiliser
et nous identifions qu'il s'agit d'une adresse IPv6 parce
que nous avons supprimé tous les zéros
entre le premier et le deuxième segment à l'intérieur de cette adresse.
Ainsi, si vous comptez quelque
chose qui ressemble à une adresse IPv6
et qu'il y a 12, exactement 12 chiffres hexadécimaux séparés par des points
simples, et que vous ne voyez pas
de double point nulle part, il s'agit
d'une adresse MAC, et non d'une adresse IPv6.
Sinon, si elle ressemble à ceci et contient
des chiffres hexadécimaux, il
s'agira d'une adresse IPv6 le jour de l'examen.
Pour l'examen, il suffit de savoir à quoi
ressemble une adresse IPv6 et de pouvoir
en résumer une en supprimant les zéros
et en les consolidant à l'aide de l'astuce
des deux points.
Si vous pouvez faire ces deux choses,
vous serez en mesure d'utiliser l'adressage IPv6 le jour de l'examen.
En ce qui concerne l'adressage IPv6, il
existe trois types d'adresses différents : les
adresses unicast, les adresses multicast
et les adresses anycast.
L'un des aspects intéressants d'IPv6, qui
le distingue réellement d'IPv4, est la possibilité
d'attribuer plusieurs adresses IPv6 à une seule
interface d'un client.
Ces attributions peuvent être
un mélange de ces trois types différents
: unicast, multicast et anycast.
Ainsi, même si vous n'avez qu'une seule carte d'interface
réseau sur votre station de travail
ou votre ordinateur portable, vous pouvez avoir plusieurs
adresses IPv6 et différents types d'adresses IPv6
attribués à cette seule carte.
Les adresses de monodiffusion seront utilisées
pour identifier une seule interface.
Celles-ci sont divisées en adresses unicast acheminées globalement
et en adresses link-local.
Une adresse de monodiffusion acheminée
à l'échelle mondiale est similaire à ce que nous avons comme adresse publique
avec IPv4 en utilisant des adresses de monodiffusion de classe A, B et C.
Dans l'IPv6, une adresse unicast à acheminement
global commencera
toujours par un premier segment contenant 2000-3999.
Si le premier segment est 2000-3999, cela signifie qu'il s'agit d'une
adresse de monodiffusion à acheminement global.
Par exemple, l'adresse IPv6
2584:0db8:8583:1234:5678:882e:0370:7334 serait acheminée
globalement en tant qu'adresse unicast
parce que son premier segment contient
2584, qui se situe entre 2000 et 3999.
En revanche, une adresse locale de liaison,
également appelée adresse d'utilisation locale,
est utilisée de la même manière qu'une adresse IP privée dans IPv4.
Une adresse locale en IPv6
ne peut être utilisée que sur
un réseau local et commence toujours par FE80 comme premier segment
d'une adresse IPv6.
Désormais, lorsqu'un système IPv6 démarre, il va créer
une adresse locale pour chaque interface IPv6
de ce système, même si une adresse routable au niveau mondial
a déjà été configurée manuellement
ou obtenue par le biais d'un
protocole de configuration tel que DHCP.
Pour ce faire, il va utiliser ce que l'on appelle
le SLAAC, l'auto-configuration d'adresse sans état ou S-L-A-A-C.
Avec l'auto-configuration sans état,
l'hôte n'a pas besoin d'obtenir des adresses
ou d'autres informations de configuration
auprès d'un serveur centralisé comme DHCP.
Au lieu de cela, il peut en fait s'attribuer indépendamment
une adresse locale de liaison,
tester l'unicité de cette adresse locale de liaison,
s'attribuer l'adresse locale de liaison,
contacter le routeur et indiquer au nœud comment procéder
à l'auto-configuration.
Il peut même configurer l'adresse de monodiffusion globale qu'il
souhaite utiliser.
Nous reviendrons sur ce concept dans quelques
minutes, lorsque nous commencerons
à parler de l'EUI-64 et du protocole de découverte des voisins,
car ces deux processus sont utilisés
avec le protocole d'autoconfiguration
d'adresses sans état, connu sous le nom de SLAAC.
Ensuite, nous avons les adresses de multidiffusion.
Les adresses de multidiffusion sont utilisées
pour identifier un groupe d'interfaces
afin qu'un paquet puisse être envoyé à une adresse de multidiffusion
et distribué à toutes les interfaces du groupe.
Dans l'IPv6, une adresse de multidiffusion contiendra toujours FF comme
les deux premiers chiffres du premier segment.
Si vous voyez FF au début d'une adresse IPv6, rappelez-vous
qu'il s'agit d'une adresse multicast.
Le dernier type d'adresse dont nous
disposons est connu sous le nom d'adresse anycast.
Les adresses Anycast sont utilisées pour identifier un ensemble d'interfaces afin
qu'un paquet puisse être envoyé à n'importe quel membre de cet ensemble.
Les adresses Anycast sont en fait attribuées à
partir de l'espace d'adressage unicast.
Il n'y a donc aucun moyen de
déterminer si une adresse IPv6 est unicast ou anycast
simplement en regardant l'adresse IPv6.
Si l'on considère le multicast ou le link-local, on dispose d'un
moyen très simple de le faire, mais on ne dispose
pas d'un moyen simple de déterminer si
l'on est en présence d'unicast ou d'anycast.
Très bien, revenons en
arrière et parlons un peu plus de SLAAC,
le processus d'auto-configuration d'adresses sans état.
Comme je l'ai dit, l'IPv6 dispose d'un processus
d'auto-configuration connu sous le nom de SLAAC, que nous utilisons
pour découvrir le réseau actuel sur lequel
se trouve l'interface, puis pour
lui permettre de sélectionner son propre identifiant d'hôte
sur la base de son adresse MAC à l'aide d'un processus connu sous le nom d'EUI-64.
Ce processus EUI-64 (Extended Unique Identifier) permettra à un
hôte de s'attribuer un identifiant
d'interface IPv6 unique de 64 bits appelé EUI-64.
Cette adresse au format EUI-64 est obtenue en
utilisant l'adresse MAC de 48 bits de l'interface.
L'adresse MAC est d'abord séparée en deux parties de 24 bits.
La première moitié de l'adresse MAC contient l'OUI (Organizational
Unique Identifier).
La seconde moitié contiendra la
carte d'interface réseau spécifique.
Entre les deux, nous allons
insérer une valeur hexadécimale de 16 bits, FFFE.
Ainsi, je peux prendre 24 bits, 16 bits et 24 bits et
les assembler pour obtenir une adresse EUI de 64 bits.
Cela vous donne les 64 bits dont vous aurez besoin
pour identifier votre interface sur ce réseau.
Ensuite, l'interface utilisera la découverte
automatique pour déterminer
le réseau sur lequel elle se trouve et ajoutera la partie réseau
de l'adresse IPv6, qui sera les 64 premiers bits de nos adresses.
Nous allons maintenant placer les 64 premiers
bits représentant le réseau devant les 64 bits de l'adresse
EUI-64 que nous avons créée à partir de notre adresse MAC afin de créer une adresse
IPv6 unicast routable à l'échelle mondiale que nous pouvons maintenant utiliser.
Vous pouvez donc voir comment tout cela fonctionne ensemble
en utilisant cette adresse MAC
pour créer cette adresse routable au niveau mondial.
Aujourd'hui, le DHCP peut également être utilisé dans le cadre de l'IPv6 si
vous préférez l'utiliser.
Si c'est le cas, vous devrez utiliser le protocole DHCPv6.
Cela vous permettrait de faire en
sorte que DHCP attribue automatiquement des éléments à partir d'un serveur DHCPv6.
Mais comme le processus d'auto-configuration avec EUI-64 est déjà intégré
par défaut dans le protocole IPv6, il n'est pas vraiment
nécessaire d'utiliser DHCPv6.
Mais si vous voulez utiliser DHCPv6, vous pouvez le faire, et cela
vous permettra d'assigner
les adresses que chaque interface recevra au lieu
de les laisser utiliser
le protocole d'auto-configuration de SLAAC.
Comme je l'ai dit, l'IPv6 choisit par défaut sa propre adresse
sur la base de son adresse MAC, puis il utilise
le protocole de découverte des voisins (NDP)
pour connaître les autres adresses
de la couche 2 du réseau sur la base de leur adresse MAC,
puis il choisit son propre identifiant
d'hôte.
Pour l'examen, vous n'avez pas besoin de connaître NDP en profondeur,
mais vous devez comprendre que NDP, ce protocole de
découverte du voisin, est utilisé dans IPv6 et qu'il reprend une grande
partie des fonctions de l'annonce du
routeur et de la découverte du voisin et qu'il les
gère pour vous.