Difference between revisions of "MOOC:Compagnon Act36"

From Livre IPv6

(Etape 3 :Aauto-configuration avec état pour PC-2)
 
(155 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
=Activité 36: Configurez votre premier réseau IPv6  =
+
=Activité 36: Configurez votre premier réseau en IPv6  =
 
+
__NOTOC__
L'objectif de cette activité pratique est de mettre en oeuvre un réseau IPv6 d'une façon proche de l'opérationnel. Nous présenterons comment comfigurer les routeurs mais aussi les hôtes en s'appuyant sur l'auto-configuration. Les mécanismes de configuration automatique des paramètres réseau vise à simplifier les travaux de l'administrateur et améliorer l'expérience de l'utilisateur. Vous allez, dans cette activité, configurer un réseau pour mettre en oeuvre :  
+
L'objectif de cette activité pratique est de mettre en œuvre un réseau IPv6 d'une façon proche de l'opérationnel. Nous présenterons comment configurer les routeurs mais aussi les hôtes en s'appuyant sur l'auto-configuration. Les mécanismes de configuration automatique des paramètres réseau vise à simplifier les tâches de l'administrateur et améliorer l'expérience de l'utilisateur. Vous allez, dans cette activité, configurer un réseau pour mettre en œuvre :  
 
* l'auto-configuration sans état,
 
* l'auto-configuration sans état,
 
* l'auto-configuration avec état par le protocole DHCPv6,
 
* l'auto-configuration avec état par le protocole DHCPv6,
 
* un service de noms afin d'associer un nom à certaines adresses IPv6.
 
* un service de noms afin d'associer un nom à certaines adresses IPv6.
  
Dans cette activité, des captures des échanges seront effectués pour illustrer les mécanismes de configuration présentés dans cette séquence. Prenez donc le temps d'étudier les messages et leur contenu.
+
Comme le montre la figure 1, la topologie du réseau que vous allez utiliser est identique à l'activité pratique de la séquence 1 et 2. Les 3 réseaux seront considérés de la façon suivante :
 +
* le lien Net 0 composé des nœuds R1 - R2 est un sous-réseau d'infrastructure. Les mécanismes d'auto-configuration ne s'y appliquent pas ;
 +
* le lien Net 1 composé de R1 - PC-1 forme un sous-réseau destiné à recevoir des hôtes ayant un rôle de client. Le protocole de configuration automatique sans état est utilisé.
 +
* le lien Net 2 composé de R2 - PC-2 forme lui aussi un sous-réseau destiné à recevoir des hôtes mais avec un rôle de serveur. Le protocole de configuration automatique utilisé ici sera avec état.
 +
* le lien Net 3 composé R2 - SRV-3 forme lui aussi un sous réseau destiné à recevoir des hôtes mais avec un rôle de serveur. Le protocole de configuration sans état est utilisé.
  
Le support vous donne l'ensemble des opérations à réaliser pour aller jusqu'au bout de l'activité. Vous trouverez un résumé de ces commandes dans le Manuel Apprenant disponible en suivant ce lien (http://mooc.ipv6.rennes.telecom-bretagne.eu/Manuel_Apprenant.pdf)
+
Le plan d'adressage utilisé pour ces réseaux reprend le préfixe <tt>fd75:e4d9:cb77::/48</tt>   
 
+
La topologie du réseau que vous allez utiliser est identique à l'activité pratique de la séquence 1 et 2. Les 3 réseaux seront considérés de la façon suivante :
+
* le lien Net 0 composé des noeuds R1-R2 est un sous-réseau d'infrastructure. Les mécanismes d'auto-configuration ne s'y appliquent pas ;
+
* le lien Net1 composé de R1-PC1 forme un sous-réseau destiné à recevoir des hôtes ayant un rôle de client. Le protocole de configuration automatique sans état est utilisé.
+
* le lien Net1 composé de R2-PC2 forme lui aussi un sous-réseau destiné à recevoir des hôtes mais avec un rôle de serveur. Le protocole de configuration automatique utilisé ici sera avec état.
+
 
+
Comme le montre la figure 1, le plan d'adressage pour les liens reprend le préfixe <tt>fd75:e4d9:cb77::/48</tt>   
+
 
* le préfixe <tt>fd75:e4d9:cb77::/64</tt> est utilisé pour le sous-réseau d'infrastructure ;
 
* le préfixe <tt>fd75:e4d9:cb77::/64</tt> est utilisé pour le sous-réseau d'infrastructure ;
 
* le préfixe <tt>fd75:e4d9:cb77:1::/64</tt> est utilisé pour le sous-réseau Net 1 ;
 
* le préfixe <tt>fd75:e4d9:cb77:1::/64</tt> est utilisé pour le sous-réseau Net 1 ;
* le préfixe <tt>fd75:e4d9:cb77:2::/64</tt> est utilisé pour le sous-réseau Net 2.
+
* le préfixe <tt>fd75:e4d9:cb77:2::/64</tt> est utilisé pour le sous-réseau Net 2 ;
 +
* le préfixe <tt>fd75:e4d9:cb77:3::/64</tt> est utilisé pour le sous-réseau Net 3.
 
Imprégnez-vous de ce plan d'adressage, utilisant des adresses ULA (''Unique Local Address''). Nous allons le mettre progressivement en oeuvre dans cette plateforme.
 
Imprégnez-vous de ce plan d'adressage, utilisant des adresses ULA (''Unique Local Address''). Nous allons le mettre progressivement en oeuvre dans cette plateforme.
 
 
<center>
 
<center>
[[image:2015_10_20_TP2_screenshot1.png|thumb|center|600px| Figure 1: Plan d'adressage utilisé.]]
+
[[image:MoocSession5_act36_topolo_20190605.png|thumb|center|400px| Figure 1: Plan d'adressage utilisé.]]
 
</center>
 
</center>
  
Vous allez, dans une première étape, configurer le sous réseau d'infrastructure puis dans une seconde étape, configurer le sous-réseau de distribution Net1 en vous déployant l'auto-configuration sans état. La troisième étape consistera à déployer le protocole DHCPv6 sur le sous-réseau Net2. Enfin la quatrième et dernière étape, va nous amener à activer le serveur DNS. L'information de la  disponibilité du service de nommage sera distribuée sur les différents sous-réseaux en utilisant DHCPv6.
+
Vous allez, dans une première étape, configurer le sous réseau d'infrastructure puis dans une seconde étape, configurer le sous-réseau de distribution Net1 en déployant l'auto-configuration sans état. La troisième étape consistera à déployer le protocole DHCPv6 sur le sous-réseau Net2. Enfin la quatrième et dernière étape, va nous amener à activer le serveur DNS. L'information de la  disponibilité du service de nommage sera distribuée sur les différents sous-réseaux en utilisant DHCPv6.
 +
Dans cette activité, des captures des échanges seront effectuées pour illustrer les mécanismes de configuration présentés dans cette séquence. Prenez donc le temps d'étudier les messages et leur contenu.
 +
 
 +
Le support vous donne l'ensemble des opérations à réaliser pour aller jusqu'au bout de l'activité. Vous trouverez un résumé de ces commandes dans le Manuel Apprenant disponible dans l'onglet documentation du cours Objectif IPv6 du site de FUN.  
  
 
== Etape 0: Création des  liens ==
 
== Etape 0: Création des  liens ==
  
Démarrez la machine virtuelle "MOOC_IPv6_Lab_Session3". Une fois que la machine virtuelle Debian a démarré, vous voyez, sur le bureau, des dossiers prêts pour les travaux pratiques des séquences 1 à 4.
+
Double cliquer sur le lien intitulé "moocipv6.gns3"<!-- (icône symbolisé par un caméléon)-->, présent dans la partie haute du bureau de votre machine virtuelle.
  
Pour l'adapter à la taille de votre écran : clic-droit sur le bureau - Modifier l'arrière plan du bureau - choisir la flèche en haut à gauche.
+
Vous devez restaurer le Snapshot ''(Activité-36)'' depuis '''''Edit > Manage snapshots''''' ce qui rechargera les configurations initiales des équipements.
Dans la section Matériel, choisir écran puis choisir affichage inconnu. Enfin, appliquez la taille la mieux adaptée à votre écran, puis conservez les modifications si cela convient.
+
  
Double-cliquez sur le dossier''' "MOOC_IPV6_TP3" ''', puis sur l'icône ''' "TP3_Etape0" '''
+
Attendre que la fenêtre <tt>moocipv6-GNS3</tt> apparaisse à l'écran comme présentée par la figure 2. Double cliquer sur la barre de titre de cette fenêtre pour qu'elle occupe la totalité de votre écran. Si besoin, vous pouvez ensuite recentrer l'image de la topologie dans la fenêtre centrale avec les boutons ascenseurs horizontal et vertical.
  
Pour commencer, vous devez effacer les liaisons entre les commutateurs SW1 à SW3 et les équipements PC1, PC2, R1 et R2 afin que le réseau de la plateforme ressemble à la fin à la figure 2. Ensuite, nous allons les reconstruire pas à pas. C'est seulement une fois les connexions physiques effectuées, que vous pourrez commencer les travaux de configuration.
+
=== Liens physiques à supprimer ===
 +
<!--
 +
Pour commencer, vous devez effacer les liaisons entre les commutateurs SW1 à SW3 et les équipements PC-1, PC-2, R1 et R2 afin que le réseau de la plateforme ressemble à la fin à la figure 2. Ensuite, nous allons les reconstruire pas à pas. C'est seulement une fois les connexions physiques effectuées, que vous pourrez commencer les travaux de configuration.
 +
-->
  
<center>
+
Pour commencer, vous devez effacer les liaisons entre les noeuds PC-1 - R1, R1 - R2 et R2 - PC-2, afin que le réseau de la plateforme ressemble à la fin à la figure 2. Ensuite, nous allons les reconstruire pas à pas. C'est seulement une fois les connexions physiques effectuées, que vous pourrez commencer les travaux de configuration.
[[image:GNS3_TP2_00.jpg|thumb|center|600px|Figure 2: Topologie initiale.]]
+
</center>
+
  
=== Liens physiques à supprimer ===
+
Avant tout, il est possible d'afficher les numéros des interfaces des équipements représentés sur la maquette. Appuyer sur le bouton carré '''"a b c" ''' situé juste en dessous du menu déroulant Device.  
 
+
Avant tout, il est possible d'afficher les numéros des interfaces des équipements représentés sur la maquette. Appuyez sur le bouton carré '''"a b c" ''' situé juste en dessous du menu déroulant Device.  
+
  
 
Vous pouvez maintenant placer votre pointeur sur chacun des liens connectés,  sur chacun des commutateurs. Si vous avez bien sélectionné le lien, il doit être en surbrillance. Vous pouvez faire un clic droit et choisir '''"delete"'''.
 
Vous pouvez maintenant placer votre pointeur sur chacun des liens connectés,  sur chacun des commutateurs. Si vous avez bien sélectionné le lien, il doit être en surbrillance. Vous pouvez faire un clic droit et choisir '''"delete"'''.
  
Si malencontreusement, vous appuyez sur "start capture", placez-vous sur la fenêtre "topology Summary" en haut à droite. Appuyez sur le + d'un switch, choisissez une interface et, avec le clic droit, choisissez "stop all captures".
+
<center>
 +
[[image:MoocSession5 act36 link nc 20190605.png |thumb|center|600px|Figure 2: Topologie initiale.]]
 +
</center>
  
Une fois que vous avez effacé les 6 liens, nous pouvons commencer à construire correctement notre réseau.
+
Si malencontreusement, vous appuyez sur "start capture", placez-vous sur la fenêtre "topology Summary" en haut à droite. Appuyer sur le + d'un switch, choisir une interface et, avec le clic droit, choisir "stop all captures".
  
=== Liens physiques à réaliser ===
+
Une fois que vous avez effacé les 3 liens, nous pouvons commencer à construire correctement notre réseau.
  
Vous devez sélectionner l'outil "add a link" (câble en S avec une prise) situé sur le coté gauche, en bas. Une fois sélectionné, une croix rouge vous rappelle qu'il faudra le désélectionner une fois que vous aurez fini la création des liens, sinon toute autre action est inhibée.
+
=== Liens physiques à réaliser ===
*  PC1 - SW2 : cliquez sur PC1, puis sur Ethernet0, et glissez-déposez votre souris vers le switch1. Choisissez alors le port n°1 du switch SW2 : un lien apparait sur la figure. Si une erreur s'est produite, repositionnez votre souris sur le lien à supprimer. Faites un clic droit et choisissez "delete".
+
*  R1 - SW2 : cliquez sur R1, puis sur Ethernet0, et glissez-déposez votre souris vers le switch1. Choisissez alors le port n°2 du switch SW2 : un lien apparait sur la figure.
+
*  R1 - SW1 - R2 : cliquez sur R1, puis sur Ethernet1, et glissez-déposez votre souris vers le switch1. Choisissez alors le port n°1 du switch SW1 : un lien apparait sur la figure. De nouveau, cliquez sur le switch SW1 et glissez-déposez votre souris vers R2. Choisissez le port Ethernet1.
+
*  R2 - SW3 - PC2 : cliquez sur R2, puis sur Ethernet0, et glissez-déposez votre souris vers le switch SW3. Choisissez alors le port n°2 du switch SW3 : un lien apparait sur la figure. De nouveau, cliquez sur le switch SW3 et glissez-déposez votre souris vers PC2. Choisissez le port Ethernet0.
+
  
Pour vérifier si l'affectation des interfaces est conforme à la figure 3 :
+
Vous devez sélectionner l'outil ''"add a link"'' (câble en S avec une prise) situé sur le coté gauche, en bas. Une fois sélectionné, une croix rouge vous rappelle qu'il faudra le désélectionner une fois que vous aurez fini la création des liens, sinon toute autre action est inhibée.
* soit vous appuyez sur le bouton "Show/Hide Interface Labels", situé sous le menu déroulant Device ;
+
*  PC1 -  R1 : cliquer sur PC-1, puis sur Ethernet0, et glisser-déposer votre souris vers R1, puis sur Ethernet0: un lien apparait sur la figure.
* soit vous immobilisez votre pointeur de souris sur un composant réseau, et un panneau décrit la liste des liens en place.
+
* R1 - R2 : cliquer sur R1, puis sur Ethernet1, et glisser-déposer votre souris vers R2. Choisir alors le port Ethernet1: un lien apparait sur la figure.
 +
* R2 - PC2 : cliquer sur R2, puis sur Ethernet0, et glisser-déposer votre souris vers PC2, choisir alors le port eth0 : un lien apparait sur la figure.  
 
<center>
 
<center>
[[image:GNS3_TP2_001.jpg|thumb|center|600px|Figure 3:  Topologie du réseau mise en place.]]
+
[[image:MoocSession5_act36_link_act_20190605.png|thumb|center|400px|Figure 3:  Topologie du réseau mise en place.]]
 
</center>
 
</center>
  
'''Activation des équipements'''
+
Pour '''vérifier''' si l'affectation des interfaces est '''conforme à la configuration initiale présentée à la figure 1''' :
 +
* appuyer sur le bouton carré '''"a b c" ''' situé juste en dessous du menu déroulant ''Node'' ;
 +
<!--* soit vous appuyer sur le bouton ''"Show/Hide Interface Labels"'', situé sous le menu déroulant ''Device'' ;-->
 +
* soit vous immobilisez votre pointeur de souris sur un composant réseau, et un panneau décrit la liste des liens en place.
 +
 
 +
===Activation des équipements===
  
 
Si tout est correct, vous pouvez activer les équipements du réseau dans GNS3, à l'aide du bouton triangulaire vert démarrer ''"Start/Resume all devices"''.
 
Si tout est correct, vous pouvez activer les équipements du réseau dans GNS3, à l'aide du bouton triangulaire vert démarrer ''"Start/Resume all devices"''.
Line 74: Line 76:
 
Dans la fenêtre centrale les témoins verts des liens indiquent que les équipements démarrent, et sur la droite la fenêtre ''"Topology Summary"'' montre aussi les témoins verts des équipements réseaux.
 
Dans la fenêtre centrale les témoins verts des liens indiquent que les équipements démarrent, et sur la droite la fenêtre ''"Topology Summary"'' montre aussi les témoins verts des équipements réseaux.
  
'''Arrêt/Pause de GNS3'''
+
Lorsque tous les noeuds sont actifs, il faut cliquer sur le bouton ''"Console connect to all devices"'' symbolisé par  >_  situé à gauche du bouton triangulaire vert, juste en dessous du menu déroulant ''"Node"''. Ainsi vous aller faire apparaitre les consoles de contrôle pour les routeurs et pour les hôtes comme le montre la figure 4.
 
+
Au besoin vous pouvez aussi figer l'exécution des équipements avec le bouton Pause ''"Suspend All devices"'', voire arrêter les équipements avec le bouton Stop ''"Stop All devices"''.
+
 
+
Faire <tt>CTRL+S</tt> si vous souhaitez sauvegarder l'état des équipements. Pour quitter proprement GNS3, faire <tt>CTRL+Q</tt> ou faire, avec le menu déroulant ''File'', l'action ''Quit''.
+
 
+
== Etape 1 : Configuration manuelle des routeurs R1 et R2  ==
+
Lorsque le simulateur GNS3 est lancé, il faut cliquer sur le bouton ''"Console connect to all devices"'' symbolisé par  >_  situé à gauche du bouton triangulaire vert, juste en dessous du menu déroulant ''"Annotate"''. Ainsi vous aller faire apparaitre les consoles de contrôle pour les routeurs et pour les hôtes comme le montre la figure 4.
+
  
 
Les consoles de contrôle dites CLI (''Command Line Interface'') affichent le démarrage des différents équipements réseaux. Notons que le démarrage des PC est plus rapide que celui des routeurs (le temps de démarrage dépendant des capacités de votre machine: compter quelques  minutes). Comptez entre trois et dix minutes, parfois plus. Une fois que tous les noeuds ont leur console  avec l'invite pour se connecter comme le montre la figure 4, votre plateforme de réseau est dorénavant opérationnelle.
 
Les consoles de contrôle dites CLI (''Command Line Interface'') affichent le démarrage des différents équipements réseaux. Notons que le démarrage des PC est plus rapide que celui des routeurs (le temps de démarrage dépendant des capacités de votre machine: compter quelques  minutes). Comptez entre trois et dix minutes, parfois plus. Une fois que tous les noeuds ont leur console  avec l'invite pour se connecter comme le montre la figure 4, votre plateforme de réseau est dorénavant opérationnelle.
 
<center>
 
<center>
[[image:GNS3_TP2_002.jpg|thumb|center|600px|Figure 4:  Ecran GNS3 avec les interfaces CLI.]]
+
[[image:MoocSession5_act36_topology_cli_20190604.png|thumb|center|600px|Figure 4:  Ecran GNS3 avec les interfaces CLI.]]
 
</center>
 
</center>
  
 +
===Arrêt/Pause de GNS3===
 +
 +
Au besoin vous pouvez aussi figer l'exécution des équipements avec le bouton Pause ''"Suspend all nodes"'', voire arrêter les équipements avec le bouton Stop ''"Stop all nodes"''.
 +
 +
L'état des équipements est sauvegardé en quittant. Pour quitter proprement GNS3, faire <tt>CTRL+Q</tt> ou faire, avec le menu déroulant ''File'' et l'action ''Quit''.
 +
 +
== Etape 1 : Configuration manuelle des routeurs R1 et R2  ==
 
Nous allons détailler la démarche de configuration d'un routeur. Nous prendrons l'exemple sur le routeur R1.
 
Nous allons détailler la démarche de configuration d'un routeur. Nous prendrons l'exemple sur le routeur R1.
  
Line 93: Line 95:
 
Pour vous loguer sur les routeurs R1 et R2, les identifiant/mot de passe  sont '''vyos'''/'''vyos'''. (Aucun affichage de caractère n'est produit lorsqu'on entre le mot de passe).
 
Pour vous loguer sur les routeurs R1 et R2, les identifiant/mot de passe  sont '''vyos'''/'''vyos'''. (Aucun affichage de caractère n'est produit lorsqu'on entre le mot de passe).
 
Passez en mode Quagga VyOS ainsi :
 
Passez en mode Quagga VyOS ainsi :
  vyos@vyos:~$ '''vtysh'''
+
  vyos@r1:~$ '''vtysh'''
 
Vérifiez l'état des interfaces.  
 
Vérifiez l'état des interfaces.  
 
Rappel: la tabulation aide à la terminer automatiquement la saisie des commandes.
 
Rappel: la tabulation aide à la terminer automatiquement la saisie des commandes.
  vyos# '''show interface'''
+
  r1# '''show interface'''
 
Passez en mode de configuration
 
Passez en mode de configuration
  vyos# '''configure terminal'''
+
  r1# '''configure terminal'''
 
Puis activez l'interface eth0 et eth1.
 
Puis activez l'interface eth0 et eth1.
  vyos(config)# '''interface eth0'''
+
  r1(config)# '''interface eth0'''
  vyos(config-if)# '''no shutdown'''
+
  r1(config-if)# '''no shutdown'''
  vyos(config-if)# '''exit'''
+
  r1(config-if)# '''exit'''
  vyos(config)# '''interface eth1'''
+
  r1(config)# '''interface eth1'''
  vyos(config-if)# '''no shutdown'''
+
  r1(config-if)# '''no shutdown'''
  vyos(config-if)# '''do show interface'''
+
  r1(config-if)# '''do show interface'''
  vyos(config-if)# '''end'''
+
  r1(config-if)# '''end'''
  vyos#   
+
  r1#   
 
Vérifiez l'état des interfaces.
 
Vérifiez l'état des interfaces.
  vyos# '''show interface'''
+
  r1# '''show interface'''
 
Vérifiez les informations détaillées des interfaces. Pour cela quitter le mode configuration:
 
Vérifiez les informations détaillées des interfaces. Pour cela quitter le mode configuration:
  vyos# '''exit'''
+
  r1# '''exit'''
  vyos@vyos:~$ '''show interface detail'''
+
  r1@vyos:~$ '''show interface detail'''
 +
'''Avant de passer à la suite, vous devez reprendre la même séquence sur R2.'''
  
 
===Configuration des interfaces avec une adresse routable ULA ===
 
===Configuration des interfaces avec une adresse routable ULA ===
 
Configurez les adresses routables des interfaces du routeur '''R1''':
 
Configurez les adresses routables des interfaces du routeur '''R1''':
  vyos@vyos:~$ '''vtysh'''
+
  vyos@r1:~$ '''vtysh'''
  vyos# '''configure terminal'''
+
  r1# '''configure terminal'''
  vyos(config)# '''interface eth0'''
+
  r1(config)# '''interface eth0'''
  vyos(config-if)# '''ipv6 address fd75:e4d9:cb77:0001::ffff/64'''
+
  r1(config-if)# '''ipv6 address fd75:e4d9:cb77:0001::1/64'''
  vyos(config-if)# '''exit'''
+
  r1(config-if)# '''exit'''
  vyos(config)# '''int eth1'''
+
  r1(config)# '''int eth1'''
  vyos(config-if)# '''ipv6 address fd75:e4d9:cb77:0000::1/64'''
+
  r1(config-if)# '''ipv6 address fd75:e4d9:cb77:0000::1/64'''
  vyos(config-if)# '''exit'''
+
  r1(config-if)# '''exit'''
  vyos(config)# '''exit'''
+
  r1(config)# '''exit'''
 
Vérifiez votre saisie en affichant la configuration des interfaces.
 
Vérifiez votre saisie en affichant la configuration des interfaces.
  vyos# '''show interface'''
+
  r1# '''show interface'''
  
 
Nous l'avons vu dans l'activité de la séquence 2, les routeurs doivent connaitre les routes pour joindre les sous-réseaux. Il faut donc compléter la table de routage de chaque routeur.
 
Nous l'avons vu dans l'activité de la séquence 2, les routeurs doivent connaitre les routes pour joindre les sous-réseaux. Il faut donc compléter la table de routage de chaque routeur.
Line 133: Line 136:
  
 
Configuration du routage sur R1 : ajout d'une route vers Net 2.
 
Configuration du routage sur R1 : ajout d'une route vers Net 2.
  vyos# '''configure terminal'''
+
  r1# '''configure terminal'''
  vyos(config)# '''ipv6 route fd75:e4d9:cb77:0002::/64 fd75:e4d9:cb77:0000::2 eth1'''  
+
  r1(config)# '''ipv6 route fd75:e4d9:cb77:0002::/64 fd75:e4d9:cb77:0000::2 eth1'''  
  vyos(config)# '''do show ipv6 route'''
+
  r1(config)# '''do show ipv6 route'''
  vyos(config)# exit
+
  r1(config)# '''exit'''
  vyos#  
+
  r1#  
 
Une route statique vers le réseau Net 2 doit être visible maintenant.
 
Une route statique vers le réseau Net 2 doit être visible maintenant.
  
Line 144: Line 147:
 
   
 
   
 
Nous vous laissons répétez l'opération de configuration sur R2.
 
Nous vous laissons répétez l'opération de configuration sur R2.
<!--
+
 
  vyos# '''configure terminal'''
+
  vyos@r2~$ '''vtysh'''
  vyos(config)# '''interface eth0'''
+
r2# '''configure terminal'''
  vyos(config-if)# '''ipv6 address fd75:e4d9:cb77:0002::ffff/64'''
+
  r2(config)# '''interface eth0'''
  vyos(config-if)# '''exit'''
+
  r2(config-if)# '''ipv6 address fd75:e4d9:cb77:0002::2/64'''
  vyos(config)# '''int eth1'''
+
  r2(config-if)# '''exit'''
  vyos(config-if)# '''ipv6 address fd75:e4d9:cb77:0000::2/64'''
+
  r2(config)# '''int eth1'''
  vyos(config-if)# '''end'''
+
  r2(config-if)# '''ipv6 address fd75:e4d9:cb77:0000::2/64'''
 +
  r2(config-if)# '''end'''
  
 
Configuration du routage sur R2 : ajout d'une route vers Net 1.
 
Configuration du routage sur R2 : ajout d'une route vers Net 1.
  vyos(config)# '''ipv6 route fd75:e4d9:cb77:0001::/64 fd75:e4d9:cb77:0000::1 eth1'''
+
  r2# '''configure terminal'''
  vyos(config)# '''do show ipv6 route'''
+
r2(config)# '''ipv6 route fd75:e4d9:cb77:0001::/64 fd75:e4d9:cb77:0000::1 eth1'''
* Une route statique vers le réseau Net 1 doit être visible maintenant.
+
  r2(config)# '''do show ipv6 route'''
-->
+
r2(config)# '''exit'''
 +
r2#
 +
Une route statique vers le réseau Net 1 doit être visible maintenant.
  
 
=== Vérification de la connectivité ===
 
=== Vérification de la connectivité ===
 
 
Nous allons maintenant vérifier que ce qui vient d'être fait fonctionne sans erreur. Pour cela nous allons effectuer des tests de connectivité entre les différentes interfaces des routeurs. Pour les communications à remises indirectes, nous vérifions également la route suivie.  
 
Nous allons maintenant vérifier que ce qui vient d'être fait fonctionne sans erreur. Pour cela nous allons effectuer des tests de connectivité entre les différentes interfaces des routeurs. Pour les communications à remises indirectes, nous vérifions également la route suivie.  
  
 
*  R1 - R2; Depuis le routeur R1, essayez de joindre R2:
 
*  R1 - R2; Depuis le routeur R1, essayez de joindre R2:
  vyos# '''ping ipv6 fd75:e4d9:cb77:0000::2'''
+
  r1# '''ping ipv6 fd75:e4d9:cb77:0000::2'''
 +
Stopper le ping par appui simultané des touches ''Ctrl+C''
 
* R1 - Net 2; Depuis le routeur R1, essayez de joindre l'interface eth0 de R2:
 
* R1 - Net 2; Depuis le routeur R1, essayez de joindre l'interface eth0 de R2:
  vyos# '''ping ipv6 fd75:e4d9:cb77:2::1'''
+
  r1# '''ping ipv6 fd75:e4d9:cb77:2::2'''
  vyos# '''traceroute ipv6 fd75:e4d9:cb77:2::1'''
+
Stopper le ping par appui simultané des touches ''Ctrl+C''
 +
  r1# '''traceroute ipv6 fd75:e4d9:cb77:2::2'''
 
* R2 - Net 1; Depuis le routeur R2, essayez de joindre l'interface eth0 de R1:
 
* R2 - Net 1; Depuis le routeur R2, essayez de joindre l'interface eth0 de R1:
  vyos# '''ping ipv6 fd75:e4d9:cb77:1::1'''
+
  r2# '''ping ipv6 fd75:e4d9:cb77:1::1'''
  vyos# '''traceroute ipv6 fd75:e4d9:cb77:1::1'''
+
Stopper le ping par appui simultané des touches ''Ctrl+C''
 
+
  r2# '''traceroute ipv6 fd75:e4d9:cb77:1::1'''
 +
<!-- {{HorsTexte|Note|Si vous rencontrez des problèmes sur les configurations de cette étape et vous n'arrivez pas à valider les configurations, vous pouvez étudier une configuration fonctionnelle en démarrant la plateforme par l'icône ayant le nom de l'étape suivante disponible dans le dossier '''TP3''' sur le bureau de la machine virtuelle. Vous pourrez ensuite commencer l'étape suivante à partir de cette configuration. Afin de ne pas surcharger votre machine virtuelle, il est conseillé de ne pas démarrer la plateforme de l'étape suivante sans avoir au préalable stoppé la plateforme en cours d'utilisation.}}
 +
-->
 
En l'absence d'erreur, le réseau d'infrastructure est maintenant opérationnel. Dans le cas contraire les adresses allouées et la longueur de leur préfixe sont à vérifier de même que les tables de routage.
 
En l'absence d'erreur, le réseau d'infrastructure est maintenant opérationnel. Dans le cas contraire les adresses allouées et la longueur de leur préfixe sont à vérifier de même que les tables de routage.
  
Line 177: Line 186:
 
Au besoin vous pouvez aussi figer l'exécution des équipements avec le bouton Pause ''"Suspend All devices"'', voire arrêter les équipements avec le bouton Stop ''"Stop All devices"''.  
 
Au besoin vous pouvez aussi figer l'exécution des équipements avec le bouton Pause ''"Suspend All devices"'', voire arrêter les équipements avec le bouton Stop ''"Stop All devices"''.  
  
Faire <tt>CTRL+S</tt> si vous souhaitez sauvegarder l'état des équipements. Pour quitter proprement GNS3, faire <tt>CTRL+Q</tt> ou faire, avec le menu déroulant ''File'' et l'action ''Quit''.
+
L'état des équipements est sauvegardé en quittant. Pour quitter proprement GNS3, faire <tt>CTRL+Q</tt> ou faire, avec le menu déroulant ''File'' et l'action ''Quit''.
  
 
== Etape 2 : Auto-configuration sans état pour PC-1 ==
 
== Etape 2 : Auto-configuration sans état pour PC-1 ==
 
Si vous avez réussi l'étape précédente vous pouvez continuer d'utiliser votre plateforme. Dans le cas contraire, vous pouvez charger une nouvelle image (snapshot) pour l'étape 2. Pour cela vous devez ouvrir le dossier''' "MOOC_IPV6_TP3" ''', et charger le snapshot ''' "TP3_Etape2" '''. Puis il vous reste alors à démarrer les noeuds de cette plateforme par le bouton ''Start'' et d'ouvrir les consoles de contrôle.
 
  
 
=== Vérifier la configuration initiale du réseau ===
 
=== Vérifier la configuration initiale du réseau ===
  
 
Sur '''R1''', vérifier que l'interface <tt>eth0</tt> est '''activée'''.
 
Sur '''R1''', vérifier que l'interface <tt>eth0</tt> est '''activée'''.
  vyos@vyos:~$ '''show interface detail'''
+
r1# '''exit'''
 +
  vyos@r1:~$ '''show interface detail'''
 
Les interfaces <tt>eth0</tt> et <tt>eth1</tt> doivent être activées et configurées.
 
Les interfaces <tt>eth0</tt> et <tt>eth1</tt> doivent être activées et configurées.
  
Sur '''PC1''', vérifier que l'interface <tt>eth0</tt> de PC1 est '''désactivée'''
+
Sur '''PC-1''', vérifier que l'interface <tt>eth0</tt> de PC-1 est '''désactivée'''
  apprenant@MOOCIPv6:~$ '''ifconfig'''
+
  root@PC-1::c1:~$ '''ifconfig'''
Seule l'interface <tt>lo</tt> doit s'afficher.
+
Seule l'interface <tt>lo</tt> doit s'afficher. Dans le cas contraire vous pouvez désactiver l'interface eth0 puis revérfier
 
+
root@PC-1::c1:~$ '''ifconfig eth0 down'''
Lancer la capture réseau sur le réseau R1-PC1.
+
root@PC-1::c1:~$ '''ifconfig'''
# Faire un clic-droit sur l'une des interfaces du switch '''SW1'''.
+
Lancer alors la capture réseau sur le réseau R1 - PC1.
# Choisir dans le menu '''Start Network Capture'''.
+
# Séléctionner le lien PC-1 - R1 (il doit apparaître surligné) puis faire un clic-droit.
 +
# Choisir dans le menu '''Start capture'''.
 
# L'outil de capture réseau doit s'afficher.
 
# L'outil de capture réseau doit s'afficher.
  
Line 202: Line 211:
 
La configuration automatique '''sans état''' est contrôlée par la diffusion, sur le réseau, des messages d'annonce de routeur (''Routeur Advertisement'' ou RA). Le routeur de ce réseau étant R1, c'est à lui de diffuser ces messages. Vous allez maintenant activer la diffusion des messages d'annonce sur l'interface <tt>eth0</tt> du routeur R1.
 
La configuration automatique '''sans état''' est contrôlée par la diffusion, sur le réseau, des messages d'annonce de routeur (''Routeur Advertisement'' ou RA). Le routeur de ce réseau étant R1, c'est à lui de diffuser ces messages. Vous allez maintenant activer la diffusion des messages d'annonce sur l'interface <tt>eth0</tt> du routeur R1.
  
  vyos@vyos:~$ '''vtysh'''
+
  vyos@r1:~$ '''vtysh'''
  vyos# '''configure terminal'''
+
  r1# '''configure terminal'''
  vyos(config)# '''interface eth0'''
+
  r1(config)# '''interface eth0'''
  vyos(config-if)# '''no ipv6 nd suppress-ra'''
+
  r1(config-if)# '''no ipv6 nd suppress-ra'''
  vyos(config-if)# '''ipv6 nd prefix fd75:e4d9:cb77:1::/64'''
+
  r1(config-if)# '''ipv6 nd prefix fd75:e4d9:cb77:1::/64'''
  vyos(config-if)# '''exit'''
+
  r1(config-if)# '''ipv6 nd ra-interval 30'''
  vyos(config)# '''exit'''
+
r1(config-if)# '''exit'''
 +
  r1(config)# '''exit'''
 +
r1#
  
La commande <tt>no ipv6 nd suppress-ra</tt> est en fait la négation d'une configuration par défaut de VyOS qui désactive la diffusion des annonces de routeur. La commande suivante permet de préciser à VyOS le préfixe à diffuser dans ces messages. Ce préfixe va permettre aux stations qui se connectent sur le réseau de connaitre le préfixe à utiliser pour configurer leurs adresses.
+
La commande <tt>no ipv6 nd suppress-ra</tt> est en fait la négation d'une configuration par défaut de VyOS qui désactive la diffusion des annonces de routeur. La commande suivante <tt>ipv6 nd prefix fd75:e4d9:cb77:1::/64</tt> permet de préciser à VyOS le préfixe à diffuser dans ces messages. Ce préfixe va permettre aux stations qui se connectent sur le réseau de connaitre le préfixe à utiliser pour configurer leurs adresses.
  
Dans l'outil de capture réseau, vérifier la diffusion périodique des annonces de routeur sur le réseau. Quelle est la période de diffusion de ces messages ?
+
Dans le cadre de ce TP, afin de pouvoir observer les annonces dans le captures wireshark, nous outrepassons la valeur par défaut de la période d'annonces, pour la fixer à 30 secondes à l'aide de la commande <tt>ipv6 nd ra-interval 30</tt>
 +
 
 +
Dans l'outil de capture réseau, vérifier la diffusion périodique des annonces de routeur sur le réseau. <!--Quelle est la période de diffusion de ces messages ?-->
  
 
Analyser dans l'outil de capture le contenu des messages d'annonce de routeur pour identifier :  
 
Analyser dans l'outil de capture le contenu des messages d'annonce de routeur pour identifier :  
Line 222: Line 235:
 
* la valeur des durées de préférence et de validité du préfixe.
 
* la valeur des durées de préférence et de validité du préfixe.
  
=== Connecter PC1 au réseau ===
+
=== Connecter PC-1 au réseau ===
  
Sur '''PC1''', activer l'interface <tt>eth0</tt> pour simuler la connexion d'une nouvelle station au réseau.
+
Sur '''PC-1''', activer l'interface <tt>eth0</tt> pour simuler la connexion d'une nouvelle station au réseau.
  apprenant@MOOCIPv6:~$ '''sudo ifconfig eth0 up'''
+
  root@PC-1::c1:~# '''ifconfig eth0 up'''
  
 
Observez maintenant la configuration réseau de l'interface <tt>eth0</tt> et celle de la table de routage IPv6.
 
Observez maintenant la configuration réseau de l'interface <tt>eth0</tt> et celle de la table de routage IPv6.
  apprenant@MOOCIPv6:~$ '''ifconfig'''
+
  root@PC-1::c1:~# '''ifconfig'''
  apprenant@MOOCIPv6:~$ '''route -A inet6'''
+
  root@PC-1::c1:~# '''route -A inet6'''
Quelles sont les configurations que PC1 a pu automatiquement effectuer grâce à la configuration sans état ?
+
Quelles sont les configurations que PC-1 a pu automatiquement effectuer grâce à la configuration sans état ?
 +
 
 +
Quelles sont les adresses IPv6 de l'interface eth0 de PC-1 ? Que constatez vous pour la valeur de l'identifiant d"interface (IID] de ces adresses ?
  
Dans l'outil de capture, analysez les échanges entre '''R1''' et '''PC1''' pour identifier :
+
Dans l'outil de capture, analysez les échanges entre '''R1''' et '''PC-1''' pour identifier :
* les messages envoyés par PC1 pour solliciter la configuration '''sans état''' ;
+
* les messages envoyés par PC-1 pour solliciter la configuration '''sans état''' ;
 
* les messages envoyés par R1 en réponse à ces sollicitations ;
 
* les messages envoyés par R1 en réponse à ces sollicitations ;
* les messages envoyés par PC1 pour valider les paramètres réseau configurés automatiquement.
+
* les messages envoyés par PC-1 pour valider ses paramètres réseau configurés automatiquement.
  
Valider la configuration en testant l'accessibilité de '''R1''' et '''R2''' depuis '''PC1'''.
+
Valider la configuration en testant l'accessibilité de '''R1''' et '''R2''' depuis '''PC-1'''.
  apprenant@MOOCIPv6:~$ '''ping6 -c 5 fd75:e4d9:cb77:1::ffff'''
+
  root@PC-1::c1:~# '''ping6 -c 5 fd75:e4d9:cb77:1::1'''
  apprenant@MOOCIPv6:~$ '''ping6 -c 5 fd75:e4d9:cb77::1'''
+
  root@PC-1::c1:~# '''ping6 -c 5 fd75:e4d9:cb77::1'''  
  apprenant@MOOCIPv6:~$ '''ping6 -c 5 fd75:e4d9:cb77::2'''
+
  root@PC-1::c1:~# '''ping6 -c 5 fd75:e4d9:cb77::2'''
  
 
== Etape 3 : Auto-configuration ''avec état'' pour PC-2 ==
 
== Etape 3 : Auto-configuration ''avec état'' pour PC-2 ==
  
Vous allez maintenant mettre en oeuvre la configuration automatique '''avec état''' sur le sous-réseau R2-PC2. À l'instar de la configuration automatique '''sans état''', ce mode de configuration permet de centraliser les paramètres réseau sur un équipement administré et d'automatiser leur mise en oeuvre sur la station se connectant au réseau.
+
Vous allez maintenant mettre en oeuvre la configuration automatique '''avec état''' sur le sous-réseau R2 - PC2. À l'instar de la configuration automatique '''sans état''', ce mode de configuration permet de centraliser les paramètres réseau sur un équipement administré et d'automatiser leur mise en oeuvre sur la station se connectant au réseau.
  
 
La configuration '''avec état''' permet par contre, à l'administrateur, de mieux contrôler les adresses configurées par cette méthode. Il va ainsi pouvoir indiquer explicitement quelles adresses seront attribuées aux interfaces. Les adresses configurées au moment de la connexion sont donc stables, prévisibles et connues avant la première connexion de la station.  
 
La configuration '''avec état''' permet par contre, à l'administrateur, de mieux contrôler les adresses configurées par cette méthode. Il va ainsi pouvoir indiquer explicitement quelles adresses seront attribuées aux interfaces. Les adresses configurées au moment de la connexion sont donc stables, prévisibles et connues avant la première connexion de la station.  
  
Dans cette activité pratique, vous allez utiliser ce mode de configuration pour PC2, qui va tenir lieu dans la suite de serveur de noms. L'adresse d'un tel serveur étant par la suite à configurer sur les autres machines de la plateforme, la stabilité de cette adresse est donc fortement recommandée.
+
Dans cette étape, vous allez utiliser ce mode de configuration pour SRV-3, qui va tenir lieu dans la suite de serveur de noms. L'adresse d'un tel serveur étant par la suite à configurer sur les autres machines de la plateforme, la stabilité de cette adresse est donc fortement recommandée.
  
 
Les fonctions du protocole DHCPv6 seront réparties sur le réseau de la manière suivante :  
 
Les fonctions du protocole DHCPv6 seront réparties sur le réseau de la manière suivante :  
* le serveur DHCPv6 sera déployé sur '''R2''' ;
+
* le serveur DHCPv6 sera déployé sur '''SRV-3''';
* le client DHCPv6 sera déployé sur '''PC2'''.
+
* le client DHCPv6 sera déployé sur '''PC-2''';
L'étape 4 permettra de voir la mise en oeuvre d'un relai DHCPv6.
+
* un relai DHCPv6 devra être activé sur '''R2'''.
  
 
<center>
 
<center>
[[Image:MOOC_Act35_Etape2.png|400px|thumb|center|Figure 5: Localisation du client et du serveur DHCPv6.]]
+
[[Image:MoocSession5_act36_autoconf1_20190605.png|400px|thumb|center|Figure 5: Localisation du client et du serveur DHCPv6.]]
 
</center>
 
</center>
  
=== Configurer le serveur DHCPv6 sur R2 ===
+
=== Configurer le serveur DHCPv6 sur SRV-3===
  
 
Le serveur DHCPv6 a la possibilité d'attribuer les adresses selon 2 modes :  
 
Le serveur DHCPv6 a la possibilité d'attribuer les adresses selon 2 modes :  
 
* Statique : les adresses sont fixées au préalable par machine en fonction de leur DUID ;
 
* Statique : les adresses sont fixées au préalable par machine en fonction de leur DUID ;
 
* Dynamique : l'adresse à attribuer est choisie à la première requête dans une plage d'adresses définie par l'administrateur. L'attribution sera ensuite enregistrée pour les prochaines demandes.
 
* Dynamique : l'adresse à attribuer est choisie à la première requête dans une plage d'adresses définie par l'administrateur. L'attribution sera ensuite enregistrée pour les prochaines demandes.
C'est le second mode d'attribution que vous allez mettre en oeuvre pour configurer le serveur DHCPv6 sur R2.
+
C'est le second mode d'attribution que vous allez mettre en oeuvre pour configurer le serveur DHCPv6.
  
 +
<!--
 
La plage d'adresses disponibles pour l'attribution dynamique va s'étendre sur les 16 adresses possibles sur le préfixe <tt>fd75:e4d9:cb77:2::c0/124</tt>. La première adresse disponible sera donc <tt>fd75:e4d9:cb77:2::c0</tt>, la dernière <tt>fd75:e4d9:cb77:2::cf</tt>.
 
La plage d'adresses disponibles pour l'attribution dynamique va s'étendre sur les 16 adresses possibles sur le préfixe <tt>fd75:e4d9:cb77:2::c0/124</tt>. La première adresse disponible sera donc <tt>fd75:e4d9:cb77:2::c0</tt>, la dernière <tt>fd75:e4d9:cb77:2::cf</tt>.
 +
-->
 +
La plage d'adresses disponibles pour l'attribution dynamique va s'étendre sur les 10 adresses possibles, la première adresse disponible sera donc <tt>fd75:e4d9:cb77:2::20</tt>, la dernière <tt>fd75:e4d9:cb77:2::29</tt>.
  
Le serveur DHCPv6 sous VyOS est un service qui se configure en mode '''administrateur''' :
+
Sur SRV-3 la configuration du paquet isc-dhcpv6-server est déjà appliquée ainsi:
  vyos@vyos:$ '''configure'''
+
  root@SRV-3::c3: $ '''cat /etc/dhcp/dhcpd6.conf'''
vyos@vyos# '''set service dhcpv6-server  
+
Relancer ce service isc-dhcpv6-server avant de poursuivre.
                  shared-network-name LAN subnet fd75:e4d9:cb77:2::/64
+
root@SRV-3::c3: $ '''service isc-dhcp-server6 restart'''
                  address-range start fd75:e4d9:cb77:2::c0 stop fd75:e4d9:cb77:2::cf'''
+
vyos@vyos# '''commit'''
+
  
La ligne configurant le service définit :
+
Lancer la capture sur le réseau R2 - PC2.
* par le mot clé <tt> shared-network-name</tt>, un identifiant pour le sous-réseau correspondant à la configuration ;
+
* par le mot clé <tt>subnet</tt>, un préfixe IPv6 permettant de déterminer l'interface sur lequel s'applique la configuration ;
+
* par les mots clés <tt>address-range start ... stop</tt>, la plage d'adresse pour l'attribution dynamique.
+
 
+
La configuration générée par la commande peut être vérifiée par la commande
+
vyos@vyos# '''show service'''.
+
 
+
Lancer la capture sur le réseau R2-PC2.
+
  
 
La configuration automatique '''avec état''' nécessite toujours la diffusion des annonces de routeur, ne serait-ce que pour annoncer l'adresse du routeur par défaut. Il faut donc activer sur '''R2''' les annonces de routeurs. Ces messages vont de plus présenter 2 drapeaux (''flags'') spécifiques à l'auto-configuration '''avec état''' :  
 
La configuration automatique '''avec état''' nécessite toujours la diffusion des annonces de routeur, ne serait-ce que pour annoncer l'adresse du routeur par défaut. Il faut donc activer sur '''R2''' les annonces de routeurs. Ces messages vont de plus présenter 2 drapeaux (''flags'') spécifiques à l'auto-configuration '''avec état''' :  
  
  vyos@vyos:~$ '''vtysh'''
+
  r2# '''configure terminal'''
vyos# '''configure terminal'''
+
  r2(config)# '''interface eth0'''
  vyos(config)# '''interface eth0'''
+
  r2(config-if)# '''no ipv6 nd suppress-ra'''
  vyos(config-if)# '''no ipv6 nd suppress-ra'''
+
  r2(config-if)# '''ipv6 nd prefix fd75:e4d9:cb77:2::/64 no-autoconfig'''
  vyos(config-if)# '''ipv6 nd prefix fd75:e4d9:cb77:2::/64 no-autoconfig'''
+
  r2(config-if)# '''ipv6 nd managed-config-flag'''
  vyos(config-if)# '''ipv6 nd managed-config-flag'''
+
r2(config-if)# '''end'''
 +
r2#
  
 
La commande <tt>ipv6 nd prefix</tt> présente l'option <tt>no-autoconfig</tt> pour interdire aux stations se connectant de configurer leurs adresses à partir de ce préfixe. La commande <tt>ipv6 nd managed-config-flag</tt> va permettre d'indiquer aux stations que la configuration automatique '''avec état''' est disponible sur ce réseau.
 
La commande <tt>ipv6 nd prefix</tt> présente l'option <tt>no-autoconfig</tt> pour interdire aux stations se connectant de configurer leurs adresses à partir de ce préfixe. La commande <tt>ipv6 nd managed-config-flag</tt> va permettre d'indiquer aux stations que la configuration automatique '''avec état''' est disponible sur ce réseau.
  
=== Connecter PC2 au réseau ===
+
=== Connecter PC-2 au réseau ===
  
Activer l'interface <tt>eth0</tt> de '''PC2'''.  
+
Desactiver puis réactiver l'interface <tt>eth0</tt> de '''PC-2'''.  
  apprenant@MOOCIPv6:~$ '''sudo ifconfig eth0 up'''
+
  root@PC-2::c2:~$ '''ifconfig eth0 down'''
 +
root@PC-2::c2:~$ '''ifconfig eth0 up'''
  
Dans la capture, vérifier le contenu des messages d'annonce de routeur, notamment les drapeaux ("Managed address configuration" de l'annonce et "Autonomous address-configurationflag(A) de l'option préfixe) qui ont été positionnés par la configuration précédente.
+
Dans la capture, vérifier le contenu des messages d'annonce de routeur, notamment pour le message d'annonce du préfixe que les drapeaux ("Managed address configuration" est à "1" et "Autonomous address-configurationflag(A) de l'option préfixe est à "0") qui ont été positionnés par la configuration précédente.
  
Vérifier la configuration réseau de '''PC2'''.
+
Vérifier la configuration réseau de '''PC-2'''.
  apprenant@MOOCIPv6:~$ '''ifconfig'''
+
  root@PC-2::c2:~$ '''ifconfig'''
  apprenant@MOOCIPv6:~$ '''route -A inet6'''
+
  root@PC-2::c2:~$ '''route -A inet6'''
  
Analyser les échanges entre '''R2''' et '''PC2''' dans l'outil de capture réseau. Expliquer les différences avec les échanges entre '''R1''' et '''PC1'''.
+
Analyser les échanges entre '''R2''' et '''PC-2''' dans l'outil de capture réseau. Expliquer les différences avec les échanges entre '''R1''' et '''PC-1'''.
  
'''PC2''' n'a pas encore configuré d'adresse IPv6 car le message d'annonce de routeur interdit la configuration automatique '''sans état'''. Le drapeau annonçant la configuration automatique '''avec état''' est censé indiquer à '''PC2''' d'initier une requête DHCPv6. Or, dans le système Linux, celle-ci doit encore être lancée manuellement.
+
'''PC-2''' n'a pas encore configuré d'adresse IPv6 routable car le message d'annonce de routeur interdit la configuration automatique '''sans état'''. Le drapeau annonçant la configuration automatique '''avec état''' est censé indiquer à '''PC-2''' d'initier une requête DHCPv6. Or, dans le système Linux, celle-ci doit encore être lancée manuellement.
  
Lancer le client DHCPv6 sur '''PC2'''.
+
Lancer le client DHCPv6 sur '''PC-2'''.
  apprenant@MOOCIPv6:~$ '''sudo dhclient -6 eth0'''
+
  root@PC-2::c2:~$ '''dhclient -6 eth0'''
  
Vérifier la configuration réseau de '''PC2'''.
+
Oupps, la commande ne rend pas la main. Stoppez la par l'appui simultané des touche ''CTRL+C''
apprenant@MOOCIPv6:~$ '''ifconfig'''
+
apprenant@MOOCIPv6:~$ '''route -A inet6'''
+
  
Analyser les échanges entre '''R2''' et '''PC2''' dans l'outil de capture réseau.
+
Vérifier la configuration réseau de '''PC-2'''.
 +
root@PC-2::c2:~$ '''ifconfig'''
 +
<!-- root@PC-2::c2:~$ '''route -A inet6''' -->
  
Valider la prise en compte des requêtes de '''PC2''' sur le serveur DHCPv6 de '''R2''',
+
PC-2 n'a qu'une adresse locale de lien (LLA), il n'a toujours pas d'adresse routable basée sur le préfixe ULA de son réseau. Que se passe-t-il ?
vyos@vyos# '''show service'''
+
ou quitter le mode '''administrateur''' pour repasser en mode '''utilisateur''' et exécuter la commande d'affichage des baux dhcpv6.
+
vyos@vyos# '''exit'''
+
vyos@vyos$
+
vyos@vyos$ '''show dhcpv6 server lease'''
+
  
Tester la connectivité avec '''PC1''' depuis '''PC2'''.
+
Analyser les échanges entre '''R2''' et '''PC-2''' dans l'outil de capture réseau.
apprenant@MOOCIPv6:~$ '''ping6 -c 5 <adresse IPv6 de PC1>'''
+
  
Vous pouvez tester la stabilité de l'adresse IPv6 obtenue par DHCPv6 en simulant une déconnexion puis une reconnexion au réseau de l'interface <tt>eth0</tt> :
+
Quels sont les messages DHCPv6 emis par le client DHCPv6 de PC-2 ? Vers quelles adresse destination ? Ont ils fait l'objet d'une réponse ?
apprenant@MOOCIPv6:~$ '''sudo ifconfig eth0 down'''
+
apprenant@MOOCIPv6:~$ '''sudo ifconfig eth0 up'''
+
apprenant@MOOCIPv6:~$ '''sudo dhclient -6 eth0'''
+
apprenant@MOOCIPv6:~$ '''ifconfig'''
+
  
'''Note'''. - Si vous rencontrez des problèmes sur les configurations de cette étape et vous n'arrivez pas à valider les configurations, vous pouvez étudier une configuration fonctionnelle en démarrant la plateforme par l'icône ayant le nom de l'étape suivante disponible dans le dossier '''TP3''' sur le bureau de la machine virtuelle. Vous pourrez ensuite commencer l'étape suivante à partir de cette configuration. Afin de ne pas surcharger votre machine virtuelle, il est conseillé de ne pas démarrer la plateforme de l'étape suivante sans avoir au préalable stoppé la plateforme en cours d'utilisation.
+
Observer la '''non prise en compte des requêtes de PC-2''' sur le serveur DHCPv6, en exécutant la commande d'affichage des baux dhcpv6 sur '''SRV-3''':
 +
root@SRV-3::c3:~$ '''cat /var/lib/dhcp/dhcpd6.leases'''
 +
 
 +
Aucun bail n'est actif. Nous constatons que le serveur DHCPv6 ne reçoit pas de requêtes. Pourquoi ?
 +
 
 +
Le serveur DHCPv6, n'est pas sur le même réseau que PC-2, nous devons activer le relai DHCPv6 sur R2, voyons cela ci-après;
 +
 
 +
=== Configurer le relai DHCPv6 sur R2 ===
 +
 
 +
Sur ''' R2'''  :
 +
r2# '''exit'''
 +
vyos@r2:~$ '''configure'''
 +
[edit]
 +
vyos@r2# '''set service dhcpv6‐relay listen-interface eth0 address fd75:e4d9:cb77:2::2 '''
 +
vyos@r2# '''set service dhcpv6-relay upstream-interface eth3 address fd75:e4d9:cb77:3::c3 '''
 +
vyos@r2# '''commit '''
 +
vyos@r2:~$
 +
 
 +
''' R2 ''' est maintenant configuré avec la fonction de relai. La première commande permettent de désigner l'interface où le logiciel de relayage doit être en écoute, ici eth0 (pour recevoir les requêtes du client), et la deuxième commande permet de relayer en Unicast la requête sur eth3 vers le serveur SRV-3.
 +
 
 +
Relancer maintenant le client DHCPv6 de PC-2, puis vérifier les adresses de son interface eth0.
 +
root@PC-2::c2:~# '''dhclient -6 eth0'''
 +
root@PC-2::c2:~# '''ifconfig eth0 '''
 +
PC-2 dispose maintenant d'une adresse routable (ULA). Quelle est sa valeur ? Quelle est la valeur de l'identifiant d'interface de cette adresse ?
 +
Dans la capture wireshark, quels ont été les échanges DHCPv6 ?
 +
 
 +
Après avoir relevé l'adresse ULA de PC-1, tester la connectivité avec '''PC-1''' depuis '''PC-2'''.
 +
root@PC-2::c2:~# '''ping6 -c 5 ''adresse IPv6 ULA de PC-1'' '''
 +
 
 +
Vous pouvez tester la stabilité de l'adresse IPv6 obtenue par DHCPv6 en simulant une déconnexion puis une reconnexion au réseau de l'interface <tt>eth0</tt> :
 +
root@PC-2::c2:~# '''ifconfig eth0 down'''
 +
root@PC-2::c2:~# '''ifconfig eth0 up '''
 +
root@PC-2::c2:~# '''dhclient -6 eth0'''
 +
root@PC-2::c2:~# '''ifconfig eth0'''
 +
root@PC-2::c2:~# '''route -A inet6'''
  
 
== Etape 4 : Configuration du serveur de noms ==
 
== Etape 4 : Configuration du serveur de noms ==
  
Lors de cette étape, vous allez mettre en oeuvre un service de nommage pour la plateforme. Ce service va permettre d'utiliser des noms à la place des (longues) adresses IPv6 lorsque vous devez désigner une machine distante comme, par exemple, lors d'un test d'accessibilité.
+
Lors de cette étape, vous allez mettre en oeuvre un service de nommage pour la plateforme. Ce service va permettre d'utiliser des noms à la place des ''longues'' adresses IPv6 lorsque vous devez désigner une machine distante comme, par exemple, lors d'un test d'accessibilité.
  
Le service de nommage sera basé sur le logiciel Bind, très communément utilisé dans l'Internet. Ce logiciel offre les fonctions de serveur de noms, ainsi que de serveur de résolution récursif. Notre plateforme n'étant pas connectée à l'Internet et ne pouvant pas être liée à l'arbre récursif racine du service de nommage, nous utiliserons une zone de nommage propre <tt>*.tp</tt>. Le serveur de résolution sera le même serveur que celui pour les noms. Ces fonctions seront mises en oeuvre sur '''PC2'''.
+
Le service de nommage sera basé sur le logiciel Bind, très communément utilisé dans l'Internet. Ce logiciel offre les fonctions de serveur de noms, ainsi que de serveur de résolution récursif. Notre plateforme n'étant pas connectée à l'Internet et ne pouvant pas être liée à l'arbre récursif racine du service de nommage, nous utiliserons une zone TLD (''Top Level Domain'') de nommage propre <tt>*.tp</tt>. Le serveur de résolution sera le même serveur que celui pour les noms. Ces fonctions seront mises en oeuvre sur '''SRV-3'''.
  
Le serveur Bind installé sur '''PC2''' possède différents fichiers définissant :  
+
Le serveur Bind installé sur '''SRV-3''' possède différents fichiers définissant :  
 
* le nommage direct dans la zone <tt>*.tp</tt> ;
 
* le nommage direct dans la zone <tt>*.tp</tt> ;
 
* le nommage inversé pour la zone correspondant au préfixe de la plateforme <tt>fd75:e4d9:cb77::/48</tt>.
 
* le nommage inversé pour la zone correspondant au préfixe de la plateforme <tt>fd75:e4d9:cb77::/48</tt>.
Line 355: Line 389:
 
'''Note'''. - Chaque zone possède un numéro de série appelé, dans la configuration, <tt>serial</tt>. Il s'apparente à un numéro de version permettant de repérer les informations les plus à jour pour la zone. Il est donc nécessaire d'incrémenter ce numéro <tt>serial</tt> à chaque modification du fichier de la zone.
 
'''Note'''. - Chaque zone possède un numéro de série appelé, dans la configuration, <tt>serial</tt>. Il s'apparente à un numéro de version permettant de repérer les informations les plus à jour pour la zone. Il est donc nécessaire d'incrémenter ce numéro <tt>serial</tt> à chaque modification du fichier de la zone.
  
Sur '''PC2''', modifier le fichier <tt>/usr/local/etc/bind/db.tp</tt> :
+
Sur '''SRV-3''', modifier le fichier <tt> /etc/bind/db.tp</tt> :
  apprenant@MOOCIPv6:~$  '''sudo nano -w /usr/local/etc/bind/db.tp'''
+
  root@SRV-3::c3:~$# '''nano -w /etc/bind/db.tp'''
  
Modifier :
+
''''Rappel : '''' ''Dans l'éditeur <tt>nano</tt> 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. ''
 +
 
 +
Modifier :  
 +
* incrémenter la valeur du numéro de série,
 +
* ajuster les adresse de pc1 et pc2 au valeur des adresses ULA qu'ils se sont alloués par auto-configuration.
 
  ...
 
  ...
 
  ...
 
  ...
  '''2015102200''' ; serial     
+
  '''2019060601''' ; serial     
 
  ...  
 
  ...  
 
  ...
 
  ...
  '''pc1        IN    AAAA   <adresse_PC1(Utiliser ifconfig dans PC1, fd75:e4d9:cb77:1::x)>'''
+
  '''pc1        IN    AAAA   ''adresse_PC1(Utiliser ifconfig sur PC-1, fd75:e4d9:cb77:1::x)'' '''
  '''pc2        IN    AAAA  <adresse_PC2(Utiliser ifconfig dans PC2, fd75:e4d9:cb77:2::x)>'''
+
  '''pc2        IN    AAAA  ''adresse_PC2(Utiliser ifconfig sur PC-2, fd75:e4d9:cb77:2::x)'' '''
'''r1-eth1    IN    AAAA    fd75:e4d9:cb77::1'''
+
srv        IN    AAAA    fd75:e4d9:cb77:3::c3
  '''r2-eth1    IN    AAAA    fd75:e4d9:cb77::2'''
+
r1-eth1    IN    AAAA    fd75:e4d9:cb77::1
 
+
  r2-eth1    IN    AAAA    fd75:e4d9:cb77::2
 +
...
  
Exemple sur la modification du fichier /usr/local/etc/bind/db.tp :
+
Exemple sur la modification du fichier /etc/bind/db.tp :
 
  ...
 
  ...
 
  ...
 
  ...
  2015102200 ; serial
+
  20190606'''01'''; serial
 
  ...
 
  ...
 
  ...
 
  ...
  pc1            IN    AAAA    fd75:e4d9:cb77:1:200:abff:fee2:8c00
+
  pc1            IN    AAAA    fd75:e4d9:cb77:1:68f7:7bff:fe8f:a80d
  pc2            IN    AAAA    fd75:e4d9:cb77:2::c0
+
  pc2            IN    AAAA    fd75:e4d9:cb77:2::29
 +
srv            IN    AAAA    fd75:e4d9:cb77:3::c3
 
  r1-eth1        IN    AAAA    fd75:e4d9:cb77::1
 
  r1-eth1        IN    AAAA    fd75:e4d9:cb77::1
 
  r2-eth1        IN    AAAA    fd75:e4d9:cb77::2
 
  r2-eth1        IN    AAAA    fd75:e4d9:cb77::2
  
 
Lancer le logiciel de serveur de nom BIND :  
 
Lancer le logiciel de serveur de nom BIND :  
  apprenant@MOOCIPv6:~$ '''sudo named -c /usr/local/etc/bind/named.conf'''
+
  root@SRV-3::c3:~$# '''named-checkconf -z'''
 +
root@SRV-3::c3:~$# '''named -c /etc/bind/named.conf'''
 +
root@SRV-3::c3:~$# '''service bind9 restart'''
  
 
Pour tester la configuration que vous venez d'effectuer, il faut maintenant interroger le serveur de nom pour un nom de la zone. Il existe des outils sous Linux permettant de faire explicitement ces requêtes, tels que <tt>host</tt> ou <tt>dig</tt>.
 
Pour tester la configuration que vous venez d'effectuer, il faut maintenant interroger le serveur de nom pour un nom de la zone. Il existe des outils sous Linux permettant de faire explicitement ces requêtes, tels que <tt>host</tt> ou <tt>dig</tt>.
  
Tester la configuration en local sur '''PC2''' en interrogeant le serveur de nom local :
+
Tester la configuration en local sur '''SRV-3''' en interrogeant le serveur de nom local sur les noms pc1.tp, pc2.tp, ... :
  apprenant@MOOCIPv6:~$ '''host pc1.tp ::1'''
+
  root@SRV-3::c3:~$# '''host pc1.tp ::1'''
 +
root@SRV-3::c3:~$# '''host pc2.tp ::1'''
 +
root@SRV-3::c3:~$# '''host srv.tp ::1'''
 
Le premier argument de la commande <tt>host</tt> indique le nom à rechercher, le second le serveur à interroger (ici l'adresse IPv6 correspondant à ''localhost'').
 
Le premier argument de la commande <tt>host</tt> indique le nom à rechercher, le second le serveur à interroger (ici l'adresse IPv6 correspondant à ''localhost'').
  
 
Pour que la résolution de nom soit disponible depuis les autres commandes du système, il est nécessaire que l'adresse du serveur soit renseignée au niveau du système. Sous Linux, cette configuration se fait dans le fichier <tt>/etc/resolv.conf</tt>. Normalement, ce fichier doit indiquer l'adresse d'un serveur de résolution récursif. Mais notre plateforme n'étant pas reliée à l'Internet, nous utiliserons directement le serveur de noms que nous venons de configurer.
 
Pour que la résolution de nom soit disponible depuis les autres commandes du système, il est nécessaire que l'adresse du serveur soit renseignée au niveau du système. Sous Linux, cette configuration se fait dans le fichier <tt>/etc/resolv.conf</tt>. Normalement, ce fichier doit indiquer l'adresse d'un serveur de résolution récursif. Mais notre plateforme n'étant pas reliée à l'Internet, nous utiliserons directement le serveur de noms que nous venons de configurer.
  
Vérifier la configuration du serveur de noms pour le système :
+
Vérifier la configuration du serveur de noms pour le système PC-2 :
  apprenant@MOOCIPv6:~$ '''cat /etc/resolv.conf'''
+
  root@PC-2::c2:~$# '''cat /etc/resolv.conf'''
  nameserver ::1
+
search tp.
Cette configuration permet d'utiliser le serveur de noms local depuis les autres commandes du système.
+
  nameserver fd75:e4d9:cb77:3::c3
 +
 
 +
Cette configuration permet d'utiliser le serveur de noms SRV-3 depuis les autres commandes du système.
  
 
Vérifier la disponibilité de la résolution de nom à partir de l'outil <tt>ping6</tt> :
 
Vérifier la disponibilité de la résolution de nom à partir de l'outil <tt>ping6</tt> :
  apprenant@MOOCIPv6:~$ '''ping6 -c 5 r2-eth1.tp'''
+
  root@PC-2::c2:~$# '''ping6 -c 5 r2-eth1.tp'''
  apprenant@MOOCIPv6:~$ '''ping6 -c 5 r1-eth1.tp'''
+
  root@PC-2::c2:~$# '''ping6 -c 5 r1-eth1.tp'''
  apprenant@MOOCIPv6:~$ '''ping6 -c 5 pc1.tp'''
+
  root@PC-2::c2:~$# '''ping6 -c 5 pc1.tp'''
  
Les commandes entrées sur '''PC2''' peuvent maintenant utiliser des noms à la place des adresses IPv6.
+
Les commandes entrées sur '''PC-2''' peuvent maintenant utiliser des noms à la place des adresses IPv6.
  
 
=== Configurer le nommage inversé ===
 
=== Configurer le nommage inversé ===
  
Pour calculer les noms inversés à partir des adresses IPv6, il est possible d'utiliser '''ipv6calc'''. Cet outil est disponible dans la machine virtuelle Debian qui vous sert à lancer l'outil GNS3.
+
Pour calculer les noms inversés à partir des adresses IPv6, il est possible d'utiliser l'utilitaire '''sipcalc'''. Cet outil est disponible sur PC-2.
  
Ouvrir le terminal sur la machine virtuelle Debian.
+
  root@PC-2::c2:~$# '''sipcalc -a ''@IPv6(PC-1,R1,R2,PC-2)'' '''
  apprenant@MOOCIPv6:~$ '''ipv6calc -a <@IPv6(PC1,R1,R2,PC2)>'''
+
  
 
Exemple :   
 
Exemple :   
apprenant@MOOCIPv6:~$  '''ipv6calc -a fd75:e4d9:cb77:1:200:abff:fe2d:bf00'''
 
No input type specified, try autodetection...found type: ipv6addr
 
0.0.f.b.d.2.e.f.f.f.b.a.0.0.2.0.1.0.0.0.7.7.b.c.9.d.4.e.5.7.d.f.ip6.arpa.
 
  
Modifier le fichier correspondant à la zone de nommage inversé <tt>/usr/local/etc/bind/db.tp.ipv6.rev</tt> :
+
root@PC-2::c2:~# '''sipcalc -a fd75:e4d9:cb77:1:68f7:7bff:fe8f:a80d'''
  apprenant@MOOCIPv6:~$  '''sudo nano -w /usr/local/etc/bind/db.tp.ipv6.rev'''
+
-[ipv6 : fd75:e4d9:cb77:1:68f7:7bff:fe8f:a80d] - 0
 +
 +
[IPV6 INFO]
 +
Expanded Address        - fd75:e4d9:cb77:0001:68f7:7bff:fe8f:a80d
 +
Compressed address      - fd75:e4d9:cb77:1:68f7:7bff:fe8f:a80d
 +
Subnet prefix (masked)  - fd75:e4d9:cb77:1:68f7:7bff:fe8f:a80d/128
 +
Address ID (masked)    - 0:0:0:0:0:0:0:0/128
 +
Prefix address          - ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
 +
Prefix length          - 128
 +
Address type            - Unassigned
 +
Network range          - fd75:e4d9:cb77:0001:68f7:7bff:fe8f:a80d -
 +
                          fd75:e4d9:cb77:0001:68f7:7bff:fe8f:a80d
 +
 +
[V4INV6]
 +
Expanded v4inv6 address - fd75:e4d9:cb77:0001:68f7:7bff:254.143.168.13
 +
Compr. v4inv6 address  - fd75:e4d9:cb77:1:68f7:7bff:254.143.168.13
 +
 +
[IPV6 DNS]
 +
Reverse DNS (ip6.arpa)  -
 +
'''d.0.8.a.f.8.e.f.f.f.b.7.7.f.8.6.1.0.0.0'''.7.7.b.c.9.d.4.e.5.7.d.f.ip6.arpa.
 +
 +
En vous aidant de l'utilitaire <tt>sipcalc</tt> modifier le fichier correspondant à la zone de nommage inversé <tt>/etc/bind/db.tp.ipv6.rev</tt> :
 +
  root@SRV-3::c3:~$# '''nano -w /etc/bind/db.tp.ipv6.rev'''
  
 
'''Note'''. - Le paramètre '''-w''' de la commande nano est nécessaire pour s'assurer que chaque ressource ''record'' soit bien définie sur une seule ligne (Sans le '''-w''', l'éditeur insérera des sauts de ligne qui empêcheront le service ''named'' de fonctionner correctement).
 
'''Note'''. - Le paramètre '''-w''' de la commande nano est nécessaire pour s'assurer que chaque ressource ''record'' soit bien définie sur une seule ligne (Sans le '''-w''', l'éditeur insérera des sauts de ligne qui empêcheront le service ''named'' de fonctionner correctement).
 +
 +
''''Rappel : '''' ''Dans l'éditeur <tt>nano</tt> 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. ''
  
 
Modifier :
 
Modifier :
 +
Modifier :
 +
* incrémenter la valeur du numéro de série,
 +
* ajuster les adresses des '''parties inverses correspondantes aux champs SID et IID''' de pc1 et pc2 (''cf la partie affichée en gras dans l'exemple <tt>sipcalc</tt> précédent''), en effet le préfixe ULA inverse commun à ces adresses est déjà renseigné, grâce à la clause $ORIGIN).
 +
 +
 
  ...
 
  ...
 
  ...
 
  ...
Line 432: Line 503:
 
  '''2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0      IN  PTR  r2-eth1.tp.'''
 
  '''2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0      IN  PTR  r2-eth1.tp.'''
 
                      
 
                      
Exemple sur la modification du fichier <tt>/usr/local/etc/bind/db.tp.ipv6.rev</tt> :
+
Exemple sur la modification du fichier <tt>/etc/bind/db.tp.ipv6.rev</tt> :
 
  ...
 
  ...
 
  ...
 
  ...
  2015102200 ; serial
+
  20151022'''01''' ; serial
 
  ...
 
  ...
 
  ...
 
  ...
  0.0.c.8.2.e.e.f.f.f.b.a.0.0.2.0.1.0.0.0         IN PTR   pc1.tp.
+
  $ORIGIN 7.7.b.c.9.d.4.e.5.7.d.f.ip6.arpa.
  e.c.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.0         IN PTR   pc2.tp.
+
'''d.0.8.a.f.8.e.f.f.f.b.7.7.f.8.6.1.0.0.0 IN PTR     pc1.tp.'''
  1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0         IN  PTR  r1-eth1.tp.
+
  '''9.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.0 IN PTR     pc2.tp.'''
  2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0         IN  PTR  r2-eth1.tp.
+
  1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN  PTR  r1-eth1.tp.
 +
  2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN  PTR  r2-eth1.tp.
 +
 
 +
'''Note'''. - Le "'''.'''" final à la fin de chaque RR (''Ressource Record'') de type PTR est nécessaire. Ainsi noter bien <tt>d.0.8.a.f.8.e.f.f.f.b.7.7.f.8.6.1.0.0.0  IN PTR    pc1.tp'''''POINT-FINAL'''''</tt>
  
 
'''Note'''. - Le fichier de la zone pour le nommage inversé contient une directive,
 
'''Note'''. - Le fichier de la zone pour le nommage inversé contient une directive,
Line 447: Line 521:
 
permettant d'éviter de noter de manière redondante les éléments communs aux noms inversés.
 
permettant d'éviter de noter de manière redondante les éléments communs aux noms inversés.
  
'''Note'''. - Le "'''.'''" final à la fin de chaque RR (''Ressource Record'') de type PTR est nécessaire.
+
<!--
 
+
 
Relancer BIND.  
 
Relancer BIND.  
  apprenant@MOOCIPv6:~$ '''sudo killall named'''
+
  root@SRV-3::c3:~$# '''named-checkconf -z'''
  apprenant@MOOCIPv6:~$ '''sudo named -c /usr/local/etc/bind/named.conf'''
+
root@SRV-3::c3:~$# '''killall named'''
 
+
  root@SRV-3::c3:~$# '''named -c /etc/bind/named.conf'''
Tester la configuration en local sur PC2.
+
  root@SRV-3::c3:~$# '''service bond9 restart'''
  apprenant@MOOCIPv6:~$ '''dig -x <adresse_PC1>'''
+
-->
 
+
Relancer BIND.  
'''Note'''. - Si vous rencontrez des problèmes sur les configurations de cette étape et n'arrivez pas à valider les configurations, vous pouvez étudier une configuration fonctionnelle en démarrant la plateforme par l'icône '''Etape3''' disponible dans le dossier '''TP3''' sur le bureau de la machine virtuelle. Vous pourrez ensuite commencer l'étape 4 à partir de cette configuration. Afin de ne pas surcharger votre machine virtuelle, il est conseillé de ne pas lancer '''Etape3''' sans avoir au préalable stoppé l'étape précédente de GNS3.
+
root@SRV-3::c3:~$# '''named-checkconf -z'''
 
+
root@SRV-3::c3:~$# '''named -c /etc/bind/named.conf'''
 +
  root@SRV-3::c3:~$# '''service bind9 restart'''
  
 +
Tester la configuration en local sur PC-2.
 +
root@PC-2::c2:~$#  '''dig -x ''adresse_PC-1'' '''
 +
Vous pouvez également ajouter le paramètre <tt>+short</tt> pour un affichage plus concis.
 +
root@PC-2::c2:~$#  '''dig -x ''adresse_PC-1'' +short '''
 +
Tester également les autres enregistrements inversés que vous avez référencés dans la zone contenue dans le fichier fichier <tt>/etc/bind/db.tp.ipv6.rev</tt>
 +
root@PC-2::c2:~$#  '''dig -x ''adresse_PC-2'' +short '''
  
 
== Etape 5 : Distribution des informations d'accès au service de noms par DHCPv6 ==
 
== Etape 5 : Distribution des informations d'accès au service de noms par DHCPv6 ==
  
Votre plateforme comporte maintenant un serveur permettant d'utiliser des noms à la place des adresses IPv6. Pour que ce serveur puisse être utilisé par les autres machines de la plateforme, le système de chaque machine peut être configuré manuellement avec l'adresse du serveur. Mais certaines de ces machines (notamment '''PC1''') utilisent la configuration automatique des paramètres réseau. Pour être cohérent, l'adresse du serveur de résolution récursif doit donc être, elle aussi, configurée automatiquement sur '''PC1'''.
+
Votre plateforme comporte maintenant un serveur permettant d'utiliser des noms à la place des adresses IPv6. Pour que ce serveur puisse être utilisé par les autres machines de la plateforme, le système de chaque machine peut être configuré manuellement avec l'adresse du serveur. Mais certaines de ces machines (notamment '''PC-1''') utilisent la configuration automatique des paramètres réseau. Pour être cohérent, l'adresse du serveur de résolution récursif doit donc être, elle aussi, configurée automatiquement sur '''PC-1'''.
  
Il existe plusieurs méthodes pour effectuer cette configuration automatiquement, dont le RFC 6106, permettant d'inclure l'adresse dans les annonces de routeur, et DHCPv6. C'est cette dernière méthode que vous allez mettre en oeuvre. Vous allez réutiliser le serveur DHCPv6 configuré dans l'étape 2 pour qu'il transmette aussi l'adresse du serveur de résolution récursif. Pour que '''PC1''' puisse atteindre ce serveur, la configuration d'un relai DHCPv6 sur '''R1''' est alors nécessaire.
+
Il existe plusieurs méthodes pour effectuer cette configuration automatiquement, dont le RFC 6106, permettant d'inclure l'adresse dans les annonces de routeur, et DHCPv6. C'est cette dernière méthode que vous allez mettre en oeuvre. Vous allez réutiliser le serveur DHCPv6 configuré dans l'étape 2 pour qu'il transmette aussi l'adresse du serveur de résolution récursif. Pour que '''PC-1''' puisse atteindre ce serveur, la configuration d'un relai DHCPv6 sur '''R1''' est alors nécessaire.
  
 
<center>
 
<center>
[[image:MOOC_Act35_Etape4.png|400px|thumb|center|Figure 6: .Localisation des éléments du service DHCPv6.]]
+
[[image:MoocSession5_act36_autoconf2_20190604.png|400px|thumb|center|Figure 6: .Localisation des éléments du service DHCPv6.]]
 
</center>
 
</center>
  
 
=== Configurer le serveur DHCPv6 ===
 
=== Configurer le serveur DHCPv6 ===
  
Le serveur DHCPv6 sur '''R2''' doit être configuré pour transmettre l'adresse du serveur de résolution ainsi que pour accepter les requêtes relayées par R1 depuis son interface <tt>eth1</tt> connectée au réseau d'infrastructure le reliant à R1.
+
Le serveur DHCPv6 sur '''SRV-3''' doit être configuré pour transmettre l'adresse du serveur de résolution ainsi que pour accepter les requêtes relayées par R1 depuis son interface <tt>eth1</tt> connectée au réseau d'infrastructure le reliant à R1.
  
Sur R2, activer le serveur DHCPv6 :
+
Sur SRV-3, observer la configuration du serveur DHCPv6 ainsi:
  vyos@vyos:~$ '''configure'''
+
  root@SRV-3::c3:~$ '''cat /etc/dhcp/dhcpd6.conf'''
vyos@vyos# '''set service dhcpv6-server '''
+
            '''shared-network-name LAN2 subnet fd75:e4d9:cb77:1::/64
+
            '''address-range start fd75:e4d9:cb77:1::c1 stop fd75:e4d9:cb77:1::cf'''
+
vyos@vyos# '''set service dhcpv6-server '''
+
            '''shared-network-name LAN2 subnet fd75:e4d9:cb77:1::/64 '''
+
            '''name-server <adresse PC2>'''
+
vyos@vyos# '''set service dhcpv6-server '''
+
            '''shared-network-name INFRA subnet fd75:e4d9:cb77::/64'''
+
vyos@vyos# '''commit'''
+
 
+
'''Note'''. - Du fait d'une limitation du système VyOS, il n'est pas possible d'utiliser DHCPv6 uniquement pour transmettre l'adresse du serveur de résolution. La configuration d'une attribution d'adresse est alors nécessaire.
+
  
 
=== Configurer le relai DHCPv6 ===
 
=== Configurer le relai DHCPv6 ===
  
Sur R1 :
+
Sur R1, activer le relai DHCPv6 :
  vyos@vyos:~$ configure
+
  vyos@r1:~$ '''configure'''
vyos@vyos# '''set service dhcpv6‐relay listen-interface eth0'''
+
  vyos@r1# '''set service dhcpv6‐relay listen-interface eth0 address fd75:e4d9:cb77:1::1  '''
  vyos@vyos# '''set service dhcpv6‐relay listen-interface eth1'''
+
  vyos@r1# '''set service dhcpv6‐relay upstream-interface eth1 address fd75:e4d9:cb77:3::c3  '''
  vyos@vyos# '''set service dhcpv6-relay upstream-interface eth1 address fd75:e4d9:cb77::2'''
+
  vyos@r1# '''commit'''
  vyos@vyos# '''commit'''
+
  vyos@r1:~$
  vyos@vyos# '''exit'''
+
  
'''R1''' est maintenant configuré avec la fonction de relai. Les 2 premières commandes permettent de désigner les interfaces où le logiciel de relayage doit être en écoute, ici <tt>eth0</tt> (pour recevoir les requêtes du client) et <tt>eth1</tt> pour les réponses du serveur.
+
'''R1''' est maintenant configuré avec la fonction de relai. La première commande permet de désigner l'interface où le logiciel de relayage doit être en écoute, ici <tt>eth0</tt> (pour recevoir les requêtes du client) et la deuxième commande permet de relayer en Unicast les requêtes sur <tt>eth1</tt> vers le serveur.
  
 
Configurer les annonces de routeur pour le réseau PC1-R1.
 
Configurer les annonces de routeur pour le réseau PC1-R1.
  vyos@vyos:~$ '''vtysh'''
+
  vyos@r1:~$ '''vtysh'''
  vyos# '''configure terminal'''
+
  r1# '''configure terminal'''
  vyos(config)# '''interface eth0'''
+
  r1(config)# '''interface eth0'''
  vyos(config-if)# '''ipv6 nd other-config-flag'''
+
  r1(config-if)# '''ipv6 nd other-config-flag'''
  vyos(config-if)# '''exit'''
+
  r1(config-if)# '''end'''
  vyos(config)# '''exit'''
+
  r1# ''' '''
  
 
Les annonces de '''R1''' contiennent maintenant une indication que les autres paramètres réseau (dont l'adresse du serveur de résolution) doivent être récupérés par DHCPv6.
 
Les annonces de '''R1''' contiennent maintenant une indication que les autres paramètres réseau (dont l'adresse du serveur de résolution) doivent être récupérés par DHCPv6.
Line 513: Line 581:
 
   
 
   
 
Sur PC, lancer la requête DHCPv6 par la commande :   
 
Sur PC, lancer la requête DHCPv6 par la commande :   
  apprenant@MOOCIPv6:~$ '''sudo dhclient -6 eth0'''
+
  root@PC-1::c1:~$# '''dhclient -6 eth0'''
  
 
Vérifier ensuite les paramètres réseau obtenus par PC1.
 
Vérifier ensuite les paramètres réseau obtenus par PC1.
  
  apprenant@MOOCIPv6:~$ '''ifconfig'''
+
  root@PC-1::c1:~$# '''ifconfig'''
  apprenant@MOOCIPv6:~$ '''route -A inet6'''
+
  root@PC-1::c1:~$# '''cat /etc/resolv.conf'''
apprenant@MOOCIPv6:~$ '''cat /etc/resolv.conf'''
+
  (''Normalement'' nameserver ''doit être celui de SRV-3'')  
  (''Normalement'' nameserver ''doit être celui de PC2'')  
+
  
 
Tester maintenant la configuration en local sur PC1.
 
Tester maintenant la configuration en local sur PC1.
  apprenant@MOOCIPv6:~$ '''dig -t AAAA pc1.tp'''
+
  root@PC-1::c1:~$# '''dig -t AAAA pc1.tp'''
  apprenant@MOOCIPv6:~$ '''dig -x <adresse_PC1>'''
+
  root@PC-1::c1:~$# '''dig -x ''adresse_PC-1'' '''
  apprenant@MOOCIPv6:~$ '''ping6 -c 5 r2-eth1.tp'''
+
  root@PC-1::c1:~$# '''ping6 -c 5 r2-eth1.tp'''
 +
 
 +
=== Arrêt/Pause du simulateur ===
 +
Au besoin vous pouvez aussi figer l'exécution des équipements avec le bouton Pause ''"Suspend All devices"'', voire arrêter les équipements avec le bouton Stop ''"Stop All devices"''.
 +
 
 +
L'état des équipements est sauvegardé en quittant. Pour quitter proprement GNS3, faire <tt>CTRL+Q</tt> ou faire, avec le menu déroulant ''File'' et l'action ''Quit''.
  
 
== Conclusion==
 
== Conclusion==
 +
Cette activité a été très complète. On remarquera que le travail de configuration du réseau a porté sur la configuration des routeurs. Les hôtes sont auto-configurés et ne nécessitent aucune activité particulière. Nous avons vu également comment déployer le service de nommage. Il est important de souligner que ce dernier se configure de la même manière en IPv4 qu'en IPv6. Il vous appartient maintenant à adapter vos compétences acquises aux besoins de fonctionnement de votre réseau en IPv6.

Latest revision as of 18:04, 16 January 2023

Activité 36: Configurez votre premier réseau en IPv6

L'objectif de cette activité pratique est de mettre en œuvre un réseau IPv6 d'une façon proche de l'opérationnel. Nous présenterons comment configurer les routeurs mais aussi les hôtes en s'appuyant sur l'auto-configuration. Les mécanismes de configuration automatique des paramètres réseau vise à simplifier les tâches de l'administrateur et améliorer l'expérience de l'utilisateur. Vous allez, dans cette activité, configurer un réseau pour mettre en œuvre :

  • l'auto-configuration sans état,
  • l'auto-configuration avec état par le protocole DHCPv6,
  • un service de noms afin d'associer un nom à certaines adresses IPv6.

Comme le montre la figure 1, la topologie du réseau que vous allez utiliser est identique à l'activité pratique de la séquence 1 et 2. Les 3 réseaux seront considérés de la façon suivante :

  • le lien Net 0 composé des nœuds R1 - R2 est un sous-réseau d'infrastructure. Les mécanismes d'auto-configuration ne s'y appliquent pas ;
  • le lien Net 1 composé de R1 - PC-1 forme un sous-réseau destiné à recevoir des hôtes ayant un rôle de client. Le protocole de configuration automatique sans état est utilisé.
  • le lien Net 2 composé de R2 - PC-2 forme lui aussi un sous-réseau destiné à recevoir des hôtes mais avec un rôle de serveur. Le protocole de configuration automatique utilisé ici sera avec état.
  • le lien Net 3 composé R2 - SRV-3 forme lui aussi un sous réseau destiné à recevoir des hôtes mais avec un rôle de serveur. Le protocole de configuration sans état est utilisé.

Le plan d'adressage utilisé pour ces réseaux reprend le préfixe fd75:e4d9:cb77::/48

  • le préfixe fd75:e4d9:cb77::/64 est utilisé pour le sous-réseau d'infrastructure ;
  • le préfixe fd75:e4d9:cb77:1::/64 est utilisé pour le sous-réseau Net 1 ;
  • le préfixe fd75:e4d9:cb77:2::/64 est utilisé pour le sous-réseau Net 2 ;
  • le préfixe fd75:e4d9:cb77:3::/64 est utilisé pour le sous-réseau Net 3.

Imprégnez-vous de ce plan d'adressage, utilisant des adresses ULA (Unique Local Address). Nous allons le mettre progressivement en oeuvre dans cette plateforme.

Figure 1: Plan d'adressage utilisé.

Vous allez, dans une première étape, configurer le sous réseau d'infrastructure puis dans une seconde étape, configurer le sous-réseau de distribution Net1 en déployant l'auto-configuration sans état. La troisième étape consistera à déployer le protocole DHCPv6 sur le sous-réseau Net2. Enfin la quatrième et dernière étape, va nous amener à activer le serveur DNS. L'information de la disponibilité du service de nommage sera distribuée sur les différents sous-réseaux en utilisant DHCPv6. Dans cette activité, des captures des échanges seront effectuées pour illustrer les mécanismes de configuration présentés dans cette séquence. Prenez donc le temps d'étudier les messages et leur contenu.

Le support vous donne l'ensemble des opérations à réaliser pour aller jusqu'au bout de l'activité. Vous trouverez un résumé de ces commandes dans le Manuel Apprenant disponible dans l'onglet documentation du cours Objectif IPv6 du site de FUN.

Etape 0: Création des liens

Double cliquer sur le lien intitulé "moocipv6.gns3", présent dans la partie haute du bureau de votre machine virtuelle.

Vous devez restaurer le Snapshot (Activité-36) depuis Edit > Manage snapshots ce qui rechargera les configurations initiales des équipements.

Attendre que la fenêtre moocipv6-GNS3 apparaisse à l'écran comme présentée par la figure 2. Double cliquer sur la barre de titre de cette fenêtre pour qu'elle occupe la totalité de votre écran. Si besoin, vous pouvez ensuite recentrer l'image de la topologie dans la fenêtre centrale avec les boutons ascenseurs horizontal et vertical.

Liens physiques à supprimer

Pour commencer, vous devez effacer les liaisons entre les noeuds PC-1 - R1, R1 - R2 et R2 - PC-2, afin que le réseau de la plateforme ressemble à la fin à la figure 2. Ensuite, nous allons les reconstruire pas à pas. C'est seulement une fois les connexions physiques effectuées, que vous pourrez commencer les travaux de configuration.

Avant tout, il est possible d'afficher les numéros des interfaces des équipements représentés sur la maquette. Appuyer sur le bouton carré "a b c" situé juste en dessous du menu déroulant Device.

Vous pouvez maintenant placer votre pointeur sur chacun des liens connectés, sur chacun des commutateurs. Si vous avez bien sélectionné le lien, il doit être en surbrillance. Vous pouvez faire un clic droit et choisir "delete".

Figure 2: Topologie initiale.

Si malencontreusement, vous appuyez sur "start capture", placez-vous sur la fenêtre "topology Summary" en haut à droite. Appuyer sur le + d'un switch, choisir une interface et, avec le clic droit, choisir "stop all captures".

Une fois que vous avez effacé les 3 liens, nous pouvons commencer à construire correctement notre réseau.

Liens physiques à réaliser

Vous devez sélectionner l'outil "add a link" (câble en S avec une prise) situé sur le coté gauche, en bas. Une fois sélectionné, une croix rouge vous rappelle qu'il faudra le désélectionner une fois que vous aurez fini la création des liens, sinon toute autre action est inhibée.

  • PC1 - R1 : cliquer sur PC-1, puis sur Ethernet0, et glisser-déposer votre souris vers R1, puis sur Ethernet0: un lien apparait sur la figure.
  • R1 - R2 : cliquer sur R1, puis sur Ethernet1, et glisser-déposer votre souris vers R2. Choisir alors le port Ethernet1: un lien apparait sur la figure.
  • R2 - PC2 : cliquer sur R2, puis sur Ethernet0, et glisser-déposer votre souris vers PC2, choisir alors le port eth0 : un lien apparait sur la figure.
Figure 3: Topologie du réseau mise en place.

Pour vérifier si l'affectation des interfaces est conforme à la configuration initiale présentée à la figure 1 :

  • appuyer sur le bouton carré "a b c" situé juste en dessous du menu déroulant Node ;
  • soit vous immobilisez votre pointeur de souris sur un composant réseau, et un panneau décrit la liste des liens en place.

Activation des équipements

Si tout est correct, vous pouvez activer les équipements du réseau dans GNS3, à l'aide du bouton triangulaire vert démarrer "Start/Resume all devices".

Dans la fenêtre centrale les témoins verts des liens indiquent que les équipements démarrent, et sur la droite la fenêtre "Topology Summary" montre aussi les témoins verts des équipements réseaux.

Lorsque tous les noeuds sont actifs, il faut cliquer sur le bouton "Console connect to all devices" symbolisé par >_ situé à gauche du bouton triangulaire vert, juste en dessous du menu déroulant "Node". Ainsi vous aller faire apparaitre les consoles de contrôle pour les routeurs et pour les hôtes comme le montre la figure 4.

Les consoles de contrôle dites CLI (Command Line Interface) affichent le démarrage des différents équipements réseaux. Notons que le démarrage des PC est plus rapide que celui des routeurs (le temps de démarrage dépendant des capacités de votre machine: compter quelques minutes). Comptez entre trois et dix minutes, parfois plus. Une fois que tous les noeuds ont leur console avec l'invite pour se connecter comme le montre la figure 4, votre plateforme de réseau est dorénavant opérationnelle.

Figure 4: Ecran GNS3 avec les interfaces CLI.

Arrêt/Pause de GNS3

Au besoin vous pouvez aussi figer l'exécution des équipements avec le bouton Pause "Suspend all nodes", voire arrêter les équipements avec le bouton Stop "Stop all nodes".

L'état des équipements est sauvegardé en quittant. Pour quitter proprement GNS3, faire CTRL+Q ou faire, avec le menu déroulant File et l'action Quit.

Etape 1 : Configuration manuelle des routeurs R1 et R2

Nous allons détailler la démarche de configuration d'un routeur. Nous prendrons l'exemple sur le routeur R1.

Activation des interfaces

Pour vous loguer sur les routeurs R1 et R2, les identifiant/mot de passe sont vyos/vyos. (Aucun affichage de caractère n'est produit lorsqu'on entre le mot de passe). Passez en mode Quagga VyOS ainsi :

vyos@r1:~$ vtysh

Vérifiez l'état des interfaces. Rappel: la tabulation aide à la terminer automatiquement la saisie des commandes.

r1# show interface

Passez en mode de configuration

r1# configure terminal

Puis activez l'interface eth0 et eth1.

r1(config)# interface eth0
r1(config-if)# no shutdown
r1(config-if)# exit
r1(config)# interface eth1
r1(config-if)# no shutdown
r1(config-if)# do show interface
r1(config-if)# end
r1#  

Vérifiez l'état des interfaces.

r1# show interface

Vérifiez les informations détaillées des interfaces. Pour cela quitter le mode configuration:

r1# exit
r1@vyos:~$ show interface detail

Avant de passer à la suite, vous devez reprendre la même séquence sur R2.

Configuration des interfaces avec une adresse routable ULA

Configurez les adresses routables des interfaces du routeur R1:

vyos@r1:~$ vtysh
r1# configure terminal
r1(config)# interface eth0
r1(config-if)# ipv6 address fd75:e4d9:cb77:0001::1/64
r1(config-if)# exit
r1(config)# int eth1
r1(config-if)# ipv6 address fd75:e4d9:cb77:0000::1/64
r1(config-if)# exit
r1(config)# exit

Vérifiez votre saisie en affichant la configuration des interfaces.

r1# show interface

Nous l'avons vu dans l'activité de la séquence 2, les routeurs doivent connaitre les routes pour joindre les sous-réseaux. Il faut donc compléter la table de routage de chaque routeur.

Ajout des routes

Configuration du routage sur R1 : ajout d'une route vers Net 2.

r1# configure terminal
r1(config)# ipv6 route fd75:e4d9:cb77:0002::/64 fd75:e4d9:cb77:0000::2 eth1 
r1(config)# do show ipv6 route
r1(config)# exit
r1# 

Une route statique vers le réseau Net 2 doit être visible maintenant.

Nous venons de terminer la configuration du routeur R1. Il faut faire de nouveau la même chose pour le routeur R2 à savoir: activer les interfaces, configurer les interfaces avec une adresse ULA et ajouter les routes. Ce travail de configuration est similaire à celui de R1 mais en retenant l'adresse ULA des interfaces de R2 et la route pour atteindre Net 1.

Nous vous laissons répétez l'opération de configuration sur R2.

vyos@r2~$ vtysh
r2# configure terminal
r2(config)# interface eth0
r2(config-if)# ipv6 address fd75:e4d9:cb77:0002::2/64
r2(config-if)# exit
r2(config)# int eth1
r2(config-if)# ipv6 address fd75:e4d9:cb77:0000::2/64
r2(config-if)# end

Configuration du routage sur R2 : ajout d'une route vers Net 1.

r2# configure terminal
r2(config)# ipv6 route fd75:e4d9:cb77:0001::/64 fd75:e4d9:cb77:0000::1 eth1
r2(config)# do show ipv6 route
r2(config)# exit
r2# 

Une route statique vers le réseau Net 1 doit être visible maintenant.

Vérification de la connectivité

Nous allons maintenant vérifier que ce qui vient d'être fait fonctionne sans erreur. Pour cela nous allons effectuer des tests de connectivité entre les différentes interfaces des routeurs. Pour les communications à remises indirectes, nous vérifions également la route suivie.

  • R1 - R2; Depuis le routeur R1, essayez de joindre R2:
r1# ping ipv6 fd75:e4d9:cb77:0000::2

Stopper le ping par appui simultané des touches Ctrl+C

  • R1 - Net 2; Depuis le routeur R1, essayez de joindre l'interface eth0 de R2:
r1# ping ipv6 fd75:e4d9:cb77:2::2

Stopper le ping par appui simultané des touches Ctrl+C

r1# traceroute ipv6 fd75:e4d9:cb77:2::2
  • R2 - Net 1; Depuis le routeur R2, essayez de joindre l'interface eth0 de R1:
r2# ping ipv6 fd75:e4d9:cb77:1::1

Stopper le ping par appui simultané des touches Ctrl+C

r2# traceroute ipv6 fd75:e4d9:cb77:1::1

En l'absence d'erreur, le réseau d'infrastructure est maintenant opérationnel. Dans le cas contraire les adresses allouées et la longueur de leur préfixe sont à vérifier de même que les tables de routage.

Arrêt/Pause du simulateur

Au besoin vous pouvez aussi figer l'exécution des équipements avec le bouton Pause "Suspend All devices", voire arrêter les équipements avec le bouton Stop "Stop All devices".

L'état des équipements est sauvegardé en quittant. Pour quitter proprement GNS3, faire CTRL+Q ou faire, avec le menu déroulant File et l'action Quit.

Etape 2 : Auto-configuration sans état pour PC-1

Vérifier la configuration initiale du réseau

Sur R1, vérifier que l'interface eth0 est activée.

r1# exit
vyos@r1:~$ show interface detail

Les interfaces eth0 et eth1 doivent être activées et configurées.

Sur PC-1, vérifier que l'interface eth0 de PC-1 est désactivée

root@PC-1::c1:~$ ifconfig

Seule l'interface lo doit s'afficher. Dans le cas contraire vous pouvez désactiver l'interface eth0 puis revérfier

root@PC-1::c1:~$ ifconfig eth0 down
root@PC-1::c1:~$ ifconfig

Lancer alors la capture réseau sur le réseau R1 - PC1.

  1. Séléctionner le lien PC-1 - R1 (il doit apparaître surligné) puis faire un clic-droit.
  2. Choisir dans le menu Start capture.
  3. L'outil de capture réseau doit s'afficher.

Configurer les annonces de routeur sur R1

La configuration automatique sans état est contrôlée par la diffusion, sur le réseau, des messages d'annonce de routeur (Routeur Advertisement ou RA). Le routeur de ce réseau étant R1, c'est à lui de diffuser ces messages. Vous allez maintenant activer la diffusion des messages d'annonce sur l'interface eth0 du routeur R1.

vyos@r1:~$ vtysh
r1# configure terminal
r1(config)# interface eth0
r1(config-if)# no ipv6 nd suppress-ra
r1(config-if)# ipv6 nd prefix fd75:e4d9:cb77:1::/64
r1(config-if)# ipv6 nd ra-interval 30
r1(config-if)# exit
r1(config)# exit
r1#

La commande no ipv6 nd suppress-ra est en fait la négation d'une configuration par défaut de VyOS qui désactive la diffusion des annonces de routeur. La commande suivante ipv6 nd prefix fd75:e4d9:cb77:1::/64 permet de préciser à VyOS le préfixe à diffuser dans ces messages. Ce préfixe va permettre aux stations qui se connectent sur le réseau de connaitre le préfixe à utiliser pour configurer leurs adresses.

Dans le cadre de ce TP, afin de pouvoir observer les annonces dans le captures wireshark, nous outrepassons la valeur par défaut de la période d'annonces, pour la fixer à 30 secondes à l'aide de la commande ipv6 nd ra-interval 30

Dans l'outil de capture réseau, vérifier la diffusion périodique des annonces de routeur sur le réseau.

Analyser dans l'outil de capture le contenu des messages d'annonce de routeur pour identifier :

  • la source du message ;
  • la destination du message ;
  • le protocole utilisé pour le transport des annonces au dessus d'IPv6 ;
  • la valeur de la durée de validité de l'annonce ;
  • le préfixe annoncé sur le réseau ;
  • la valeur des durées de préférence et de validité du préfixe.

Connecter PC-1 au réseau

Sur PC-1, activer l'interface eth0 pour simuler la connexion d'une nouvelle station au réseau.

root@PC-1::c1:~# ifconfig eth0 up

Observez maintenant la configuration réseau de l'interface eth0 et celle de la table de routage IPv6.

root@PC-1::c1:~# ifconfig
root@PC-1::c1:~# route -A inet6

Quelles sont les configurations que PC-1 a pu automatiquement effectuer grâce à la configuration sans état ?

Quelles sont les adresses IPv6 de l'interface eth0 de PC-1 ? Que constatez vous pour la valeur de l'identifiant d"interface (IID] de ces adresses ?

Dans l'outil de capture, analysez les échanges entre R1 et PC-1 pour identifier :

  • les messages envoyés par PC-1 pour solliciter la configuration sans état ;
  • les messages envoyés par R1 en réponse à ces sollicitations ;
  • les messages envoyés par PC-1 pour valider ses paramètres réseau configurés automatiquement.

Valider la configuration en testant l'accessibilité de R1 et R2 depuis PC-1.

root@PC-1::c1:~# ping6 -c 5 fd75:e4d9:cb77:1::1
root@PC-1::c1:~# ping6 -c 5 fd75:e4d9:cb77::1 
root@PC-1::c1:~# ping6 -c 5 fd75:e4d9:cb77::2

Etape 3 : Auto-configuration avec état pour PC-2

Vous allez maintenant mettre en oeuvre la configuration automatique avec état sur le sous-réseau R2 - PC2. À l'instar de la configuration automatique sans état, ce mode de configuration permet de centraliser les paramètres réseau sur un équipement administré et d'automatiser leur mise en oeuvre sur la station se connectant au réseau.

La configuration avec état permet par contre, à l'administrateur, de mieux contrôler les adresses configurées par cette méthode. Il va ainsi pouvoir indiquer explicitement quelles adresses seront attribuées aux interfaces. Les adresses configurées au moment de la connexion sont donc stables, prévisibles et connues avant la première connexion de la station.

Dans cette étape, vous allez utiliser ce mode de configuration pour SRV-3, qui va tenir lieu dans la suite de serveur de noms. L'adresse d'un tel serveur étant par la suite à configurer sur les autres machines de la plateforme, la stabilité de cette adresse est donc fortement recommandée.

Les fonctions du protocole DHCPv6 seront réparties sur le réseau de la manière suivante :

  • le serveur DHCPv6 sera déployé sur SRV-3;
  • le client DHCPv6 sera déployé sur PC-2;
  • un relai DHCPv6 devra être activé sur R2.
Figure 5: Localisation du client et du serveur DHCPv6.

Configurer le serveur DHCPv6 sur SRV-3

Le serveur DHCPv6 a la possibilité d'attribuer les adresses selon 2 modes :

  • Statique : les adresses sont fixées au préalable par machine en fonction de leur DUID ;
  • Dynamique : l'adresse à attribuer est choisie à la première requête dans une plage d'adresses définie par l'administrateur. L'attribution sera ensuite enregistrée pour les prochaines demandes.

C'est le second mode d'attribution que vous allez mettre en oeuvre pour configurer le serveur DHCPv6.

La plage d'adresses disponibles pour l'attribution dynamique va s'étendre sur les 10 adresses possibles, la première adresse disponible sera donc fd75:e4d9:cb77:2::20, la dernière fd75:e4d9:cb77:2::29.

Sur SRV-3 la configuration du paquet isc-dhcpv6-server est déjà appliquée ainsi:

root@SRV-3::c3: $ cat /etc/dhcp/dhcpd6.conf

Relancer ce service isc-dhcpv6-server avant de poursuivre.

root@SRV-3::c3: $ service isc-dhcp-server6 restart

Lancer la capture sur le réseau R2 - PC2.

La configuration automatique avec état nécessite toujours la diffusion des annonces de routeur, ne serait-ce que pour annoncer l'adresse du routeur par défaut. Il faut donc activer sur R2 les annonces de routeurs. Ces messages vont de plus présenter 2 drapeaux (flags) spécifiques à l'auto-configuration avec état :

r2# configure terminal
r2(config)# interface eth0
r2(config-if)# no ipv6 nd suppress-ra
r2(config-if)# ipv6 nd prefix fd75:e4d9:cb77:2::/64 no-autoconfig
r2(config-if)# ipv6 nd managed-config-flag
r2(config-if)# end
r2#

La commande ipv6 nd prefix présente l'option no-autoconfig pour interdire aux stations se connectant de configurer leurs adresses à partir de ce préfixe. La commande ipv6 nd managed-config-flag va permettre d'indiquer aux stations que la configuration automatique avec état est disponible sur ce réseau.

Connecter PC-2 au réseau

Desactiver puis réactiver l'interface eth0 de PC-2.

root@PC-2::c2:~$ ifconfig eth0 down
root@PC-2::c2:~$ ifconfig eth0 up

Dans la capture, vérifier le contenu des messages d'annonce de routeur, notamment pour le message d'annonce du préfixe que les drapeaux ("Managed address configuration" est à "1" et "Autonomous address-configurationflag(A) de l'option préfixe est à "0") qui ont été positionnés par la configuration précédente.

Vérifier la configuration réseau de PC-2.

root@PC-2::c2:~$ ifconfig
root@PC-2::c2:~$ route -A inet6

Analyser les échanges entre R2 et PC-2 dans l'outil de capture réseau. Expliquer les différences avec les échanges entre R1 et PC-1.

PC-2 n'a pas encore configuré d'adresse IPv6 routable car le message d'annonce de routeur interdit la configuration automatique sans état. Le drapeau annonçant la configuration automatique avec état est censé indiquer à PC-2 d'initier une requête DHCPv6. Or, dans le système Linux, celle-ci doit encore être lancée manuellement.

Lancer le client DHCPv6 sur PC-2.

root@PC-2::c2:~$ dhclient -6 eth0

Oupps, la commande ne rend pas la main. Stoppez la par l'appui simultané des touche CTRL+C

Vérifier la configuration réseau de PC-2.

root@PC-2::c2:~$ ifconfig

PC-2 n'a qu'une adresse locale de lien (LLA), il n'a toujours pas d'adresse routable basée sur le préfixe ULA de son réseau. Que se passe-t-il ?

Analyser les échanges entre R2 et PC-2 dans l'outil de capture réseau.

Quels sont les messages DHCPv6 emis par le client DHCPv6 de PC-2 ? Vers quelles adresse destination ? Ont ils fait l'objet d'une réponse ?

Observer la non prise en compte des requêtes de PC-2 sur le serveur DHCPv6, en exécutant la commande d'affichage des baux dhcpv6 sur SRV-3:

root@SRV-3::c3:~$ cat /var/lib/dhcp/dhcpd6.leases

Aucun bail n'est actif. Nous constatons que le serveur DHCPv6 ne reçoit pas de requêtes. Pourquoi ?

Le serveur DHCPv6, n'est pas sur le même réseau que PC-2, nous devons activer le relai DHCPv6 sur R2, voyons cela ci-après;

Configurer le relai DHCPv6 sur R2

Sur R2  :

r2# exit
vyos@r2:~$ configure 
[edit]
vyos@r2# set service dhcpv6‐relay listen-interface eth0 address fd75:e4d9:cb77:2::2 
vyos@r2# set service dhcpv6-relay upstream-interface eth3 address fd75:e4d9:cb77:3::c3 
vyos@r2# commit 
vyos@r2:~$

R2 est maintenant configuré avec la fonction de relai. La première commande permettent de désigner l'interface où le logiciel de relayage doit être en écoute, ici eth0 (pour recevoir les requêtes du client), et la deuxième commande permet de relayer en Unicast la requête sur eth3 vers le serveur SRV-3.

Relancer maintenant le client DHCPv6 de PC-2, puis vérifier les adresses de son interface eth0.

root@PC-2::c2:~# dhclient -6 eth0
root@PC-2::c2:~# ifconfig eth0 

PC-2 dispose maintenant d'une adresse routable (ULA). Quelle est sa valeur ? Quelle est la valeur de l'identifiant d'interface de cette adresse ? Dans la capture wireshark, quels ont été les échanges DHCPv6 ?

Après avoir relevé l'adresse ULA de PC-1, tester la connectivité avec PC-1 depuis PC-2.

root@PC-2::c2:~# ping6 -c 5 adresse IPv6 ULA de PC-1 

Vous pouvez tester la stabilité de l'adresse IPv6 obtenue par DHCPv6 en simulant une déconnexion puis une reconnexion au réseau de l'interface eth0 :

root@PC-2::c2:~# ifconfig eth0 down
root@PC-2::c2:~# ifconfig eth0 up 
root@PC-2::c2:~# dhclient -6 eth0
root@PC-2::c2:~# ifconfig eth0
root@PC-2::c2:~# route -A inet6

Etape 4 : Configuration du serveur de noms

Lors de cette étape, vous allez mettre en oeuvre un service de nommage pour la plateforme. Ce service va permettre d'utiliser des noms à la place des longues adresses IPv6 lorsque vous devez désigner une machine distante comme, par exemple, lors d'un test d'accessibilité.

Le service de nommage sera basé sur le logiciel Bind, très communément utilisé dans l'Internet. Ce logiciel offre les fonctions de serveur de noms, ainsi que de serveur de résolution récursif. Notre plateforme n'étant pas connectée à l'Internet et ne pouvant pas être liée à l'arbre récursif racine du service de nommage, nous utiliserons une zone TLD (Top Level Domain) de nommage propre *.tp. Le serveur de résolution sera le même serveur que celui pour les noms. Ces fonctions seront mises en oeuvre sur SRV-3.

Le serveur Bind installé sur SRV-3 possède différents fichiers définissant :

  • le nommage direct dans la zone *.tp ;
  • le nommage inversé pour la zone correspondant au préfixe de la plateforme fd75:e4d9:cb77::/48.

Cette étape consiste donc à renseigner les adresses et les noms dans ces fichiers afin d'établir les correspondances qui pourront être ensuite utilisées par toutes les machines de la plateforme.

Configurer le nommage direct

Il s'agit ici d'indiquer les correspondances entre des noms pour les machines de la plateforme et leurs adresses IPv6. Ces correspondances utilisent des noms de la zone *.tp. C'est donc dans le fichier désigné dans la configuration du serveur de nom Bind pour cette zone qu'il faut renseigner ces correspondances.

Note. - Chaque zone possède un numéro de série appelé, dans la configuration, serial. Il s'apparente à un numéro de version permettant de repérer les informations les plus à jour pour la zone. Il est donc nécessaire d'incrémenter ce numéro serial à chaque modification du fichier de la zone.

Sur SRV-3, modifier le fichier /etc/bind/db.tp :

root@SRV-3::c3:~$#  nano -w /etc/bind/db.tp

'Rappel : ' Dans l'éditeur nano 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.

Modifier :

  • incrémenter la valeur du numéro de série,
  • ajuster les adresse de pc1 et pc2 au valeur des adresses ULA qu'ils se sont alloués par auto-configuration.
...
...
2019060601 ; serial    
... 
...
pc1         IN     AAAA   adresse_PC1(Utiliser ifconfig sur PC-1, fd75:e4d9:cb77:1::x) 
pc2         IN     AAAA   adresse_PC2(Utiliser ifconfig sur PC-2, fd75:e4d9:cb77:2::x) 
srv         IN     AAAA    fd75:e4d9:cb77:3::c3
r1-eth1     IN     AAAA    fd75:e4d9:cb77::1
r2-eth1     IN     AAAA    fd75:e4d9:cb77::2
...

Exemple sur la modification du fichier /etc/bind/db.tp :

...
...
2019060601; serial
...
...
pc1             IN     AAAA    fd75:e4d9:cb77:1:68f7:7bff:fe8f:a80d
pc2             IN     AAAA    fd75:e4d9:cb77:2::29
srv             IN     AAAA    fd75:e4d9:cb77:3::c3
r1-eth1         IN     AAAA    fd75:e4d9:cb77::1
r2-eth1         IN     AAAA    fd75:e4d9:cb77::2

Lancer le logiciel de serveur de nom BIND :

root@SRV-3::c3:~$# named-checkconf -z
root@SRV-3::c3:~$# named -c /etc/bind/named.conf
root@SRV-3::c3:~$# service bind9 restart

Pour tester la configuration que vous venez d'effectuer, il faut maintenant interroger le serveur de nom pour un nom de la zone. Il existe des outils sous Linux permettant de faire explicitement ces requêtes, tels que host ou dig.

Tester la configuration en local sur SRV-3 en interrogeant le serveur de nom local sur les noms pc1.tp, pc2.tp, ... :

root@SRV-3::c3:~$# host pc1.tp ::1
root@SRV-3::c3:~$# host pc2.tp ::1
root@SRV-3::c3:~$# host srv.tp ::1

Le premier argument de la commande host indique le nom à rechercher, le second le serveur à interroger (ici l'adresse IPv6 correspondant à localhost).

Pour que la résolution de nom soit disponible depuis les autres commandes du système, il est nécessaire que l'adresse du serveur soit renseignée au niveau du système. Sous Linux, cette configuration se fait dans le fichier /etc/resolv.conf. Normalement, ce fichier doit indiquer l'adresse d'un serveur de résolution récursif. Mais notre plateforme n'étant pas reliée à l'Internet, nous utiliserons directement le serveur de noms que nous venons de configurer.

Vérifier la configuration du serveur de noms pour le système PC-2 :

root@PC-2::c2:~$# cat /etc/resolv.conf
search tp.
nameserver fd75:e4d9:cb77:3::c3

Cette configuration permet d'utiliser le serveur de noms SRV-3 depuis les autres commandes du système.

Vérifier la disponibilité de la résolution de nom à partir de l'outil ping6 :

root@PC-2::c2:~$# ping6 -c 5 r2-eth1.tp
root@PC-2::c2:~$# ping6 -c 5 r1-eth1.tp
root@PC-2::c2:~$# ping6 -c 5 pc1.tp

Les commandes entrées sur PC-2 peuvent maintenant utiliser des noms à la place des adresses IPv6.

Configurer le nommage inversé

Pour calculer les noms inversés à partir des adresses IPv6, il est possible d'utiliser l'utilitaire sipcalc. Cet outil est disponible sur PC-2.

root@PC-2::c2:~$# sipcalc -a @IPv6(PC-1,R1,R2,PC-2) 

Exemple :

root@PC-2::c2:~# sipcalc -a fd75:e4d9:cb77:1:68f7:7bff:fe8f:a80d
-[ipv6 : fd75:e4d9:cb77:1:68f7:7bff:fe8f:a80d] - 0

[IPV6 INFO]
Expanded Address        - fd75:e4d9:cb77:0001:68f7:7bff:fe8f:a80d
Compressed address      - fd75:e4d9:cb77:1:68f7:7bff:fe8f:a80d
Subnet prefix (masked)  - fd75:e4d9:cb77:1:68f7:7bff:fe8f:a80d/128
Address ID (masked)     - 0:0:0:0:0:0:0:0/128
Prefix address          - ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff
Prefix length           - 128
Address type            - Unassigned
Network range           - fd75:e4d9:cb77:0001:68f7:7bff:fe8f:a80d -
                          fd75:e4d9:cb77:0001:68f7:7bff:fe8f:a80d

[V4INV6]
Expanded v4inv6 address - fd75:e4d9:cb77:0001:68f7:7bff:254.143.168.13
Compr. v4inv6 address   - fd75:e4d9:cb77:1:68f7:7bff:254.143.168.13

[IPV6 DNS]
Reverse DNS (ip6.arpa)  -
d.0.8.a.f.8.e.f.f.f.b.7.7.f.8.6.1.0.0.0.7.7.b.c.9.d.4.e.5.7.d.f.ip6.arpa.

En vous aidant de l'utilitaire sipcalc modifier le fichier correspondant à la zone de nommage inversé /etc/bind/db.tp.ipv6.rev :

root@SRV-3::c3:~$#  nano -w /etc/bind/db.tp.ipv6.rev

Note. - Le paramètre -w de la commande nano est nécessaire pour s'assurer que chaque ressource record soit bien définie sur une seule ligne (Sans le -w, l'éditeur insérera des sauts de ligne qui empêcheront le service named de fonctionner correctement).

'Rappel : ' Dans l'éditeur nano 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.

Modifier : Modifier :

  • incrémenter la valeur du numéro de série,
  • ajuster les adresses des parties inverses correspondantes aux champs SID et IID de pc1 et pc2 (cf la partie affichée en gras dans l'exemple sipcalc précédent), en effet le préfixe ULA inverse commun à ces adresses est déjà renseigné, grâce à la clause $ORIGIN).


...
...
2015102200 ; serial
...
...
<l’adresse_pc1_REVERSE>          IN  PTR   pc1.tp.
<l’adresse_pc2_REVERSE>          IN  PTR   pc2.tp.
1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0      IN  PTR   r1-eth1.tp.
2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0      IN  PTR   r2-eth1.tp.
                    

Exemple sur la modification du fichier /etc/bind/db.tp.ipv6.rev :

...
...
2015102201 ; serial
...
...
$ORIGIN 7.7.b.c.9.d.4.e.5.7.d.f.ip6.arpa.
d.0.8.a.f.8.e.f.f.f.b.7.7.f.8.6.1.0.0.0  IN PTR     pc1.tp.
9.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.2.0.0.0  IN PTR     pc2.tp.
1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0  IN  PTR   r1-eth1.tp.
2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0  IN  PTR   r2-eth1.tp.

Note. - Le "." final à la fin de chaque RR (Ressource Record) de type PTR est nécessaire. Ainsi noter bien d.0.8.a.f.8.e.f.f.f.b.7.7.f.8.6.1.0.0.0 IN PTR pc1.tpPOINT-FINAL

Note. - Le fichier de la zone pour le nommage inversé contient une directive,

$ORIGIN 7.7.b.c.9.d.4.e.5.7.d.f.ip6.arpa.

permettant d'éviter de noter de manière redondante les éléments communs aux noms inversés.

Relancer BIND.

root@SRV-3::c3:~$# named-checkconf -z
root@SRV-3::c3:~$# named -c /etc/bind/named.conf
root@SRV-3::c3:~$# service bind9 restart

Tester la configuration en local sur PC-2.

root@PC-2::c2:~$#  dig -x adresse_PC-1 

Vous pouvez également ajouter le paramètre +short pour un affichage plus concis.

root@PC-2::c2:~$#  dig -x adresse_PC-1 +short 

Tester également les autres enregistrements inversés que vous avez référencés dans la zone contenue dans le fichier fichier /etc/bind/db.tp.ipv6.rev

root@PC-2::c2:~$#  dig -x adresse_PC-2 +short 

Etape 5 : Distribution des informations d'accès au service de noms par DHCPv6

Votre plateforme comporte maintenant un serveur permettant d'utiliser des noms à la place des adresses IPv6. Pour que ce serveur puisse être utilisé par les autres machines de la plateforme, le système de chaque machine peut être configuré manuellement avec l'adresse du serveur. Mais certaines de ces machines (notamment PC-1) utilisent la configuration automatique des paramètres réseau. Pour être cohérent, l'adresse du serveur de résolution récursif doit donc être, elle aussi, configurée automatiquement sur PC-1.

Il existe plusieurs méthodes pour effectuer cette configuration automatiquement, dont le RFC 6106, permettant d'inclure l'adresse dans les annonces de routeur, et DHCPv6. C'est cette dernière méthode que vous allez mettre en oeuvre. Vous allez réutiliser le serveur DHCPv6 configuré dans l'étape 2 pour qu'il transmette aussi l'adresse du serveur de résolution récursif. Pour que PC-1 puisse atteindre ce serveur, la configuration d'un relai DHCPv6 sur R1 est alors nécessaire.

Figure 6: .Localisation des éléments du service DHCPv6.

Configurer le serveur DHCPv6

Le serveur DHCPv6 sur SRV-3 doit être configuré pour transmettre l'adresse du serveur de résolution ainsi que pour accepter les requêtes relayées par R1 depuis son interface eth1 connectée au réseau d'infrastructure le reliant à R1.

Sur SRV-3, observer la configuration du serveur DHCPv6 ainsi:

root@SRV-3::c3:~$ cat /etc/dhcp/dhcpd6.conf

Configurer le relai DHCPv6

Sur R1, activer le relai DHCPv6 :

vyos@r1:~$ configure
vyos@r1# set service dhcpv6‐relay listen-interface eth0 address fd75:e4d9:cb77:1::1  
vyos@r1# set service dhcpv6‐relay upstream-interface eth1 address fd75:e4d9:cb77:3::c3  
vyos@r1# commit
vyos@r1:~$

R1 est maintenant configuré avec la fonction de relai. La première commande permet de désigner l'interface où le logiciel de relayage doit être en écoute, ici eth0 (pour recevoir les requêtes du client) et la deuxième commande permet de relayer en Unicast les requêtes sur eth1 vers le serveur.

Configurer les annonces de routeur pour le réseau PC1-R1.

vyos@r1:~$ vtysh
r1# configure terminal
r1(config)# interface eth0
r1(config-if)# ipv6 nd other-config-flag
r1(config-if)# end
r1#  

Les annonces de R1 contiennent maintenant une indication que les autres paramètres réseau (dont l'adresse du serveur de résolution) doivent être récupérés par DHCPv6.

Récupérer et tester l'obtention du DNS depuis PC1

Sur PC, lancer la requête DHCPv6 par la commande :

root@PC-1::c1:~$# dhclient -6 eth0

Vérifier ensuite les paramètres réseau obtenus par PC1.

root@PC-1::c1:~$# ifconfig
root@PC-1::c1:~$# cat /etc/resolv.conf
(Normalement nameserver doit être celui de SRV-3) 

Tester maintenant la configuration en local sur PC1.

root@PC-1::c1:~$# dig -t AAAA pc1.tp
root@PC-1::c1:~$# dig -x adresse_PC-1 
root@PC-1::c1:~$# ping6 -c 5 r2-eth1.tp

Arrêt/Pause du simulateur

Au besoin vous pouvez aussi figer l'exécution des équipements avec le bouton Pause "Suspend All devices", voire arrêter les équipements avec le bouton Stop "Stop All devices".

L'état des équipements est sauvegardé en quittant. Pour quitter proprement GNS3, faire CTRL+Q ou faire, avec le menu déroulant File et l'action Quit.

Conclusion

Cette activité a été très complète. On remarquera que le travail de configuration du réseau a porté sur la configuration des routeurs. Les hôtes sont auto-configurés et ne nécessitent aucune activité particulière. Nous avons vu également comment déployer le service de nommage. Il est important de souligner que ce dernier se configure de la même manière en IPv4 qu'en IPv6. Il vous appartient maintenant à adapter vos compétences acquises aux besoins de fonctionnement de votre réseau en IPv6.

Personal tools