Afin de mettre fin à quelques idées reçus, je lance une petite FAQ, si vous avez des questions complémentaires, posez-les, je tenterai d'y répondre.
Q. À quoi ressemblent les adresses IPv6
Les adresses IPv6 sont codées sur 128 bits (16 octets), pour faciliter la lecture de celles-ci, elles s'écrivent en hexadécimal :
abcd:ef01:2345:6789:abcd:ef01:2345:6789
Une même IPv6 peut s'écrire sous plusieurs formes :
2001:0db8:0000:85a3:0000:0000:ac1f:8001 (forme la plus longue)
On peut supprimer les 0 en début de
série :
2001:db8:0:85a3:0:0:ac1f:8001
On peut enfin réduire une série de 0 consécutif par
::, une seule et unique fois. :
2001:db8:0:85a3::ac1f:8001 ou encore 2001:db8::85a3:0:0:ac1f:8001
Une seule et unique fois car avec :
2001:db8::85a3::ac1f:8001 vous ne sauriez pas si elle représente 2001:db8:0:85a3:0:0:ac1f:8001 ou 2001:db8:0:0:85a3:0:ac1f:8001
Les adresses IPv6 de type unicast global (comprenez une seule source vers une seule destination, le fonctionnement est le même qu'avec une IPv4 (exception faite de la classe multicast) actuellement attribuées par l'IANA vont de 2000:0:0:0:0:0:0:0 à 3fff:ffff:ffff:ffff:ffff:ffff:ffff:ffff.
Il sera courant de rencontrer des adresses débutant par fe80::, je reviendrai dessus
.
Q. Quels sont les grands changements ?
Par rapport à IPv4, sans trop rentrer dans les détails de la structure du Paquet en lui-même, on va rester dans les bases...
Le broadcast disparaît, et seul le multicast est présent pour prendre la relève, le multicast, en gros, c'est une source vers plusieurs destinations mais avec un unique paquet envoyé sur le réseau,
les adresses multicast IPv6 commencent par ffxx, elles sont énormément utilisées (remplacement du broadcast oblige), une adresse multicast désigne plusieurs hôtes sur le réseau.
Au niveau de l'adressage, il n'y a plus d'adresses réseaux ni d'adresses de broadcast.
On utilise uniquement les préfixes (en quelque sorte le remplaçant de l'adresse réseau en IPv4) et le masque CIDR (sa valeur désigne le nombre de bit de poids fort qui seront utilisés pour désigner l'adresse de réseau, en fait, la première adresse du réseau sera elle-même attribuable à un hôte.
en IPv4 on utilise 192.168.0.0/24 (/24 est d'ailleurs un masque CIDR correspondant au masque de sous réseau décimal 255.255.255.0) pour désigner la plage d'adresse 192.168.0.1 à 192.168.0.254.
En IPv6 2001:db8:dead:bed::/64 désigne un réseau, dont la plage IP s'étend de 2001:db8:dead:bed:: à 2001:db8:dead:bed:ffff:ffff:ffff:ffff
Par conformité, un réseau doit réserver au minimum 64 bits pour désigner les hôtes, (pour permettre l'auto-configuration sous windows par exemple
, ce n'est pas obligatoire mais beaucoup d'avantages IPv6 seront perdus)
Sachez qu'en IPv6, il existe un type d'adresse link-local, les fameuses fe80::, qui servent à la communication sur un même réseau physique (niveau OSI 2), elles restent (normalement) inchangés pour une interface,
elles ne traversent pas les routeurs (j'ai dit niveau OSI 2, en gros si vous êtes en IPv4 sur du 192.168.0.0/24 et PC B 192.168.1.0/24, vous ne pourrez pas contacter PC B avec une adresse fe80::/64, pour cela il faudra une adresse global unicast), si votre PC possède la pile IPv6, vous devriez d'ailleurs en avoir une.
Les adresses Link-local sont équivalentes aux adresses APIPA IPv4, 169.254.0.0/16, elles sont la base pour le reste d'IPv6...
NB : Sous windows (7, pas testé sur les autres) même les adresses link-local ne dérivent PAS de l'adresse MAC, elles sont générées une fois pour toute.
Disparition d'ARP, en effet c'est NDP (neighbor discovery protocol) qui viendra faire le lien entre la couche OSI 2 et 3, le fonctionnement est globalement le même si ce n'est qu'au lieu d'utiliser le broadcast, on utilisera cette-fois ci du multicast.
L'autoconfiguration est également une nouveauté, vous pourrez vous passer d'un serveur DHCP sur votre réseau, puisque désormais il suffit que le routeur diffuse un paquet appelé router-advertisment, il contient votre préfixe global unicast [2a01:e3x:xxxx:xxx0::/64 chez free], qui permettera à votre PC de s'auto-attribuer une adresse permettant de naviguer sur internet, tout ça sans NAT, sans besoin de redirection de port et tous ces machins, prévoyez tout de même un pare-feu
, et pour les plus paranos, sachez que cette adresse n'est pas fixe (par défaut) sous windows, et ne dérive pas de votre adresse MAC.
À savoir qu'il est toujours possible d'utiliser un serveur DHCPv6, pour pouvoir s'y retrouver dans l'adressage
(surtout utile pour le monde professionnel), et pour finir, la configuration en dur est bien sûr toujours possible.
En IPv6, un hôte peut avoir plusieurs adresses IP!
Q. Quand se fera le passage à IPv6
Ce n'est pas quelque chose qui sera fera un jour J, mais progressivement !
Actuellement il y a beaucoup d'OS dit dual-stack (double-pile), qui gèrent à la fois IPv4 et IPv6, malheureusement ce n'est pas le cas pour les routeurs/switchs sur le marché (que ce soit particulier ou professionnel).
Parfois on a recours à l'encapsulation (IPv6 dans IPv4).
Lorsqu'IPv6 sera plus déployé et utilisé qu'IPv4, IPv4 ne sera sans doute jamais abandonné, il y a pas mal d'applications dans le monde pro/industriel qui ne seront sans-doute jamais mises à jour, on fera alors de l'encapsulation, mais cette fois-ci, IPv4 dans IPv6.
Si vous activez IPv6, votre ordinateur continuera
- heureusement - à gérer IPv4
Q. Le NAT (IPv4) me protège des attaques venant d'internet !
Alors d'abord sachez qu'une petite explication s'impose, le NAT, traduction d'adresse réseau est venu à cause de la pénurie d'adresse IP, en effet, les réseaux 10.0.0.0/8, 172.16.0.0/12 et 192.168.0.0/16 sont destinées à un usage sur réseau privé, autrement dit qui est isolé d'internet.
Le NAT permet à une adresse appartenant à un réseau de ce type, d'être routé sur internet en utilisant
une seule adresse IP, qui elle, est routable sur internet (souvent appelé IP public ou IP routable sur internet).
Une petite image :
Si le NAT a lui seul semble vous protéger, sans pare-feu il ne sert à rien, la seule chose qui vous protège en réalité, c'est que si vous vous amusez à envoyer des choses avec une IP comme celle-ci sur internet, votre paquet (vos données) iront directement à la poubelle, or, si votre routeur NAT ne dispose pas de pare-feu, il est aisé de forger un paquet que votre routeur transmettra dans votre réseau interne, le pare-feu et uniquement celui-ci permet d'éviter ce genre de choses.
En imaginant que les adresses IP soient une ressource infinie, voilà d'ailleurs
- pour les plus curieux - à quoi ressembleraient nos réseaux :
NB: Ce dont je parle est évidemment le type de NAT le plus répendu (dynamique), il existe du NAT statique mais cela est très peu utilisé.
Q. Que faut-il faire au niveau sécurité ?
Il est indispensable de se munir d'un pare-feu par poste, en complément si possible (plus pour les professionnels ou geek, je donne à titre indicatif), d'un pare-feu au niveau de la passerelle par défaut (routeur), sous linux, on peut facilement retrouver une configuration similaire à ce qu'on faisait en IPv4 juste avec 2 lignes (avec une policy à DROP par défaut) :
1 2
| ip6tables -A FORWARD -i IF_LAN -o IF_WAN -m state --state NEW,RELATED,ESTABLISHED,UNTRACKED -j ACCEPT
ip6tables -A FORWARD -i IF_WAN -o IF_LAN -m state --state RELATED,ESTABLISHED -j ACCEPT |
Dans ce cas, les connexions initialisées vers un hôte local seront autorisées seulement si cet hôte a initialisé lui-même la connexion, à vous après d'affiner selon vos geekeries
(serveurs, P2P, VoIP, etc...)
Q. Comment accéder à l'IPv6 si mon FAI ne le permet pas ?
C'est là que 6in4 (ou protocole 41) est utile, il encapsule les paquets IPv6 dans des paquets IPv4, permettant l'acheminement de paquets IPv6 vers internet via ce qu'on appelle communément un tunnelbroker (un routeur appartenant à un prestataire qui va lire votre paquet IPv6, et le retransmettre nativement vers internet), ils sont généralement gratuit et fiable.
Afin de comprendre comment fonctionnent les tunnelbrokers, le 6in4, (
http://www.tunnelbroker.net/, ou encore
http://www.sixxs.net/ pour les plus connus) voici un petit schéma :
Pour le bon fonctionnement de ce système, le protocole 41 ethernet doit être redirigé vers le PC ayant la terminaison du tunnel.
Le protocole 41 est niveau OSI 2, c'est à dire ETHERNET, il est inutile de rediriger quelconque port udp/tcp (OSI 4), la dmz est l'unique solution à moins que vous possédiez un pc ou un routeur avec iptables ou autre firewall assez flexible au niveau de la configuration
)
2 |
0 |