Outils pour utilisateurs

Outils du site


Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
060-ipv6:030-decouvertes [le 01/03/2025 à 17:10] prof060-ipv6:030-decouvertes [le 04/03/2025 à 08:35] (Version actuelle) – [rdisc6] prof
Ligne 1: Ligne 1:
 ====== A la découverte du monde IPv6 ====== ====== A la découverte du monde IPv6 ======
  
-Il existe une trousse à outils nommée ''ndisc6'' (IPv6 diagnostic tools for Linux and BSD), facile à installer sur Debian, Ubuntu et dérivées par un ''apt install ndisc6''. Bien entendu, les autres distributions récentes proposent également cette trousse, qui contient entre autres, trois outils qui vont nous être utiles:  ''rdisc6'', dans une moindre mesure ''ndisc6'' et un ''tcptraceroute6''.+Il existe une trousse à outils nommée ''ndisc6'' (IPv6 diagnostic tools for Linux and BSD), facile à installer sur Debian, Ubuntu et dérivées par un ''apt install ndisc6''. Bien entendu, les autres distributions récentes proposent également cette trousse, qui contient entre autres, trois outils qui vont nous être utiles:  ''rdisc6'' et un ''tcptraceroute6''.
  
-===== ndisc6 =====+Pour ces quelques essais, une machine virtuelle avec une distribution Debian 12 (Bookworm) minimale est installée sur le réseau IPv4 192.168.60.0/24 sur lequel se trouve également la FreeBox à l'adresse IPv4 192.168.60.254. Le paquet ''ndisc6'' y a été ajouté. 
 +===== Analyse de sa configuration IPv6 ===== 
 +Les adresses IPv6 sont faciles à obtenir: 
 +<html><pre class="code"> 
 +<b>ip -6 address show enp1s0</b>
  
-Permet de lancer une « découverte des voisins ». Comparable à la commande ''arping'' du monde IPv4. Utilisons cet outil pour scruter notre passerelle par défaut. Commençons par son adresse de type lien local, telle que nous l'avons découverte avec la commande ''ip -6 route ls'' :+2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000 
 +    <span class="bhly">inet6 2a01:e0a:875:b1d0:5054:ff:fe37:3649/64 scope global</span> dynamic mngtmpaddr  
 +       valid_lft 86043sec preferred_lft 86043sec 
 +    <span class="hly">inet6 fe80::5054:ff:fe37:3649/64 scope link</span>  
 +       valid_lft forever preferred_lft forever 
 +</pre></html> 
 +Les adresses globale et lien-local, avec le même jeton ''5054:ff:fe37:3649'' comme prévu.
  
 +Les routes sont aussi faciles à trouver:
 <html><pre class="code"> <html><pre class="code">
-<span class="hlg">:~$ ndisc6 fe80::207:cbff:fec3:e4da eth0</span> +<b>ip -6 route show</b> 
-Solicitation de fe80::207:cbff:fec3:e4da (fe80::207:cbff:fec3:e4da) sur eth0... + 
-<span class="bhly">Adresse cible de lien    : 00:07:CB:C3:E4:DA</span> +<span class="hly">2a01:e0a:875:b1d0::/64 dev enp1s0</span> proto kernel metric 256 expires 86380sec pref medium 
- de fe80::207:cbff:fec3:e4da+<span class="hly">fe80::/64 dev enp1s0</span> proto kernel metric 256 pref medium 
 +<span class="bhlg">default via fe80::6aa3:78ff:fe86:ec02 dev enp1s0</span> proto ra metric 1024 expires 1780sec hoplimit 64 pref medium 
 </pre></html> </pre></html>
 +C'est surtout la route par défaut qui nous intéresse. C'est une adresse de lien-local, avec un jeton ''6aa3:78ff:fe86:ec02'' qui normalement doit appartenir à la Freebox, ce que l'on peut vérifier à travers l'interface de configuration de la box:
 +{{ :060-ipv6:lien-local-fb.png?500 |Lien-Local de la Freebox}}
 +Tout va bien.
  
 +Le serveur DNS ?  Si l'on a installé le paquet ''network-manager'' c'est facile, mais pour nos manipulation ça ne va pas. Le démon ''NetworkManager'' s'occupe de tout à notre place. Autant c'est bien pratique sur une station de travail graphique, autant ça nous complique la vie pour décortiquer ce qu'il se passe côté réseau. Dans notre configuration minimale, nous pouvons trouver l'information dans le fichier ''/etc/resolv.conf''. On y voit:
 <html><pre class="code"> <html><pre class="code">
-<span class="hlg">~$ ndisc6 2a01:e35:2f35:d0::1 eth0</span> +<b>cat /etc/resolv.conf</b>
-Solicitation de 2a01:e35:2f35:d0::1 (2a01:e35:2f35:d0::1) sur eth0... +
-<span class="bhly">Adresse cible de lien    : 00:07:CB:C3:E4:DA</span> +
- de 2a01:e35:2f35:d0::+
-</pre></html> +
- +
-permet donc facilement de trouver l'adresse MAC correspondant à une adresse IPv6 sur le réseau local +
- +
  
 +nameserver 192.168.60.254
 +</pre></html>
 +Point d'adresse IPv6 en vue :-O
 ===== rdisc6 ===== ===== rdisc6 =====
  
Ligne 30: Ligne 41:
  
 <html><pre class="code"> <html><pre class="code">
-<span class="hlg">~$ rdisc6 eth0</span> +<span class="hlg">~$ rdisc6 enp1s0</span> 
-<span class="hlb">Solicitation de ff02::2 (ff02::2) sur eth0...</span>+<span class="hlb">Solicitation de ff02::2 (ff02::2) sur enp1s0...</span>
  
 Limite de saut (TTL)      :           64 (      0x40) Limite de saut (TTL)      :           64 (      0x40)
 Conf. d'adresse par DHCP  :          Non Conf. d'adresse par DHCP  :          Non
 Autres réglages par DHCP  :          Non Autres réglages par DHCP  :          Non
 +Agent domestique (mobile) :          Non
 Préférence du routeur     :        moyen Préférence du routeur     :        moyen
 +Proxy (découverte voisin) :          Non
 Durée de vie du routeur   :         1800 (0x00000708) secondes Durée de vie du routeur   :         1800 (0x00000708) secondes
 Temps d'atteinte          :  non indiqué (0x00000000) Temps d'atteinte          :  non indiqué (0x00000000)
 Temps de retransmission   :  non indiqué (0x00000000) Temps de retransmission   :  non indiqué (0x00000000)
-<span class="hly"> Préfixe                  : 2a01:e35:2f35:d0::/64+<span class="hly"> Préfixe                  : 2a01:e0a:875:b1d0::/64 
 +  Sur le lien (on-link)   :          Oui 
 +  Conf. autonome d’adresse:          Oui
   Durée de validité       :        86400 (0x00015180) secondes   Durée de validité       :        86400 (0x00015180) secondes
-  Durée de préférence     :        86400 (0x00015180) secondes +  Durée de préférence     :        86400 (0x00015180) secondes</span> 
- Recursive DNS server     : 2a01:e00::+ <span class="bhlo">Recursive DNS server     : fd0f:ee:b0::1</span> 
- Recursive DNS server     2a01:e00::1</span> +  DNS servers lifetime    :        86600 (0x00000258) secondes 
-  DNS servers lifetime    :          600 (0x00000258) secondes + MTU                      :         1500 octets (valide) 
- MTU                      :         1480 octets (valide) +<span class="bhly"> Adresse source de lien   : 68:A3:78:86:EC:02 
-<span class="bhly"> Adresse source de lien   : 00:07:CB:C3:E4:DA + de fe80::6aa3:78ff:fe86:ec02</span>
- de fe80::207:cbff:fec3:e4da</span>+
 </pre></html> </pre></html>
  
 Là, nous sommes servis. Nous apprenons que : Là, nous sommes servis. Nous apprenons que :
   * il n'y a pas de DHCP dans le coup ;   * il n'y a pas de DHCP dans le coup ;
-  * le préfixe qui nous est attribué est bien ''2a01:e35:2f35:d0::/64'' ;+  * le préfixe qui nous est attribué est bien ''2a01:e0a:875:b1d0::/64'' (nous l'avions compris avec l'adresse IPv6 globale);
   * les durées de validité et de préférence sont identiques et de 86400 secondes (24 heures) ;   * les durées de validité et de préférence sont identiques et de 86400 secondes (24 heures) ;
-  * les DNS proposés sont ''2a01:e00::2'' et ''2a01:e00::1''+  * **le DNS proposé est ''fd0f:ee:b0::1''** et, remarquons-le, c'est une adresse locale unique (ULA). 
-  * le routeur (passerelle par défaut) est ''fe80::207:cbff:fec3:e4da''.+  * le routeur (passerelle par défaut) est ''fe80::6aa3:78ff:fe86:ec02'' (nous l'avions trouvée).
  
-Nous avons récupéré toutes les informations nécessaires, comme nous l'aurions fait en IPv4 par DHCP, mais ici, ce n'est pas DHCP. Alors, qu'est-ce que c'est ? (Ceux qui ont suivi sauront répondre : «NDP»).+Nous avons récupéré toutes les informations nécessaires, comme nous l'aurions fait en IPv4 par DHCP, mais ici, ce n'est pas DHCP. Alors, qu'est-ce que c'est ? (Ceux qui ont suivi sauront répondre : //C'est «NDP»//).
  
-De plus, que représente cette adresse ''ff02::2'' qui semble être la source de toutes ces informations ?+Et  l'adresse ''ff02::2'' est l'adresse multicast déjà observée. C'est l'adresse réservée au protocole NDP
  
-===== tcptraceroute6 ===== 
  
-Comme son nom l'indiquecette commande est équivalente au ''tcptraceroute'du monde IPv4 :+Mais  cette adresse ULA indiquant un serveur DNS (résolveurplutôt) dans un réseau où il n'y a pas de serveur DNS installé ? Ce ne peut être que la Freebox. 
  
 +Et pourquoi cette adresse n'apparaît pas dans ''/etc/resolv.conf'' ? Parce qu'il n'y a aucun démon qui la capture pour renseigner ce fichier. Autrement-dit, dans cette configuration minimale, c'est le résolveur ''192.168.60.254'' qui assurera la résolution des noms en IPv6 comme nous l'avons vu page précédente.Confirmation avec l'outil ''nslookup'' du paquet ''bind9-dnsutils'':
 <html><pre class="code"> <html><pre class="code">
-<span class="hlg">:~$ tcptraceroute6  www.kame.net</span> +nslookup www.debian.org 
-traceroute vers orange.kame.net (2001:200:0:8002:203:47ff:fea5:3085) de 2a01:5d8:52f3:500d:21b:11ff:fe52:bfab, port 80, du port 56328, 30 sauts max, 60 octet/paquet +<span class="bhly">Server: 192.168.60.254</span> 
-<span class="hly"> 1  2a01:5d8:52f3:500d::1 (2a01:5d8:52f3:500d::1)  0.586 ms  0.493 ms  0.514 ms </span> +Address: 192.168.60.254#53 
- 2  2a01:5d8:e000:9d1::4 (2a01:5d8:e000:9d1::4)  48.728 ms  48.941 ms  48.161 ms  + 
- 3  2a01:5d8:e000:9d1::fe (2a01:5d8:e000:9d1::fe)  50.412 ms  49.901 ms  * +Non-authoritative answer: 
-... +Name: www.debian.org 
-22  lo0.alaxala1.k2.wide.ad.jp (2001:200:0:4800::7800:1)  342.425 ms  342.790 ms  339.848 ms  +Address130.89.148.77 
-<span class="hly">23  orange.kame.net (2001:200:0:8002:203:47ff:fea5:3085)  343.017 ms [ouvert]  342.494 ms  338.770 ms </span>+Name: www.debian.org 
 +Address: 194.177.211.216 
 +Name: www.debian.org 
 +Address: 2001:67c:2564:a119::77 
 +Name: www.debian.org 
 +Address: 2001:648:2ffc:deb:216:61ff:fe2b:6138
 </pre></html> </pre></html>
 +La commande interroge bien ''192.168.60.254''.
  
-Comme vous le constatezil n'y a rien de fondamentalement nouveausi ce n'est que nous évoluons dans un monde IPv6+Mais si l'on veut utiliser le résolveur proposé dans la configuration IPV6comment faire ? 
-  * le «hop» nous confirme une fois encore l'adresse IP (globale) de notre passerelle par défaut; + 
-  * le «hop» 22 nous apprend que la cible www.kame.net se situe au japon et que son port 80 est ouvert; +Il faut donc installer le démon ''rdnssd'' qui //configure automatiquement des serveurs DNS récursifs sur des réseaux IPv6 qui utilisent ICMPv6 Neighbor Discovery (RFC 5006)et il peut mettre à jour la configuration des résolveurs DNS (/etc/resolv.conf) en fonction.((extrait du «man rdnssd»))//. Mais ce paquet recommande ''resolvconf'' et nous ne voulons **surtout pas** l'installer, il fait trop de choses dans notre dosDonc: 
-  * le «hop» 23 nous dit que la cible est vivante et que le port 80 est ouvert.+  apt --no-install-recommends install rdnssd 
 +Et après reboot de la machine virtuelle: 
 +<html><pre class="code"> 
 +<b>cat /etc/resolv.conf</b> 
 +<span class="bhly">nameserver fd0f:ee:b0::1</span> 
 +nameserver 192.168.60.254 
 +</pre></html> 
 +L'adresse IPv6 du résolveur apparaît maintenant en plus de l'adresse IPv4 et en première position qui plus est. Si bien que: 
 +<html><pre class="code"> 
 +nslookup www.debian.org 
 +<span class="bhly">Server: fd0f:ee:b0::1</span> 
 +Address: fd0f:ee:b0::1#53 
 + 
 +Non-authoritative answer: 
 +Name: www.debian.org 
 +Address: 194.177.211.216 
 +Name: www.debian.org 
 +Address: 130.89.148.77 
 +Name: www.debian.org 
 +Address: 2001:67c:2564:a119::77 
 +Name: www.debian.org 
 +Address: 2001:648:2ffc:deb:216:61ff:fe2b:6138 
 +</pre></html> 
 +Le résolveur interrogé l'est maintenant par son adresse IPv6 et répond bien entendu exactement la même réponse que précédemment.  
 + 
 +La conclusion de tout ceci démontre qu'un serveur DNS (ou un résolveurgère aussi bien les adresses IPv4 et IPv6, ce que nous montrerons plus loin, lors de l'installation de ''bind9''. 
 +===== tcptraceroute6 ===== 
 + 
 +Comme son nom l'indique, cette commande est équivalente au ''tcptraceroute'' du monde IPv4. Là encore, un peu de patience, nous démonterons son fonctionnement lors de l'étude détaillée du protocole ICMP. Pour l'instant, contentons-nous de savoir que cette commande met en évidence les différents routeurs par lesquels passent une requête quelconque depuis la source vers la cible
 + 
 +<html><pre class="code"> 
 +<b>tcptraceroute6 www.debian.org</b> 
 + 
 +traceroute vers www.debian.org (2001:648:2ffc:deb:216:61ff:fe2b:6138) de 2a01:e0a:875:b1d0:5054:ff:fe37:3649, port 80, du port 64890, 30 sauts max, 60 octets/paquet 
 +<span class="hly"> 1  2a01:e0a:875:b1d0::1 (2a01:e0a:875:b1d0::1)</span>  0.705 ms  0.534 ms  0.515 ms  
 +  2a01:e02:1004:f836:aac1::ffff (2a01:e02:1004:f836:aac1::ffff)  3.781 ms  1.841 ms  2.316 ms  
 +  2a01:e02:1004:1700::ffff (2a01:e02:1004:1700::ffff)  2.314 ms  2.173 ms  1.897 ms  
 +  2a01:e02:1003::1 (2a01:e02:1003::1)  2.727 ms  2.262 ms  2.587 ms  
 +  * * 
 +  * * * 
 +  2a01:e04:6003::5 (2a01:e04:6003::5)  23.856 ms  23.700 ms  24.134 ms  
 +  fra-ix.geant.net (2001:7f8::51e5:0:1)  23.773 ms  24.310 ms  24.075 ms  
 +  lag-1-0.rt0.fra.de.geant.net (2001:798:cc::72)  24.043 ms  23.606 ms  24.010 ms  
 +10  lag-6-0.rt0.pra.cz.geant.net (2001:798:cc:1::c6)  34.623 ms  34.880 ms  35.114 ms  
 +11  lag-5-0.rt0.vie.at.geant.net (2001:798:cc:1::ce)  34.958 ms  35.176 ms  35.076 ms  
 +12  * * * 
 +13  * * * 
 +14  * * * 
 +15  2001:798:cc::4a (2001:798:cc::4a)  58.276 ms  58.204 ms  57.667 ms  
 +16  grnet-ias.rt1.the.gr.geant.net (2001:798:1::176)  58.522 ms  57.809 ms  58.165 ms  
 +17  2001:648:2ff2:105::1 (2001:648:2ff2:105::1)  64.859 ms  65.205 ms  65.844 ms  
 +<span class="bhlo">18  static-mirror-grnet-01.debian.org (2001:648:2ffc:deb:216:61ff:fe2b:6138)</span>  65.539 ms [ouvert]  65.738 ms  65.965 ms 
 + 
 +</pre></html>
  
 +Pour l'instant, admettons ceci:
 +  * le «hop» 1 ''2a01:e0a:875:b1d0::1'' c'est obligatoiremet notre passerelle par défaut (Freebox), bien que l'on n'ai pas encore réussi à identifier cette adresse;
 +  * les «hops» marqués par des étoiles sont des routeurs dont nous n'avons par reçu d'information. Diverses raisons peuvent le justifier.
 +  * le «hop» 18 , c'est le terminus, ne serveur cible. Nous sommes passés par 17 routeurs différents pour l'atteindre.
 +Une analyse un peu plus détaillée montrerait que tous les routeurs  dont l'adresse commence par ''20a1::'' sont dans le réseau Proxad, puis nous passons dans le réseau identifié ''geant.net''. Le projet ''Geant'' qui se nomme désormais [[https://geant.org/|Geant.org]]. //GÉANT is the collaboration of European National Research and Education Networks //. Visiblement, on circule un peu dans divers pays d'Europe, pour arriver dans [[https://grnet.gr/en/company/|grnet]] qui est semble-t-il l'équivalent de notre Renater en Grèce. (65 ms Pour aller de la France en Grèce, et encore, avec 17 escales. Qui dit mieux ?)
  
  
A la découverte du monde IPv6: Dernière modification le: 01/03/2025 à 17:10 par prof