7.1 : Pourquoi IPv6 ? - IUT de Nice
Transcription
7.1 : Pourquoi IPv6 ? - IUT de Nice
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) Ce document ne peut être reproduit sans l’autorisation de [email protected] 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… Ce document ne peut être reproduit sans l’autorisation de [email protected] Qu’y a-t-il dans mon PC ? Ce document ne peut être reproduit sans l’autorisation de [email protected] 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 Ce document ne peut être reproduit sans l’autorisation de [email protected] 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 document ne peut être reproduit sans l’autorisation de [email protected] 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 ! » Ce document ne peut être reproduit sans l’autorisation de [email protected] IPv6 in the stack: “In theory …” Everything else Application Transport HTTP, FTP, Telnet, DNS, Ping, … OSPF, BGP, RIP IPv6 ND Link operations TCP, UDP, RTP, SCTP, ICMP Layer-3 Network Data Link IPv4 ARP IPv6 802.2, 802.3, 802.5, X.25. DFFI, Frame Relay, ATM, SDH, PPP, xDSL, …. Ce document ne peut être reproduit sans l’autorisation de [email protected] IPv6 in the stack: “reality…” Everything else Application HTTP, FTP, Telnet, DNS, Ping, … OSPF, BGP, RIP Transport TCP, UDP, RTP, SCTP, ICMP Network IPv4 Data Link ARP HTTP, FTP, Telnet, DNS, Ping, … OSPF, BGP, RIP IPv6 ND TCP, UDP, RTP, SCTP, ICMP IPv6 802.2, 802.3, 802.5, X.25. DFFI, Frame Relay, ATM, SDH, PPP, xDSL, …. Ce document ne peut être reproduit sans l’autorisation de [email protected] Qu’y a-t-il dans ma CrétinBox ? Que se passe-t-il si j’active l’IPv6 sur ma CrétinBox ?... Ce document ne peut être reproduit sans l’autorisation de [email protected] Qu’y a-t-il dans ma CrétinBox ? Ce document ne peut être reproduit sans l’autorisation de [email protected] 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 Ce document ne peut être reproduit sans l’autorisation de [email protected] http://ipv6-test.com/ Ce document ne peut être reproduit sans l’autorisation de [email protected] IPv6 sur mon RPi sudo modprobe ipv6 Pour automatiser: ajouter ipv6 à la fin de /etc/modules Ce document ne peut être reproduit sans l’autorisation de [email protected] 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 Ce document ne peut être reproduit sans l’autorisation de [email protected] 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 Ce document ne peut être reproduit sans l’autorisation de [email protected] 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… Ce document ne peut être reproduit sans l’autorisation de [email protected] 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 Ce document ne peut être reproduit sans l’autorisation de [email protected] 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 Ce document ne peut être reproduit sans l’autorisation de [email protected] 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