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 03/03/2025 à 17:23] – [A la découverte du monde IPv6] prof060-ipv6:030-decouvertes [le 04/03/2025 à 08:35] (Version actuelle) – [rdisc6] prof
Ligne 3: Ligne 3:
 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''. 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''.
  
-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é. +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>
  
 +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">
 +<b>ip -6 route show</b>
  
 +<span class="hly">2a01:e0a:875:b1d0::/64 dev enp1s0</span> proto kernel metric 256 expires 86380sec pref medium
 +<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>
 +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">
 +<b>cat /etc/resolv.conf</b>
  
 +nameserver 192.168.60.254
 +</pre></html>
 +Point d'adresse IPv6 en vue :-O
 ===== rdisc6 ===== ===== rdisc6 =====
  
Ligne 40: Ligne 67:
 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:e0a:875:b1d0::/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) ;
-  * le DNS proposé est ''fd0f:ee:b0::1'' et, remarquons-le, c'est une adresse locale unique (ULA). ; +  * **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::6aa3:78ff:fe86:ec02''.+  * 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»//).
  
 Et  l'adresse ''ff02::2'' est l'adresse multicast déjà observée. C'est l'adresse réservée au protocole NDP Et  l'adresse ''ff02::2'' est l'adresse multicast déjà observée. C'est l'adresse réservée au protocole NDP
  
  
-Mais qui possède cette adresse ULA dans un réseau où il n'y a pas de serveur DNS installé ?  +Mais  cette adresse ULA indiquant un serveur DNS (résolveur, plutôt) dans un réseau où il n'y a pas de serveur DNS installé ? Ce ne peut être que la Freebox. 
-===== tcptraceroute6 =====+
  
-Comme son nom l'indique, cette commande est équivalente au ''tcptraceroute'' du monde IPv4 :+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-ditdans 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"> 
 +nslookup www.debian.org 
 +<span class="bhly">Server: 192.168.60.254</span> 
 +Address: 192.168.60.254#53
  
 +Non-authoritative answer:
 +Name: www.debian.org
 +Address: 130.89.148.77
 +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>
 +La commande interroge bien ''192.168.60.254''.
 +
 +Mais si l'on veut utiliser le résolveur proposé dans la configuration IPV6, comment faire ?
 +
 +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 dos. Donc:
 +  apt --no-install-recommends install rdnssd
 +Et après reboot de la machine virtuelle:
 <html><pre class="code"> <html><pre class="code">
-<span class="hlg">:~$ tcptraceroute6  www.kame.net</span> +<b>cat /etc/resolv.conf</b
-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">nameserver fd0f:ee:b0::1</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> +nameserver 192.168.60.254
- 2  2a01:5d8:e000:9d1::4 (2a01:5d8:e000:9d1::4)  48.728 ms  48.941 ms  48.161 ms  +
-  2a01:5d8:e000:9d1::fe (2a01:5d8:e000:9d1::fe)  50.412 ms  49.901 ms  * +
-... +
-22  lo0.alaxala1.k2.wide.ad.jp (2001:200:0:4800::7800:1)  342.425 ms  342.790 ms  339.848 ms  +
-<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>+
 </pre></html> </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
  
-Comme vous le constatez, il n'y a rien de fondamentalement nouveausi ce n'est que nous évoluons dans un monde IPv6+Non-authoritative answer: 
-  * le «hop» 1 nous confirme une fois encore l'adresse IP (globale) de notre passerelle par défaut; +Name: www.debian.org 
-  * le «hop» 22 nous apprend que la cible www.kame.net se situe au japon et que son port 80 est ouvert; +Address: 194.177.211.216 
-  * le «hop» 23 nous dit que la cible est vivante et que le port 80 est ouvert.+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ésolveur) gè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: 03/03/2025 à 17:23 par prof