Difference between revisions of "MOOC:Compagnon Act03-f"

From Livre IPv6

(Utilisation de GNS3)
(Pourquoi IPv6 ?)
(45 intermediate revisions by 5 users not shown)
Line 1: Line 1:
__NOTOC__
+
__NOTOC__  
=  Activité 03  : Prise en main de la plateforme des activités pratiques =
+
Chaque séquence comporte une activité pratique qui vous permettra une mise en situation concrète sur une véritable maquette réseau représentative et complète.
+
L’objectif de ces activités est double :
+
* concrétiser les connaissances abordées durant la séquence par une mise en situation sur une maquette réseau réaliste ;
+
* vous donner des compétences opérationnelles dans le déploiement d’IPv6, ainsi que pour la résolution des problèmes que l’on peut rencontrer dans les premiers stades du déploiement.
+
  
== Pourquoi utiliser GNS3 ==
+
= Evolution de l'Internet =
Certaines activités pratiques consisteront à la configuration d’un réseau IPv6 dans un outil émulant un réseau de manière très réaliste. La maquette de votre réseau est bâtie sur l'outil GNS3 qui vous permet de manipuler un réseau et ses équipements, de configurer les machines et de capturer le trafic réseau.
+
<center>
+
[[image:MoocSession5 gns3 act16 20190604.png|thumb|center|600px|Figure 1: Démarrage de GNS3]]
+
</center>
+
Chaque activité pratique propose de configurer différentes fonctions d’IPv6. A travers l’outil GNS3 vous mettrez en oeuvre, avec les privilèges d'administration, ces fonctions sur des équipements virtualisés mais fonctionnant de la même manière que des équipements réels.
+
Ces équipements communiquent à travers des liens exactement de la même façon que s’ils étaient reliés par des liens réels. Les captures réseau que vous observerez seront donc équivalentes à celles que vous pourriez faire sur un réseau réel.
+
  
== Contexte d'exécution des Travaux Pratiques ==
+
== IPv4 à l'origine de l'Internet ==
Afin d'assurer une homogéneité des contextes d'exécution, GNS3 et ses maquettes réseaux IPv6 sont empaquetés sous forme d'une image de machine virtuelle que vous pouvez exécuter, sur votre poste personnel, à travers l'outil commun de virtualisationn VirtualBox (''ou éventuellement KVM ou VMWare'').{{HorsTexte|Pourquoi les scnéarii GNS3 "Objectif IPv6" sont ils disponibles uniquement sous forme globale d'une VM ?|Les scnéarii GNS3 des TP du MOOC "Objectif IPv6" sont disponibles uniquement sous la forme d'une VM. Ils ne peuvent, pour le moment être importés nativement sous forme de projet portable dans une éventuelle installation de GNS3 sur votre poste. Les composants nécessaires (images QEMU, images des conteneurs, ''snapshots'', le paramétrage précis des conditions initiales de démarrage chaque TP...) et les dépendances aux contextes d'exécution de GNS3, ne nous permettent pas de garantir une exécution satisfaisante sur une éventuelle installation de GNS3 déjà présente sur votre poste. L'empaquetage dans une image de VM Virtualbox (exécutable éventuellement également sur les hyperviseurs KVM ou VMWare) nous offre de meilleures garanties d'exécution sur un panel plus large de postes ou systèmes individuels. }}
+
  
'''Attention : ''' ''La configuration minimale requise de votre poste de travail pour pouvoir confortablement travailler sur les activités pratiques est :''
+
Au début des années 1980, alors que s'opérait l'interconnexion de différents réseaux informatiques pour créer l'Internet que nous connaissons aujourd'hui, IP s'est imposé comme le protocole standard de l'Internet. L'organisme de standardisation IETF spécifie la version 4 du protocole IP (IPv4) dans le document RFC 791, daté de 1981. En 1983, le réseau étasunien ARPANET choisit la pile TCP/IPv4 comme le standard de communication pour les équipements et les réseaux souhaitant se connecter. Ce choix s'est ensuite imposé sur l'ensemble des réseaux et des systèmes de ce qui allait devenir ensuite l'Internet.
* ''Processeur x86, 64bits, double cœurs, disposant des extensions matérielles à la virtualisation (*) ;''
+
* ''RAM 2Go ;''
+
* ''10 Go d'espace libre sur votre disque dur ;''
+
* ''Système d'exploitation 64 bits, (la VM étant une machine 64 bits, le système d'exploitation et le logiciel de virtualisation associé ne peuvent être 32 bits) ;''
+
* ''Logiciel de virtualisation : Si votre poste de travail ne comporte pas d'outil de virtualisation, nous vous conseillons d'installer l'outil VirtualBox . ''
+
''Afin de vérifier si la configuration de votre poste est suffisante, il est recommandé de tester le bon fonctionnement de la machine virtuelle et de l’outil d’émulation réseau une première fois avant le début des activités pratiques.''
+
{{HorsTexte|(*) Extensions matérielles à la virtualisation|Les extensions matérielles à la virtualisation sont intégrées par les constructeurs (Intel-VT  et AMD-V) sur la quasi totalité de leur gamme de processeurs. Elles améliorent significativement les performances des machines virtuelles exécutées sur un sytème. Elles se traduisent par des extensions au jeu d'instuctions du porcesseur (VMX chez Intel, SVM chez AMD). Elles sont aujourd'hui banalisées sur la quasi totalité des postes de travail, mais peuvent nécessiter une validation de leur activation dans le configuration matérielle (BIOS) de la machine. }}
+
  
== Installation de la plateforme ==
+
Le protocole IPv4 a été un élément décisif dans le passage à l'échelle de l'Internet. Ses spécifications généralisent les propriétés importantes de connectivité globale et de contrôle de bout-en-bout. Elles définissent pour les adresses IP une longueur fixe de 32 bits. IPv4 permet ainsi de définir un nombre important d'adresses (2<sup>32</sup> soit plus de 4,3 milliards), donc autant d'identifiants attribués à chaque équipement connecté. Au moment où ont été définies ces spécifications, le réseau ARPANET comptait quelques centaines d'équipements. En 1987, ce nombre dépassa les 10 000 puis 160 000 à la fin de l'année 1989 <ref>Internet History of 80s, https://www.computerhistory.org/internethistory/1980s/</ref>. La capacité d'adressage d'IPv4 semblait alors suffisante pour pouvoir répondre au besoin de nouvelles connexions, même si celui-ci augmentait rapidement.
=== Etape 1 de l'installation ===
+
  
Si votre poste de travail ne comporte pas d'outil de virtualisation, nous vous conseillons d'installer l'outil VirtualBox. Le lien ci-dessous vous permet de récupérer ce logiciel avec la version adaptée à votre système.
+
Au début des années 1990, le réseau précurseur ARPANET a laissé sa place à l'interconnexion des réseaux que nous appelons aujourd'hui l'Internet. Au même moment est apparue une nouvelle application utilisant les capacités de communication de l'Internet : le World-Wide Web. Très simple d'utilisation, permettant de consulter des contenus de plus en plus riches, le Web a vite créé un nouveau besoin de connexion à l'Internet, notamment chez les particuliers qui s'équipaient alors massivement avec des ordinateurs personnels. L'internet devint alors mondial, se structurant par l'interconnexion des opérateurs publics et privés des différents pays. En 1992, le nombre d'équipements connectés à l'Internet dépasse le million.
  
<!-- [https://www.virtualbox.org/wiki/Downloads Télécharger VirtualBox] -->
+
== Apparition des premières limitations et mesures d'urgences ==
[https://www.virtualbox.org/wiki/Downloads https://www.virtualbox.org/wiki/Downloads]
+
  
Lancez ensuite l'installation en mode administrateur, et accepter les réglages par défaut. '''Ne pas omettre d'installer le pack d'extensions invités''', en conformité avec la version installée. Un redémarrage de votre machine peut s'avérer nécessaire.
+
L'Internet n'avait pas été prévu pour supporter une telle croissance. Chaque nouveau foyer, entreprise ou établissement se raccordant à Internet crée de nouvelles demandes en adresses IP. De plus la topologie du réseau se complexifie avec la multiplication des sites et des opérateurs. Des projections ont alors montré que les politiques de gestion de l'Internet alors en vigueur risquaient d'entrainer une pénurie très rapide.
  
''' Nota : ''' ''Au préalable, assurez vous que les extensions matérielles à la virtualisation du processeur de votre poste sont disponibles pour votre système d'exploitation (''OS''). Par précaution, certains constructeurs verrouillent  par défaut les extensions matérielles au niveau du "firmware" (''BIOS'') de la configuration initiale de leur machine, nécessitant alors une validation explicite de ces extensions. En l'absence de ces extensions, l'outil de virtualisation Virtualbox ne pourra exécuter la machine virtuelle et affichera un message d'erreur (qui dans certains contextes peut être peu explicite) à l'exemple de l'image ci dessous.
+
Les organismes régulateurs de l’Internet ont donc modifié les politiques d'attribution des adresses afin d’éviter tout gaspillage de cette ressource limitée et ainsi maintenir le développement des réseaux IPv4. Le premier changement a concerné les opérateurs. Ceci se font vu imposé des nouvelles règles dans l'attribution des blocs d'adresses <ref>Wikipedia, [https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing Classless Inter-Domain Routing].</ref>
<center>
+
[[image:virtualbox-extensions-de-virtualisation-indisponibles-20200217.png|thumb|center|500px|Figure 2: Virtualbox "extensions de virtualisation indisponibles]]
+
</center>
+
''''' $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
+
TO DO :
+
* Ajouter une procédure générale d'activation des extensions au niveau du BIOS
+
* Ajouter des illustrations cd capture d'affichage d'ecran de config BIOS pour la virtualisation !!
+
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ '''''
+
  
=== Etape 2 de l'installation ===
+
Une adresse codée sur 32 bits permet théoriquement d'adresser 2^32 machines, soit à peu près 4 milliards. Ce nombre pourrait paraître au premier abord très élevé, mais les ordinateurs ne sont pas numérotés séquentiellement. Ils sont regroupés par réseaux. À chaque réseau est affecté un numéro qui est codé sur une partie des 32 bits de l'adresse des machines. On s'aperçoit alors que le nombre de réseaux disponibles n'est pas si important que cela conduit à une pénurie. La tendance actuelle consiste à freiner au maximum l'allocation des adresses réseaux. Ce n'est pas un problème pour les sites déjà équipés disposant déjà de larges plages d'adresses. Cette contrainte est déjà forte pour les nouveaux sites dans les pays dits "développés" pour lesquels un grand nombre d'adresses a été réservé mais se révèle être un problème majeur pour les pays émergeants où parfois moins de 10 réseaux de 250 machines ont été attribués pour l'ensemble du pays.
  
L'étape suivante consiste à télécharger l'image de la machine virtuelle contenant la plateforme pour les activités pratiques. Cette image actualisée est disponible en suivant le lien de téléchargement indiqué dans la rubrique ''« > Installer GNS3 > Comment procéder ? »'' de la séquence de "Bienvenue" du MOOC "Objectif IPv6".
+
Les équipements d'interconnexion des réseaux, orientant les paquets vers leur destination finale, sont des routeurs. Pour prendre leurs décisions, ils consultent une table dite de routage. Le nombre de réseaux dans l'Internet croissant de manière vertigineuse, ces tables de routage deviennent de plus en plus volumineuses et difficiles à maintenir. Pour pallier ce problème, une solution d'adressage hiérarchique permettent de réunir un ensemble de numéros de réseaux contigus en un seul préfixe a été conçue (CIDR : Classeless Inter Domain Routing). En plus de la réduction des tables de routage, CIDR permet aussi de réduire la sur-allocation d'adresses aux sites terminaux, réduisant quelque peu la pénurie d'adresses. Avec CIDR le propriétaire de l'adresse est modifié. Dans les plans d'adressage initiaux, le site était propriétaire de son préfixe, avec CIDR le préfixe devient la propriété de son opérateur, rendant la renumérotation du réseau nécessaire, si le site change d'opérateur. Cet adressage hiérarchique a montré son efficacité opérationnelle et les règles d'adressage actuelles pour IPv6 généralisent ce principe.
  
Le fichier image de la machine virtuelle a une taille d'environ 5Go. Une fois le téléchargement terminé, il vous suffit d'importer la machine virtuelle dans VirtualBox (Menu « File » , puis « Import Appliance »), et sélectionner l'image de la machine virtuelle que vous venez de télécharger :
+
== Nouveaux besoins d’adressage ==
- Si besoin renommer la machine ainsi "MoocIPv6-S5";
+
- vérifier que le système d'exploitation invité est bien "Ubuntu-64bit";
+
- les autres réglages par défaut devraient convenir.
+
  
''' Nota : ''' ''Selaon les capacités de votre poste, la phase d'import de la machine peut prendre quelques minutes.''
+
L’Internet a créé des nouveaux usages. Il a fait naitre aussi de nouveaux besoins de communication. De nouveaux objets communicants apparaissent aussi bien dans le domaine domestique que dans l’industrie, dans les transports, dans le milieu médical...  Les 4,3 milliards d’adresses (2<sup>32</sup>) du protocole IPv4 s’avèrent aujourd’hui insuffisantes pour les nouveaux usages d'Internet. Tandis que les supports de transmission et les équipements ont évolué, le protocole IPv4 a gardé des fonctionnalités historiques devenues obsolètes aujourd'hui. En plus d'une capacité d'adressage accrue, le protocole IPv6 est un retour aux principes qui ont fait le succès d'IP, garantissant efficacité, résilience et perspectives d’évolution.
  
Une fois l’importation terminée, vous pouvez lancer la machine virtuelle grâce au bouton « Start ».
+
Nous avons décrit une analogie de l'acheminement des données dans l'Internet avec celui du courrier dans le système postal. Un élément fondamental dans ce système est que chaque maison, pour recevoir du courrier, doit posséder une boîte aux lettres. Cette boîte est identifiée de manière unique par une adresse postale qui est renseignée sur chaque enveloppe devant être distribuée dans cette même boîte. De la même manière, une adresse postale sert à identifier de manière unique l’expéditeur de la lettre. Par analogie, on peut rapprocher les notions dans le système postal de boîte aux lettres et d’adresse postale à celles, dans l’Internet, d’interface de communication et d’adresse IP. Les paquets IP sont émis et reçus à travers l’interface de communication. Ils sont acheminés à travers l’Internet vers la destination désignée par l’adresse IP contenue dans l’en-tête de chaque paquet.
  
Lors du premier démarrage la définition de l'écran est fixée à 800x600, cet inconvénient disparaît après un premier redémarrage de la VM, et ensuite la taille de l'écran s'adaptera à votre machine automatiquement.
+
{{Note| BS|Reprendre l'analogie des numéros de téléphone plutôt que du système postal pour explique la pénurie}}
  
= Utilisation de GNS3 =
+
<!--A la fin de la décennie 2010, les opérateurs de l’Internet ont commencé à ressentir les symptômes de la pénurie des adresses IPv4.-->A la fin de la décennie 2010, les opérateurs de l’Internet ont commencé à ressentir sévèrement les effets de la pénurie des adresses IPv4 amorcée dès le milieux des années 1990. La prise de conscience de ce phénomène s’est amplifiée alors que les effets ont commencé à toucher le grand public, clients de ces opérateurs.
  
GNS3 est un logiciel permettant d'émuler le fonctionnement d'un réseau sur votre poste. La plateforme "Réseau IPv6" utilisée pour les activités pratiques est pré-installée dans l'outil GNS3. Elle est composée de 5 équipements actifs reliés par 4 réseaux.
+
{{Note| BS|Trouver des courbes permettant de rendre compte de l'augmentation de la pénétration d'Internet, ou du nombre d'équipements connectés}}
  
L'interface de GNS3 se présente de la manière indiquée par la figure 3 :
+
Reprenons l’analogie avec le système postal pour mieux comprendre ce problème de pénurie d’adresses IPv4. Les opérateurs de l’Internet font face à un besoin croissant de raccordements à l’Internet, notamment aujourd'hui avec la multiplication des centres de données et le développement de nouveaux usages à travers les objets connectés. Un scénario similaire serait celui d’un système postal devant s’adapter à une urbanisation effrénée. Chaque nouvelle habitation installe sa boîte aux lettres à laquelle il faut assigner une adresse postale. La contrainte, dans le cas de l’Internet, est que le stock d’adresses disponibles est limité. <!--Cela reviendrait à limiter la possibilité pour le système postal de numéroter les boîtes aux lettres d’une même rue (de 0 à 99 par exemple).-->On est dans la situation où la numérotation des boîtes aux lettres d'une même rue serait codée uniquement sur deux chiffres (de 0 à 99 par). Alors que le nombre de ces boîtes augmentent, le système ne pourra plus assigner de nouvelles adresses lorsque la limite sera atteinte. De la même façon, confrontés à la limitation du nombre d’adresses IPv4 disponibles, les opérateurs de l’Internet ont des difficultés pour attribuer des adresses IP à chaque nouveau raccordement.
<center>
+
[[image:MoocS5_gns3_desktop_20190605.png |666px|thumb|center|Figure 3 :  Interface GNS3.]]
+
</center>
+
Le schéma de la '''Topologie''' (encadré en rouge) montre les équipements et les liaisons qui les relient. Les réseaux IPv6 nommés "Net0" à Net3", sont interconnectés par des équipements actifs (routeurs) '''R1''', '''R2'''; les machines hôtes '''PC-1''', '''PC-2''' et '''SRV-3''' sont directement connectées sur les routeurs.  
+
  
Sur la figure 3, à droite de l'espace de travail, la fenêtre '''Liste des équipements''' (ou ''Topology Summary'') liste les équipements et leur état de fonctionnement. L'indicateur vert signale un équipement en cours de fonctionnement, l'indicateur rouge indique un équipement arrêté.
+
{{Note| BS|Reprendre l'analogie des numéros de téléphone plutôt que du système postal pour explique la pénurie}}
  
Pour démarrer les équipements, il convient d'actionner le bouton de démarrage (triangle vert, référencé 1 sur la figure 3). Les indicateurs dans la liste des équipements passent alors normalement tous au vert.
+
== Contourner la pénurie ==
  
Le bouton 2 ouvre une console pour chacun des équipements. C'est à travers cette console que vous serez amenés à interagir avec l'équipement. L'ensemble des consoles est nécessaire pour la réalisation des activités pratiques. De plus, elles vont vous servir à voir la progression lors de l'étape de démarrage des équipements.
+
Bien sûr, des solutions ont été trouvées pour contourner un problème qui aurait autrement signifié l’arrêt de l’expansion de l’Internet. En réalité, l’Internet a déjà connu un tel risque de pénurie au début des années 1990, lors de l’émergence de l’Internet commercial. Le nombre d’adresses IPv4 disponibles (4 milliards) semblait à ce moment suffisant.
 +
{{Note|Pascal| l’effondrement de l’Internet c'est quoi concretement si il n'y a plus d'adresse ? ce n'est pas la fin de la croissance plutôt; A développer}}
  
'''Note''' : l'étape de démarrage des équipements peut prendre entre 1 et 5 minutes selon la configuration matérielle de votre poste de travail. Nous vous conseillons donc d'afficher les consoles après avoir lancé cette procédure de démarrage et d'attendre (patiemment) que celle-ci se termine. Chaque équipement sera opérationnel une fois qu'il présentera une invite de <tt>login</tt> comme représentée par la figure 4.
+
Le second changement a porté sur l'attribution des adresses aux systèmes terminaux. L'idée a été le partage des adresses. Un système ne possède plus une adresse mais doit utiliser une adresse partagée avec d'autres systèmes. Pour mettre ce nouveau mode d'attribution des adresses IP, des dispositifs techniques ont été introduits et des plages d'adresses ont été réservées pour leur mise en oeuvre. L'adresse IP à partager est attribuée à ce dispositif à charge à lui de la partager avec les systèmes d'extrémités qui lui sont connectés.  La connectivité entre cet équipement et les systèmes d'extrémités est réalisé par un réseau privé ayant une plage d'adresses spécifiques (RFC 1918).  
<center>
+
{{Note|V| pourquoi ne pas mettre directement routeur, qui a déjà été introduit. Ce n'est pas clair !}}
[[File:MoocSession5_gns3_act36_cli_20190605.png|666px|thumb|center|Figure 4: Consoles des équipements.]]
+
Afin d'assurer l'interconnexion des réseaux privés avec l'Internet, ces  équipements effectue une traduction d’adresses.  C'est à dire l'adresse privée est remplacée par l'adresse publique à partager. Techniquement, ces équipements sont appelés des NAT (Network Address Translation) et se trouve dans les box Internet que vous avez chez vous.
</center>
+
{{Note|V| mais NAT est un logiciel  !}}
Le bouton référencé 3 sur la figure 3 indique, sur le schéma de la topologie, les noms des interfaces réseau des différents équipements. Ces indications vous sont utiles lorsque vous configurez les équipements afin de ne pas vous tromper d'interface ou d'équipement!
+
{{Note|Pascal| mettre un schéma du NAT}}
 +
Ces équipements sont intrusifs et modifient en profondeur le mécanisme d’acheminement des paquets sur l’Internet, car ils exploitent des informations au delà de l’en-tête IP. C’est un peu comme si, dans le système postal, le facteur était obligé d’ouvrir l’enveloppe du courrier et de lire le contenu de la lettre pour en connaître le destinataire.  
 +
Et comme le facteur ne connait pas toutes les langues, les contenus dont il n'est pas capable de déchiffrer, il jète la lettre. Vous en conviendrez que le service postal serait moyen si on peut dire !
 +
Dans le cas de l'Internet, cela signifie qu'un nouveau protocole lorsqu'il est utilisé peut ne pas passer les NAT. Ces paquet sont jetés par le NAT dans la mesure qu'ils ne le comprennent pas. Ce comportement est très fâcheux car il bloque l'innovation sur l'Internet. Ce phénomène connu porte le barbarisme "d'ossification". C'est la conséquence du nom respect du principe de bout en bout. Ce principe dicte une règle de distribution des fonctions qui est central de l'architecture du réseau Internet. Il énonce que « plutôt que d’installer l’intelligence au cœur du réseau, il faut la situer aux extrémités : les nœuds au sein du réseau n’ont à exécuter que les fonctions très simples qui sont nécessaires pour les applications les plus diverses, alors que les fonctions qui sont requises par certaines applications spécifiques seulement doivent être exécutées en bordure de réseau. Ainsi, la complexité et l’intelligence du réseau sont repoussées vers ses lisières. Des réseaux simples pour des applications intelligentes. » <ref>Lawrence Lessig, L'Avenir des idées, 2005, Presses universitaires de Lyon, 1re partie, paragraphe 75 dans l'édition numérique des Presses. </ref> La première conclusion que nous pouvons tirer de la mise en place de cette solution à base de traduction d'adresses est que le principe fondateur de l'Internet est non respecté ayant pour conséquence d'empêcher son évolution.
  
Pour aller plus loin sur les possibilités de cet outil, vous pouvez consulter ce [https://www.csd.uoc.gr/~hy435/material/GNS3-0.5-tutorial.pdf Tutoriel sur GNS3].
+
L'autre effet de ce nouveau mode d'attribution des adresses est la complexité pour pouvoir joindre un système d'extrémité qui n'a pas d'adresse propre (on parle d'adresse publique).
 +
Traditionnellement l'interaction des applications communicantes se fait à l'initiative d'un client. Ce dernier contacte un serveur.  Un client peut s'accommoder de ne pas avoir une adresse publique. Il en est tout différemment  pour un serveur. Pour être contacté par le client, il doit avoir une adresse qui l'identifie sans ambiguité. Il lui faut donc une adresse publique qui lui est propre.  Le nouveau dispositif de partage d'adresse n'est pas utilisable pour un serveur. Il s'ensuit que les systèmes d'extrémités ne sont plus équivalents vis à vis de l'adressage.
 +
La conséquence c'est selon la connectivité à Internet, le système d'extrémité est limité dans son rôle. Soit il ne peut être que client ou soit  il  peut avoir un rôle de client ou serveur.
 +
Avec le développement de la domotique, de l'internet des objets, des applications de téléphonie ou de visio conférences, il est nécessaire d'avoir des adresses propres. L'utilisation de ces services dans le contexte des dispositif de partage de l'adresse public, rend énormément compliqué leur accès et leur utilisation depuis un téléphone portable (Ceux qui ont installé une caméra IP dans leur domicile peuvent en témoigner). La seconde conclusion de l'introduction d'une connectivité à base d'un dispositif de traduction à l'impossibilité d'héberger simplement des serveurs  avec des adresses privées.
  
= Déroulement d'une activité pratique =
+
{{Note|Pascal| tout semble marcher en IPv4 mais ce n'est pas suffisant trop de limitation, à développer}}
  
== Démarrage d'une activité ==
+
== La bonne solution à  la pénurie ==
  
Chaque activité pratique est divisée en plusieurs étapes. L'activité commence par une description de la configuration originale et des objectifs de l'activité. Chaque étape, ensuite, déroule la mise en oeuvre de différentes configurations pour répondre à ces objectifs.
+
{{Note|Jacques| "A défaut d’autres solutions," ??? S. Bortzmeyer, indique (mais je n'ai pas retrouvé la référence), que l'inertie à la migration a aussi pour origine la rentabilité et la croissance immédiate. Plutôt que d'investir le premier dans une techno (IPv6) avec d'hypothétiques gains concurrentiels futurs, les opérateurs ont misé sur les gains immédiats et faciles en généralisant le NAT, quitte à ce que le coût en devienne prohibitif (cf la complexité du CGN). *A simplifier dans un contexte d'activité introductive.* s/A défaut d’autres solutions,/Par facilité, mais aussi réticence à l'appropriation du nouveau protocole, ces mécanismes de translation se sont généralisées dans les infrastructures des opérateurs pour atteindre aujourd'hui un niveau de complexité d'acheminement pénalisant (cf CGN Carrier Grade NAT) pour la croissance d'Internet/g}}
  
Pour chaque activité, vous disposez d'une fonction '''Snapshot''' qui permet de restaurer la topologie, et les configurations des équipements actifs dans un état précis.
+
A défaut d’autres solutions, ces dispositifs se sont généralisés dans l’Internet et sont aujourd’hui nécessaires pour permettre l’acheminement des paquets IPv4.  
<center>
+
[[File:MoocS5_manage_snapshots_20190605.png|666px|thumb|center|Figure 3: Fonction '''Edit'''+'''Manage snapshots''']]
+
</center>
+
Avec le choix du snapshot '''Activité-16''', vous démarrez le simulateur de réseau GNS3 avec la plateforme dans la configuration initiale de cette activité pratique.
+
  
Les clichés ou "snapshots" des étapes suivantes vont vous servir à repositionner la configuration de la plateforme telle qu'elle devrait être '''au démarrage de l'activité indiquée'''. Ces raccourcis peuvent aider les apprenants à reprendre une une activité pratique.
+
Cette séparation créée entre réseaux privés et réseaux publics pénalise la capacité de communiquer entre n'importe quel équipement connecté à l'Internet  qui était à l'origine une propriété importante de l'Internet.  Elle limite aussi l'introduction des nouvelles applications ou d'installer des serveurs simplement.
  
== Mise en pause et reprise ==
+
Au moment de cette prise de conscience de la pénurie d’IPv4, l’IETF, organisme responsable de la standardisation des protocoles utilisés sur Internet, a lancé des travaux pour définir une nouvelle version du protocole IP, travaux qui ont abouti en 1996 au standard IPv6 (RFC 8200). Cette nouvelle version du protocole IP offre notamment une capacité d’adressage quasi-infinie ce qui permet d’écarter le risque de pénurie. Il est donc possible grâce à la capacité d'IPv6 de déployer des nouveaux réseaux sans avoir besoin des dispositifs de translation d'adresses. La capacité d'adressage d'IPv6 permet d'attribuer aux équipements des adresses joignables directement, rendant ainsi de nouveau possibles les communications de bout-en-bout. Le rétablissement de cette propriété est indispensables pour les nouveaux usages de l'Internet que sont les objets communiquant, la santé ou l'agriculture connectée et les villes intelligentes.
  
Au cours de l'activité, vous aurez sûrement besoin d'interrompre votre travail sur la plateforme pour le reprendre à un autre moment. Nous préconisons d'utiliser la mise en pause de l'ensemble de la machine virtuelle par VirtualBox.
+
== La bonne solution n'est pas simple à déployer ==
  
Pour mettre en pause la machine virtuelle VirtualBox, sélectionner dans le menu '''Machine''' de VirtualBox l'option '''Pause'''. L'intégralité de l'état de la machine virtuelle sera alors sauvegardée sur votre poste. La liste des machines VirtualBox doit montrer la machine MOOC dans l'état '''En pause'''.
 
  
Pour reprendre votre travail, il suffit de relancer la machine virtuelle depuis la liste des machines de VirtualBox. L'état sauvegardé de la machine sera alors restauré et vous pourrez continuer votre travail là où vous vous êtes arrêté.
+
Cependant, par conception, le protocole IPv6 n’est pas compatible avec IPv4 et ces deux versions de protocole devront cohabiter le temps de la transition de l’ensemble de l’Internet vers IPv6. Par analogie, l’ancien système postal qui ne permet pas directement d’adresser les nouvelles habitations sera amené à être remplacé par un nouveau système ayant ses propres boites aux lettres, adresses et format d’enveloppe. Les deux systèmes n’étant pas compatibles, il est toujours nécessaire pour envoyer et recevoir du courrier d’une habitation dans l’ancien ou le nouveau système de posséder une boite aux lettres pour chacun de ces systèmes. Les anciennes boites aux lettres ne seront plus utiles seulement lorsque l’ensemble des correspondants n’utiliseront plus l’ancien système. S’il peut être envisagé dans un système postal de remplacer unilatéralement une version par une autre à une date choisie, il n’en va pas de même avec l’Internet qui est un système multi-acteur faiblement coordonné. Chaque opérateur choisi indépendamment sa stratégie pour le passage à IPv6. Même si les incitations à accélérer la transition sont nombreuses, cette période de cohabitation entre les deux protocoles peut potentiellement durer encore des années.
 +
Nous reviendrons sur ce problème de la cohabitation entre les 2 versions du protocole IP dans la suite de ce cours.
  
== Retour arrière ==
+
{{Note| PA|Il manque une conclusion qui résumé et qui soit positive}}
  
Au cours de votre travail, vous pourrez être amenés à commettre des erreurs de configuration. Même s'il est toujours possible de corriger une configuration erronée, il est parfois nécessaire de retourner en arrière pour revenir à un état correct. A cette fin, nous vous proposons d'utiliser les fichiers étapes présents dans les différentes activités pratiques afin de repartir de la fin de l'étape désirée. De cette manière, vous conservez un point de reprise d'une configuration stable.
+
== Références bibliographiques ==
  
= Outils fournis par la plateforme =
+
<references />
  
== Console / Ligne de commande ==
+
== Pour aller plus loin ==
  
L'interaction avec les équipements de la plateforme se fait au travers de fenêtres présentant la console de ces équipements. Après authentification, effectuée sur la console auprès du système d'un équipement, vous êtes amenés à interagir, en mode lignes de commandes, avec cet équipement.
+
RFC et leur analyse par S. Bortzmeyer :
 
+
* RFC 1918 Address Allocation for Private Internets [https://www.bortzmeyer.org/1918.html Analyse]
L'affichage des consoles des équipements se fait dans l'interface GNS3 en cliquant sur le bouton 2 de la figure 1 ("Console connect to all devices"). Le titre de la fenêtre vous précise à quel équipement cette console est attachée. Vous disposez d'onglet en bas du cadre ce qui permet de passer facilement d'un équipement à l'autre.
+
 
+
Il est conseillé de garder l'ensemble des consoles ouvertes tout au long de l'activité. Si vous avez fermé une console par inadvertance, vous pouvez normalement la réouvrir en double-cliquant sur l'icône de la machine visée dans le schéma de la topologie. Il peut s'avérer que cette opération ne fonctionne pas (la fenêtre s'ouvre mais ne permet pas d'interagir). Il est alors nécessaire de redémarrer l'équipement en question (Clic-droit sur l'équipement dans la topologie : Stop, puis Run, et enfin Console).
+
 
+
Les supports des activités pratiques vont vous demander de saisir des commandes dans les consoles des machines et d'en examiner le résultat. Le support préfixe chaque commande avec l'invite du système, afin de vous assurer que vous saisissiez bien les commandes sur la bonne machine et avec le bon mode de commande. Les commandes à saisir sont données en '''police grasse'''. Par exemple
+
root@PC-x::cx:~$ '''ifconfig'''
+
est une commande à saisir sur une des machines Linux. Les caractères à saisir sont <tt>ifconfig</tt> suivis d'un retour chariot pour exécuter la commande.
+
 
+
Le copier-coller est possible entre les différentes consoles, afin de faciliter la saisie et de diminuer les erreurs de frappe. Les raccourcis sont
+
* Copier :'''Ctrl+Shift+C''' ou sélection à la souris Clic-droit + Copier
+
* Coller :'''Ctrl+Shift+V''' ou sélection à la souris Clic-droit + Coller
+
 
+
== Edition de fichier ==
+
 
+
Lors des différentes activités pratiques vous serez amenés à éditer des fichiers de configuration. Les consoles des équipements n'ayant pas de capacités graphiques, les outils d'édition de texte à votre disposition seront en mode texte. Les supports des activités vous proposeront d'utiliser l'éditeur de fichiers <tt>nano</tt> :
+
 
+
root@PC-x::cx:~$ '''nano -w <nom du fichier>'''
+
 
+
Vous pouvez alors parcourir le fichier à l'aide du curseur et l'éditer à l'endroit voulu. L'appui simultané sur <CTRL-O> (touche contrôle, simultanément à la lettre 'o') permet de sauvegarder le fichier, et <CTRL-X> de quitter l'éditeur.
+
 
+
'''''Nota''''' ''Les principales commandes d'interaction avec l'éditeur <tt>nano</tt> sont rappelées dans le bas de l'écran de la console.''
+
 
+
== Capture réseau ==
+
 
+
La plateforme GNS3 dispose de l'analyseur de protocoles Wireshark. Pour démarrer une capture, il est possible utiliser Wireshark sur les points de connexion symbolisés par un point vert sur le schéma de la topologie de la figure 1.
+
 
+
=== Démarrer une capture réseau ===
+
 
+
Pour lancer une capture, allez dans la fenêtre à droite '''"Topology Summary"''' présentée dans la figure 1, puis appuyez sur le + d'un élément réseau, choisir une interface réseau, elle passe en rouge sur la fenêtre centrale, ensuite avec un clic-droit, vous pouvez lancer une capture sur ce lien en choisissant '''"Start capture"'''.
+
 
+
La fenêtre de l'analyseur réseau '''Wireshark''' s'ouvre alors.
+
<center>
+
[[File:A26_TP2_Capture.jpg|666px|thumb|center|Figure4: Interface de Wireshark.]]
+
</center>
+
Cet outil vous permet d'analyser en temps réel les trames entrantes et sortantes de l'interface réseau sélectionnée pour la capture. La figure 4 montre les éléments constituant l'interface de Wireshark.  La partie haute de l'interface montre la liste des trames capturées, les 2 parties en dessous montrent respectivement le décodage détaillé des entêtes des protocoles encapsulés dans la trame et le contenu brut en hexadécimal de la trame  sélectionnée.
+
 
+
=== Arrêter une capture réseau ===
+
 
+
L'arrêt des captures est possible depuis la fenêtre "Topology Summary" (voir la figure 1) en choisissant '''"Stop all captures"'''.
+
 
+
'''Note''' : la fermeture de la fenêtre de l'analyseur réseau ne suffit pas pour arrêter la capture. L'arrêt explicite selon la procédure donnée plus haut est nécessaire.
+
 
+
= Synthèse des commandes des systèmes =
+
 
+
== A propos des modes VyOS ==
+
 
+
VyOS fonctionne selon différents modes de commandes selon les fonctionnalités désirées. Les commandes données dans ce chapitre pour le système VyOS précisent donc le mode dans lequel elles sont valides.
+
 
+
'''Mode utilisateur''' : Ce mode est obtenu après connexion au système avec les identifiants :
+
login: '''vyos'''
+
password: '''vyos'''
+
 
+
L'invite de commande dans ce mode est
+
vyos@vyos:~$
+
 
+
Ce mode permet d'observer la configuration du système et de passer au '''Mode Quagga''' ou au '''Mode Administrateur'''
+
 
+
'''Mode Quagga''' : Ce mode est obtenu après connexion au système en '''Mode Utilisateur''' puis en entrant la commande :
+
vyos@vyos:~$ '''vtysh'''
+
 
+
L'invite de commande dans ce mode est
+
vyos#
+
 
+
Ce mode permet de configurer les paramètres propres aux interfaces et aux fonctions de routage. Les  commandes dans ce mode sont celles de [[http://www.nongnu.org/quagga/ Quagga]].
+
La sortie de ce mode s'effectue par la commande '''exit'''.
+
 
+
'''Mode Administrateur''' : Ce mode est obtenu après connexion au système en '''Mode Utilisateur''' puis en entrant la commande :
+
vyos@vyos:~$ '''configure'''
+
 
+
L'invite de commande dans ce mode est
+
vyos@vyos#
+
 
+
Ce mode permet de configurer les services et autres fonctionnalités de VyOS.
+
 
+
== Commandes pour les paramètres des interfaces réseau ==
+
 
+
'''''Nota :''''' ''Pour le système Linux, lorsqu'il y a plusieurs lignes, elles indiquent la même action mais exprimée par des commandes différentes.''
+
 
+
'''''Nota :''''' ''Pour vous loguer sur les stations PC1 et PC2, les identifiants/mots de passe sont apprenant'/'. (Pas de mot de passe).''
+
 
+
'''''Nota :''''' ''Dans les commandes ci-dessous, les termes en italique sont à remplacer par des valeurs.''
+
 
+
=== Visualiser la configuration IPv6 des interfaces réseau ===
+
 
+
Linux :
+
  root@PC-x::cx:~$ '''ifconfig'''
+
  root@PC-x::cx:~$ '''ifconfig -a'''  #(pour voir toutes les interfaces, même inactives)
+
  root@PC-x::cx:~$ '''ip -6'''
+
 
+
VyOS (Mode Utilisateur)
+
vyos@vyos:~$ '''show interfaces detail'''
+
 
+
VyOS (Mode Quagga)
+
vyos# '''show interface'''
+
 
+
=== Activer une interface réseau ===
+
 
+
Il convient de remplacer le motif <tt>''interface''</tt> par le nom de l'interface réseau de l'équipement.
+
 
+
Linux :
+
root@PC-x::cx:~$ '''ifconfig ''interface'' up'''
+
 
+
VyOS (Mode Quagga)
+
Il faut passer en mode configuration par cette commande:
+
vyos# '''configure terminal'''
+
vyos(config)#
+
Puis en configuration d'interface par la commande <tt>''interface''</tt>:
+
vyos(config)# '''interface ''interface'' '''
+
vyos(config-if)# '''no shutdown'''
+
vyos(config-if)# '''exit'''
+
vyos(config)#
+
 
+
La commande '''end''' en configuration d'interface sort de ce mode pour revenir en mode Quagga.
+
vyos(config-if)# '''end'''
+
vyos#
+
La commande '''do''' en  configuration d'interface permet d'exécuter des commandes Quagga de consultation comme '''show interface'''.
+
vyos(config-if)# '''do show interface'''
+
 
+
=== Ajouter une adresse IPv6 à une interface réseau ===
+
 
+
Linux :
+
root@PC-x::cx:~$ '''sudo ifconfig ''interface'' ''adresse-IPv6''/''lg-prefixe'' '''
+
root@PC-x::cx:~$ '''sudo ip -6 addr add ''adresse-IPv6'' dev ''interface'' '''
+
 
+
VyOS (Mode Quagga)
+
vyos# '''configure terminal'''
+
vyos(config)# '''interface ''interface'' '''
+
vyos(config-if)# '''ipv6 address ''adresse-IPv6''/''lg-prefixe'' '''
+
vyos(config-if)# '''exit'''
+
 
+
=== Enlever une adresse IPv6 à une interface réseau ===
+
 
+
Linux :
+
root@PC-x::cx:~$ '''sudo ip -6 addr del ''adresse-IPv6''/''lg-prefixe''  dev ''interface'' '''
+
 
+
VyOS (Mode Quagga)
+
vyos# '''configure terminal'''
+
vyos(config)# '''interface ''interface'' '''
+
vyos(config-if)# '''no ipv6 address ''adresse-IPv6''/''lg-prefixe'' '''
+
vyos(config-if)# '''exit'''
+
 
+
== Commandes propres à la table de routage ==
+
 
+
=== Visualiser la table de routage IPv6 ===
+
 
+
Linux
+
root@PC-x::cx:~$ '''route -A inet6'''
+
root@PC-x::cx:~$ '''ip -6 route'''
+
 
+
VyOS (mode Quagga)
+
vyos# '''show ipv6 route'''
+
 
+
=== Ajouter une route IPv6 ===
+
 
+
Linux
+
root@PC-x::cx:~$ '''sudo route -A inet6 add ''destination'' gw ''prochain-saut'' '''
+
root@PC-x::cx:~$ '''sudo ip -6 route add ''destination'' gw ''prochain-saut'' '''
+
 
+
VyOS (mode Quagga)
+
vyos# '''configure terminal'''
+
vyos(config)# '''ipv6 route ''destination'' ''prochain-saut'' [''interface'']'''
+
L'interface est optionnelle
+
 
+
=== Enlever une route IPv6 ===
+
 
+
Linux
+
root@PC-x::cx:~$ '''sudo ip -6 route del ''destination'' gw ''prochain-saut'' '''
+
 
+
VyOS (mode Quagga)
+
vyos# '''configure terminal'''
+
vyos(config)# '''no ipv6 route ''destination'' ''prochain-saut'' '''
+
 
+
== Autres commandes utiles pour IPv6 ==
+
 
+
=== Tester la connectivité vers une autre machine ===
+
 
+
Linux
+
root@PC-x::cx:~$ '''ping6 ''adresse-IPv6-destination'' '''
+
'''^C''' (CTRL+C) pour stopper le test
+
 
+
Une option peut être fournie pour limiter le nombre d'essais et éviter de faire '''^C'''
+
root@PC-x::cx:~$ '''ping6 -c ''nombre-essais'' ''adresse-IPv6-destination'' '''
+
 
+
 
+
VyOS (mode Quagga)
+
vyos# '''ping ipv6 ''adresse-IPv6-destination'' '''
+
 
+
=== Visualiser le chemin vers une autre machine ===
+
 
+
Linux
+
root@PC-x::cx:~$ '''traceroute6 ''adresse-IPv6-destination'' '''
+
 
+
VyOS (mode Quagga)
+
vyos# '''traceroute ipv6 ''adresse-IPv6-destination'' '''
+

Revision as of 14:29, 8 June 2020


Evolution de l'Internet

IPv4 à l'origine de l'Internet

Au début des années 1980, alors que s'opérait l'interconnexion de différents réseaux informatiques pour créer l'Internet que nous connaissons aujourd'hui, IP s'est imposé comme le protocole standard de l'Internet. L'organisme de standardisation IETF spécifie la version 4 du protocole IP (IPv4) dans le document RFC 791, daté de 1981. En 1983, le réseau étasunien ARPANET choisit la pile TCP/IPv4 comme le standard de communication pour les équipements et les réseaux souhaitant se connecter. Ce choix s'est ensuite imposé sur l'ensemble des réseaux et des systèmes de ce qui allait devenir ensuite l'Internet.

Le protocole IPv4 a été un élément décisif dans le passage à l'échelle de l'Internet. Ses spécifications généralisent les propriétés importantes de connectivité globale et de contrôle de bout-en-bout. Elles définissent pour les adresses IP une longueur fixe de 32 bits. IPv4 permet ainsi de définir un nombre important d'adresses (232 soit plus de 4,3 milliards), donc autant d'identifiants attribués à chaque équipement connecté. Au moment où ont été définies ces spécifications, le réseau ARPANET comptait quelques centaines d'équipements. En 1987, ce nombre dépassa les 10 000 puis 160 000 à la fin de l'année 1989 [1]. La capacité d'adressage d'IPv4 semblait alors suffisante pour pouvoir répondre au besoin de nouvelles connexions, même si celui-ci augmentait rapidement.

Au début des années 1990, le réseau précurseur ARPANET a laissé sa place à l'interconnexion des réseaux que nous appelons aujourd'hui l'Internet. Au même moment est apparue une nouvelle application utilisant les capacités de communication de l'Internet : le World-Wide Web. Très simple d'utilisation, permettant de consulter des contenus de plus en plus riches, le Web a vite créé un nouveau besoin de connexion à l'Internet, notamment chez les particuliers qui s'équipaient alors massivement avec des ordinateurs personnels. L'internet devint alors mondial, se structurant par l'interconnexion des opérateurs publics et privés des différents pays. En 1992, le nombre d'équipements connectés à l'Internet dépasse le million.

Apparition des premières limitations et mesures d'urgences

L'Internet n'avait pas été prévu pour supporter une telle croissance. Chaque nouveau foyer, entreprise ou établissement se raccordant à Internet crée de nouvelles demandes en adresses IP. De plus la topologie du réseau se complexifie avec la multiplication des sites et des opérateurs. Des projections ont alors montré que les politiques de gestion de l'Internet alors en vigueur risquaient d'entrainer une pénurie très rapide.

Les organismes régulateurs de l’Internet ont donc modifié les politiques d'attribution des adresses afin d’éviter tout gaspillage de cette ressource limitée et ainsi maintenir le développement des réseaux IPv4. Le premier changement a concerné les opérateurs. Ceci se font vu imposé des nouvelles règles dans l'attribution des blocs d'adresses [2]

Une adresse codée sur 32 bits permet théoriquement d'adresser 2^32 machines, soit à peu près 4 milliards. Ce nombre pourrait paraître au premier abord très élevé, mais les ordinateurs ne sont pas numérotés séquentiellement. Ils sont regroupés par réseaux. À chaque réseau est affecté un numéro qui est codé sur une partie des 32 bits de l'adresse des machines. On s'aperçoit alors que le nombre de réseaux disponibles n'est pas si important que cela conduit à une pénurie. La tendance actuelle consiste à freiner au maximum l'allocation des adresses réseaux. Ce n'est pas un problème pour les sites déjà équipés disposant déjà de larges plages d'adresses. Cette contrainte est déjà forte pour les nouveaux sites dans les pays dits "développés" pour lesquels un grand nombre d'adresses a été réservé mais se révèle être un problème majeur pour les pays émergeants où parfois moins de 10 réseaux de 250 machines ont été attribués pour l'ensemble du pays.

Les équipements d'interconnexion des réseaux, orientant les paquets vers leur destination finale, sont des routeurs. Pour prendre leurs décisions, ils consultent une table dite de routage. Le nombre de réseaux dans l'Internet croissant de manière vertigineuse, ces tables de routage deviennent de plus en plus volumineuses et difficiles à maintenir. Pour pallier ce problème, une solution d'adressage hiérarchique permettent de réunir un ensemble de numéros de réseaux contigus en un seul préfixe a été conçue (CIDR : Classeless Inter Domain Routing). En plus de la réduction des tables de routage, CIDR permet aussi de réduire la sur-allocation d'adresses aux sites terminaux, réduisant quelque peu la pénurie d'adresses. Avec CIDR le propriétaire de l'adresse est modifié. Dans les plans d'adressage initiaux, le site était propriétaire de son préfixe, avec CIDR le préfixe devient la propriété de son opérateur, rendant la renumérotation du réseau nécessaire, si le site change d'opérateur. Cet adressage hiérarchique a montré son efficacité opérationnelle et les règles d'adressage actuelles pour IPv6 généralisent ce principe.

Nouveaux besoins d’adressage

L’Internet a créé des nouveaux usages. Il a fait naitre aussi de nouveaux besoins de communication. De nouveaux objets communicants apparaissent aussi bien dans le domaine domestique que dans l’industrie, dans les transports, dans le milieu médical... Les 4,3 milliards d’adresses (232) du protocole IPv4 s’avèrent aujourd’hui insuffisantes pour les nouveaux usages d'Internet. Tandis que les supports de transmission et les équipements ont évolué, le protocole IPv4 a gardé des fonctionnalités historiques devenues obsolètes aujourd'hui. En plus d'une capacité d'adressage accrue, le protocole IPv6 est un retour aux principes qui ont fait le succès d'IP, garantissant efficacité, résilience et perspectives d’évolution.

Nous avons décrit une analogie de l'acheminement des données dans l'Internet avec celui du courrier dans le système postal. Un élément fondamental dans ce système est que chaque maison, pour recevoir du courrier, doit posséder une boîte aux lettres. Cette boîte est identifiée de manière unique par une adresse postale qui est renseignée sur chaque enveloppe devant être distribuée dans cette même boîte. De la même manière, une adresse postale sert à identifier de manière unique l’expéditeur de la lettre. Par analogie, on peut rapprocher les notions dans le système postal de boîte aux lettres et d’adresse postale à celles, dans l’Internet, d’interface de communication et d’adresse IP. Les paquets IP sont émis et reçus à travers l’interface de communication. Ils sont acheminés à travers l’Internet vers la destination désignée par l’adresse IP contenue dans l’en-tête de chaque paquet.

BS: Reprendre l'analogie des numéros de téléphone plutôt que du système postal pour explique la pénurie

A la fin de la décennie 2010, les opérateurs de l’Internet ont commencé à ressentir sévèrement les effets de la pénurie des adresses IPv4 amorcée dès le milieux des années 1990. La prise de conscience de ce phénomène s’est amplifiée alors que les effets ont commencé à toucher le grand public, clients de ces opérateurs.

BS: Trouver des courbes permettant de rendre compte de l'augmentation de la pénétration d'Internet, ou du nombre d'équipements connectés

Reprenons l’analogie avec le système postal pour mieux comprendre ce problème de pénurie d’adresses IPv4. Les opérateurs de l’Internet font face à un besoin croissant de raccordements à l’Internet, notamment aujourd'hui avec la multiplication des centres de données et le développement de nouveaux usages à travers les objets connectés. Un scénario similaire serait celui d’un système postal devant s’adapter à une urbanisation effrénée. Chaque nouvelle habitation installe sa boîte aux lettres à laquelle il faut assigner une adresse postale. La contrainte, dans le cas de l’Internet, est que le stock d’adresses disponibles est limité. On est dans la situation où la numérotation des boîtes aux lettres d'une même rue serait codée uniquement sur deux chiffres (de 0 à 99 par). Alors que le nombre de ces boîtes augmentent, le système ne pourra plus assigner de nouvelles adresses lorsque la limite sera atteinte. De la même façon, confrontés à la limitation du nombre d’adresses IPv4 disponibles, les opérateurs de l’Internet ont des difficultés pour attribuer des adresses IP à chaque nouveau raccordement.

BS: Reprendre l'analogie des numéros de téléphone plutôt que du système postal pour explique la pénurie

Contourner la pénurie

Bien sûr, des solutions ont été trouvées pour contourner un problème qui aurait autrement signifié l’arrêt de l’expansion de l’Internet. En réalité, l’Internet a déjà connu un tel risque de pénurie au début des années 1990, lors de l’émergence de l’Internet commercial. Le nombre d’adresses IPv4 disponibles (4 milliards) semblait à ce moment suffisant.

Pascal: l’effondrement de l’Internet c'est quoi concretement si il n'y a plus d'adresse ? ce n'est pas la fin de la croissance plutôt; A développer

Le second changement a porté sur l'attribution des adresses aux systèmes terminaux. L'idée a été le partage des adresses. Un système ne possède plus une adresse mais doit utiliser une adresse partagée avec d'autres systèmes. Pour mettre ce nouveau mode d'attribution des adresses IP, des dispositifs techniques ont été introduits et des plages d'adresses ont été réservées pour leur mise en oeuvre. L'adresse IP à partager est attribuée à ce dispositif à charge à lui de la partager avec les systèmes d'extrémités qui lui sont connectés. La connectivité entre cet équipement et les systèmes d'extrémités est réalisé par un réseau privé ayant une plage d'adresses spécifiques (RFC 1918).

V: pourquoi ne pas mettre directement routeur, qui a déjà été introduit. Ce n'est pas clair !

Afin d'assurer l'interconnexion des réseaux privés avec l'Internet, ces équipements effectue une traduction d’adresses. C'est à dire l'adresse privée est remplacée par l'adresse publique à partager. Techniquement, ces équipements sont appelés des NAT (Network Address Translation) et se trouve dans les box Internet que vous avez chez vous.

V: mais NAT est un logiciel  !
Pascal: mettre un schéma du NAT

Ces équipements sont intrusifs et modifient en profondeur le mécanisme d’acheminement des paquets sur l’Internet, car ils exploitent des informations au delà de l’en-tête IP. C’est un peu comme si, dans le système postal, le facteur était obligé d’ouvrir l’enveloppe du courrier et de lire le contenu de la lettre pour en connaître le destinataire. Et comme le facteur ne connait pas toutes les langues, les contenus dont il n'est pas capable de déchiffrer, il jète la lettre. Vous en conviendrez que le service postal serait moyen si on peut dire ! Dans le cas de l'Internet, cela signifie qu'un nouveau protocole lorsqu'il est utilisé peut ne pas passer les NAT. Ces paquet sont jetés par le NAT dans la mesure qu'ils ne le comprennent pas. Ce comportement est très fâcheux car il bloque l'innovation sur l'Internet. Ce phénomène connu porte le barbarisme "d'ossification". C'est la conséquence du nom respect du principe de bout en bout. Ce principe dicte une règle de distribution des fonctions qui est central de l'architecture du réseau Internet. Il énonce que « plutôt que d’installer l’intelligence au cœur du réseau, il faut la situer aux extrémités : les nœuds au sein du réseau n’ont à exécuter que les fonctions très simples qui sont nécessaires pour les applications les plus diverses, alors que les fonctions qui sont requises par certaines applications spécifiques seulement doivent être exécutées en bordure de réseau. Ainsi, la complexité et l’intelligence du réseau sont repoussées vers ses lisières. Des réseaux simples pour des applications intelligentes. » [3] La première conclusion que nous pouvons tirer de la mise en place de cette solution à base de traduction d'adresses est que le principe fondateur de l'Internet est non respecté ayant pour conséquence d'empêcher son évolution.

L'autre effet de ce nouveau mode d'attribution des adresses est la complexité pour pouvoir joindre un système d'extrémité qui n'a pas d'adresse propre (on parle d'adresse publique). Traditionnellement l'interaction des applications communicantes se fait à l'initiative d'un client. Ce dernier contacte un serveur. Un client peut s'accommoder de ne pas avoir une adresse publique. Il en est tout différemment pour un serveur. Pour être contacté par le client, il doit avoir une adresse qui l'identifie sans ambiguité. Il lui faut donc une adresse publique qui lui est propre. Le nouveau dispositif de partage d'adresse n'est pas utilisable pour un serveur. Il s'ensuit que les systèmes d'extrémités ne sont plus équivalents vis à vis de l'adressage. La conséquence c'est selon la connectivité à Internet, le système d'extrémité est limité dans son rôle. Soit il ne peut être que client ou soit il peut avoir un rôle de client ou serveur. Avec le développement de la domotique, de l'internet des objets, des applications de téléphonie ou de visio conférences, il est nécessaire d'avoir des adresses propres. L'utilisation de ces services dans le contexte des dispositif de partage de l'adresse public, rend énormément compliqué leur accès et leur utilisation depuis un téléphone portable (Ceux qui ont installé une caméra IP dans leur domicile peuvent en témoigner). La seconde conclusion de l'introduction d'une connectivité à base d'un dispositif de traduction à l'impossibilité d'héberger simplement des serveurs avec des adresses privées.

Pascal: tout semble marcher en IPv4 mais ce n'est pas suffisant trop de limitation, à développer

La bonne solution à la pénurie

Jacques: "A défaut d’autres solutions," ??? S. Bortzmeyer, indique (mais je n'ai pas retrouvé la référence), que l'inertie à la migration a aussi pour origine la rentabilité et la croissance immédiate. Plutôt que d'investir le premier dans une techno (IPv6) avec d'hypothétiques gains concurrentiels futurs, les opérateurs ont misé sur les gains immédiats et faciles en généralisant le NAT, quitte à ce que le coût en devienne prohibitif (cf la complexité du CGN). *A simplifier dans un contexte d'activité introductive.* s/A défaut d’autres solutions,/Par facilité, mais aussi réticence à l'appropriation du nouveau protocole, ces mécanismes de translation se sont généralisées dans les infrastructures des opérateurs pour atteindre aujourd'hui un niveau de complexité d'acheminement pénalisant (cf CGN Carrier Grade NAT) pour la croissance d'Internet/g

A défaut d’autres solutions, ces dispositifs se sont généralisés dans l’Internet et sont aujourd’hui nécessaires pour permettre l’acheminement des paquets IPv4.

Cette séparation créée entre réseaux privés et réseaux publics pénalise la capacité de communiquer entre n'importe quel équipement connecté à l'Internet qui était à l'origine une propriété importante de l'Internet. Elle limite aussi l'introduction des nouvelles applications ou d'installer des serveurs simplement.

Au moment de cette prise de conscience de la pénurie d’IPv4, l’IETF, organisme responsable de la standardisation des protocoles utilisés sur Internet, a lancé des travaux pour définir une nouvelle version du protocole IP, travaux qui ont abouti en 1996 au standard IPv6 (RFC 8200). Cette nouvelle version du protocole IP offre notamment une capacité d’adressage quasi-infinie ce qui permet d’écarter le risque de pénurie. Il est donc possible grâce à la capacité d'IPv6 de déployer des nouveaux réseaux sans avoir besoin des dispositifs de translation d'adresses. La capacité d'adressage d'IPv6 permet d'attribuer aux équipements des adresses joignables directement, rendant ainsi de nouveau possibles les communications de bout-en-bout. Le rétablissement de cette propriété est indispensables pour les nouveaux usages de l'Internet que sont les objets communiquant, la santé ou l'agriculture connectée et les villes intelligentes.

La bonne solution n'est pas simple à déployer

Cependant, par conception, le protocole IPv6 n’est pas compatible avec IPv4 et ces deux versions de protocole devront cohabiter le temps de la transition de l’ensemble de l’Internet vers IPv6. Par analogie, l’ancien système postal qui ne permet pas directement d’adresser les nouvelles habitations sera amené à être remplacé par un nouveau système ayant ses propres boites aux lettres, adresses et format d’enveloppe. Les deux systèmes n’étant pas compatibles, il est toujours nécessaire pour envoyer et recevoir du courrier d’une habitation dans l’ancien ou le nouveau système de posséder une boite aux lettres pour chacun de ces systèmes. Les anciennes boites aux lettres ne seront plus utiles seulement lorsque l’ensemble des correspondants n’utiliseront plus l’ancien système. S’il peut être envisagé dans un système postal de remplacer unilatéralement une version par une autre à une date choisie, il n’en va pas de même avec l’Internet qui est un système multi-acteur faiblement coordonné. Chaque opérateur choisi indépendamment sa stratégie pour le passage à IPv6. Même si les incitations à accélérer la transition sont nombreuses, cette période de cohabitation entre les deux protocoles peut potentiellement durer encore des années. Nous reviendrons sur ce problème de la cohabitation entre les 2 versions du protocole IP dans la suite de ce cours.

PA: Il manque une conclusion qui résumé et qui soit positive

Références bibliographiques

  1. Internet History of 80s, https://www.computerhistory.org/internethistory/1980s/
  2. Wikipedia, Classless Inter-Domain Routing.
  3. Lawrence Lessig, L'Avenir des idées, 2005, Presses universitaires de Lyon, 1re partie, paragraphe 75 dans l'édition numérique des Presses.

Pour aller plus loin

RFC et leur analyse par S. Bortzmeyer :

Personal tools