7.3 : Ce qu IPv6 peut faire pour moi Qu y a-t-il dans mon PC? Qu y a-t-il dans ma CrétinBox? Qu y a-t-il dans un routeur ipv6 ready? 2014 Eric Levy-Abégnoli (Cisco) Stéphane Frati (Unice)
On a tout vu d IPv6?... Non, il reste énormément de choses à découvrir mais Ex: le DNS: Il n est pas indiqué dans les RA alors comment l obtient-on?... Comment répond un DNS à une requête de résolution de www.google.com? ( A et AAAA records; resolvers ) Peut-être aurez-vous le temps de parcourir quelques RFC Ex: La RFC3849 explique que le réseau 2001:db8::/32 est réservé pour la documentation et les tutoriaux. Ce réseau n est pas routable sur l Internet. Mais résumons ce qu IPv6 fait pour moi tous les jours
Qu y a-t-il dans mon PC?
D abord des adresses IPv6 Avec 128 bits, on en a plein alors les ISP nous fournissent des /64 Plusieurs sur une même interface Locales; Globales; Le plus souvent, il n y a pas à la configurer elles sont «automagiques» À coup sûr pour les link-local Également si vous avez défini un préfix sur le routeur amont (votre CrétinBox ) Pas besoin obligatoirement de DHCP Server
Les fameux «Lower 64 bits» Plusieurs méthodes de «génération-spontannée» EUI64 (basé sur @MAC + FFFE inserré) ISATAP, V4-mapped (cache l @IPv4 notemment pour faciliter le tunneling) Privacy Extension (option pour demander à les faire tourner de manière cyclique et ne pas se faire «tracker à la culotte» sur Internet) CGA (crypto: utilise un hash d une clé pour signer l @) manuellement
Ce qu on perd d IPv4 La compatibilité: headers incompatibles ARP remplacé par ICMPv6 : NS vers @multicast dont 24bits de fin d adresse IPv6 Link Operations Network Discovery: on récupère son @, sa dgw; on vérifie l unicité de son @ Duplicate Address Detection Source Address Selection Plus de broadcast multicast «all nodes on link» On ne peut plus «se cacher derrière une CrétinBox» qui fait du NAT car
«L idée force» est «Tout le monde veut pouvoir atteindre tout le monde en direct (si possible) sans configuration!»
IPv6 in the stack: In theory Application Transport Network Data Link Everything else HTTP, FTP, Telnet, DNS, Ping, OSPF, BGP, RIP TCP, UDP, RTP, SCTP, ICMP IPv4 ARP IPv6 IPv6 ND 802.2, 802.3, 802.5, X.25. DFFI, Frame Relay, ATM, SDH, PPP, xdsl,. Link operations Layer-3
IPv6 in the stack: reality Everything else Application Transport HTTP, FTP, Telnet, DNS, Ping, OSPF, BGP, RIP TCP, UDP, RTP, SCTP, ICMP HTTP, FTP, Telnet, DNS, Ping, OSPF, BGP, RIP IPv6 ND TCP, UDP, RTP, SCTP, ICMP Network Data Link IPv4 ARP IPv6 802.2, 802.3, 802.5, X.25. DFFI, Frame Relay, ATM, SDH, PPP, xdsl,.
Qu y a-t-il dans ma CrétinBox? Que se passe-t-il si j active l IPv6 sur ma CrétinBox?...
Qu y a-t-il dans ma CrétinBox?
IPv6 sur mon W$ C:\users\frati> ipconfig Carte réseau sans fil Connexion réseau Dell : Suffixe DNS propre à la connexion... : Adresse IPv6..............: 2e35:e35:2e0a:b430:d8e1:2b79:140e:9161 Adresse IPv6 temporaire........: 2e35:e35:2e0a:b430:de7:7026:c429:37d7 Adresse IPv6 de liaison locale.....: fe80::d8e1:2b79:140e:9161%10 Adresse IPv4..............: 192.168.0.10 Masque de sous-réseau......... : 255.255.255.0 Passerelle par défaut......... : fe80::f6ca:e5ff:fe48:e1c9%10 192.168.0.254 C:\Users\frati> arp -a Interface : 192.168.0.10 --- 0xa Adresse Internet Adresse physique Type 192.168.0.30 08-70-45-c2-bb-45 dynamique 192.168.0.91 00-02-6f-84-5f-b9 dynamique 192.168.0.221 00-e0-4c-ba-16-3e dynamique 192.168.0.249 c0-cb-38-16-14-d3 dynamique 192.168.0.254 f4-ca-e5-48-e1-c9 dynamique 192.168.0.255 ff-ff-ff-ff-ff-ff statique
http://ipv6-test.com/
IPv6 sur mon RPi sudo modprobe ipv6 Pour automatiser: ajouter ipv6 à la fin de /etc/modules
RPi voit google.v6 pi@raspberrypi ~/wiringpi $ ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 link/ether b8:27:eb:cb:ab:10 brd ff:ff:ff:ff:ff:ff 3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:02:6f:84:5f:b9 brd ff:ff:ff:ff:ff:ff inet 192.168.0.91/24 brd 192.168.0.255 scope global wlan0 inet6 2e35:e35:2e0a:b430:202:6fff:fe84:5fb9/64 scope global dynamic valid_lft 86268sec preferred_lft 86268sec inet6 fe80::202:6fff:fe84:5fb9/64 scope link valid_lft forever preferred_lft forever pi@raspberrypi ~/wiringpi $ ping6 -n google.com PING google.com(2a00:1450:4007:804::1007) 56 data bytes 64 bytes from 2a00:1450:4007:804::1007: icmp_seq=1 ttl=57 time=36.4 ms 64 bytes from 2a00:1450:4007:804::1007: icmp_seq=2 ttl=57 time=37.4 ms 64 bytes from 2a00:1450:4007:804::1007: icmp_seq=3 ttl=57 time=37.4 ms 64 bytes from 2a00:1450:4007:804::1007: icmp_seq=4 ttl=57 time=37.6 ms ^C --- google.com ping statistics --- 4 packets transmitted, 4 received, 0% packet loss, time 3004ms rtt min/avg/max/mdev = 36.455/37.240/37.610/0.458 ms
W$ voit RPi C:\Users\frati>ping 2e35:e35:2e0a:b430:202:6fff:fe84:5fb9 Envoi d'une requête 'Ping' 2e35:e35:2e0a:b430:202:6fff:fe84:5fb9 avec 32 octets de données : Réponse de 2e35:e35:2e0a:b430:202:6fff:fe84:5fb9 : temps=141 ms Réponse de 2e35:e35:2e0a:b430:202:6fff:fe84:5fb9 : temps=1 ms Réponse de 2e35:e35:2e0a:b430:202:6fff:fe84:5fb9 : temps=1 ms Statistiques Ping pour 2e35:e35:2e0a:b430:202:6fff:fe84:5fb9: Paquets : envoyés = 3, reçus = 3, perdus = 0 (perte 0%), Durée approximative des boucles en millisecondes : Minimum = 1ms, Maximum = 141ms, Moyenne = 47ms
W$ : où est mon arp a? C:\Users\frati> netsh interface ipv6 show neighbors Interface 1 : Loopback Pseudo-Interface 1 Adresse Internet Adresse physique Type -------------------------------------------- ----------------- ----------- ff02::c Permanent ff02::16 Permanent ff02::fb Permanent ff02::1:2 Permanent ff02::1:3 Permanent Interface 10 : Connexion réseau Dell Adresse Internet Adresse physique Type -------------------------------------------- ----------------- ----------- 2e35:e35:2e0a:b430:202:6fff:fe84:5fb9 00-02-6f-84-5f-b9 Caduque fe80::202:6fff:fe84:5fb9 00-02-6f-84-5f-b9 Caduque fe80::a70:45ff:fec2:bb45 08-70-45-c2-bb-45 Caduque fe80::c2cb:38ff:fe16:14d3 c0-cb-38-16-14-d3 Caduque fe80::f6ca:e5ff:fe48:e1c9 f4-ca-e5-48-e1-c9 Joignable (Routeur) ff02::1 33-33-00-00-00-01 Permanent ff02::2 33-33-00-00-00-02 Permanent ff02::c 33-33-00-00-00-0c Permanent ff02::16 33-33-00-00-00-16 Permanent ff02::1:2 33-33-00-01-00-02 Permanent ff02::1:3 33-33-00-01-00-03 Permanent ff02::1:ff0e:9161 33-33-ff-0e-91-61 Permanent ff02::1:ff29:37d7 33-33-ff-29-37-d7 Permanent ff02::1:ff48:e1c9 33-33-ff-48-e1-c9 Permanent ff02::1:ff84:5fb9 33-33-ff-84-5f-b9 Permanent ff02::1:ffc2:bb45 33-33-ff-c2-bb-45 Permanent Interface 32 : Connexion au réseau local* 20 Adresse Internet Adresse physique Type -------------------------------------------- ----------------- ----------- 2e35:e35:2e0a:b430:a70:45ff:fec2:bb45 216.66.64.138:36722 Caduque ff02::2 255.255.255.255:65535 Permanent ff02::16 255.255.255.255:65535 Permanent ff02::1:2 255.255.255.255:65535 Permanent ff02::1:ff16:14d3 255.255.255.255:65535 Permanent ff02::1:ffc2:bb45 255.255.255.255:65535 Permanent Interface 28 : Connexion au réseau local* 6 Adresse Internet Adresse physique Type -------------------------------------------- ----------------- ----------- ff02::16 33-33-00-00-00-16 Permanent ff02::fb 33-33-00-00-00-fb Permanent ff02::1:2 33-33-00-01-00-02 Permanent ff02::1:3 33-33-00-01-00-03 Permanent En IPv6, ARP est remplacé par les Neighbor Solicitation messages
Ping sweep (on a specific interface) pi@raspberrypi ~/wiringpi $ ping6 -I wlan0 FF02::1 PING FF02::1(ff02::1) from fe80::202:6fff:fe84:5fb9 wlan0: 56 data bytes 64 bytes from fe80::202:6fff:fe84:5fb9: icmp_seq=1 ttl=64 time=0.215 ms 64 bytes from fe80::f6ca:e5ff:fe48:e1c9: icmp_seq=1 ttl=64 time=1.21 ms (DUP!) 64 bytes from fe80::c2cb:38ff:fe16:14d3: icmp_seq=1 ttl=1 time=246 ms (DUP!) 64 bytes from fe80::202:6fff:fe84:5fb9: icmp_seq=2 ttl=64 time=0.196 ms 64 bytes from fe80::f6ca:e5ff:fe48:e1c9: icmp_seq=2 ttl=64 time=1.21 ms (DUP!) 64 bytes from fe80::c2cb:38ff:fe16:14d3: icmp_seq=2 ttl=1 time=82.5 ms (DUP!) ^C
Rajouter une adresse intelligible sur mon RPI Si mon adresse globale dynamique est: 2e35:e35:2e0a:b430:202:6fff:fe84:5fb9/64 Si mon adresse IPv4 est: 192.168.0.248 Je rajoute une IPv6 supplémentaire facile à retenir: sudo ip -6 addr add 2e35:e35:2e0a:b430:192:168:0:248/64 dev wlan0
Rajouter une adresse intelligible sur mon W$ En tant qu administrateur: netsh interface ipv6 add address interface=10 2e35:e35:2e0a:b430:192:168:0:10/64 store=persistent
Bienvenue Dans le monde d IPv6