💾 Archived View for zergy.net › blog › 001-ipocalypse.gmi captured on 2024-03-21 at 15:18:47. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-05-24)
-=-=-=-=-=-=-
En 2011, les derniers blocs d'adresses IP v4 ont été attribués. Avant de paniquer sur la fin d'internet, essayons d'y voir plus clair.
Afin de communiquer sur un réseau, les ordinateurs et logiciels utilisent des protocoles et des normes, ceux-ci vont de la forme que doit avoir le connecteur de la carte réseau à la fréquence des ondes Wi-Fi en passant par la taille d'une requête et la façon d'envoyer des données. Parmi ces protocoles de communication, l'un des plus utilisé est le protocole IP (pour « Internet Protocol »), celui-ci fait utilisation d'adresses dites IP afin que les équipements l'utilisant puissent se contacter, comme les adresses physiques permettant à une lettre d'arriver à destination. Une adresse IP désigne donc un équipement sur un réseau informatique, celle-ci peux être assignée manuellement ou automatiquement par un service DHCP.
Quelle forme prennent-elles ?
Il existe actuellement deux protocoles IP, l'IP version 4 (ci-après « IPv4 ») et l'IP version 6 (ci-après « IPv6 »). Le premier à été créé au début des années 1980; le second date des années 2000. Actuellement, IPv4 est encore très massivement utilisé, que ce soit sur internet ou sur votre réseau local si vous en avez un. Une adresse IPv4 est codée sur 32 bits et prend la forme suivante :
AAA.BBB.CCC.DDD
Où AAA, BBB, CCC et DDD peuvent varier de 0 à 255 (notation décimale de mots de 8 bits), on obtient donc 2³² adresses possible en théorie, soit 4 294 967 296. IPv6 est son successeur, en plus d'apporter de multiples améliorations, il modifie totalement le système d'adressage ; à présent les adresses sont codées sur 128 bits et prennent cette forme :
aaaa:bbbb:cccc:dddd:eeee:ffff:gggg:hhhh
Où les blocs, séparés par le signe deux points « : », varient de 0 à ffff (notation hexadécimal de mots de 16 bits), on obtient 2¹²⁸ adresses possibles théoriquement, c'est à dire… heu… beaucoup. :) 340 282 366 920 938 463 463 374 607 431 768 211 456 pour être plus précis. Pour simplifier la notation d'une adresse IPv6, on a établi la méthode suivante, prenons l'IPv6 2001:0db8:0000:85a3:0000:0000:ac1f:8001 :
Dans la suite de cet article, j'utiliserai très souvent la notation dite CIDR. Celle-ci est une méthode de notation du masque de sous-réseau. Un masque de sous réseau késako ? Il s'agit d'un masque binaire appliqué sur une adresse IPv4 ou IPv6 pour savoir si elle fait partie du même réseau qu'une autre. Ils font la séparation entre les bits de l'adresse IP qui désignent le réseau et ceux qui désignent les machines de ce réseau. Prenons un exemple : Nous avons deux ordinateurs connectés physiquement au même réseau IPv4, ils utilisent les adresses IPv4 192.168.5.4 et 192.168.5.78 et utilisent tous deux le masque de sous-réseau 255.255.255.128. Traduisons ces IPv4 en binaire :
Décimal IPv4 PC1 : 192.168.5.4 Masque PC1 : 255.255.255.128 IPv4 PC2 : 192.168.5.78 Masque PC2 : 255.255.255.128 Binaire IPv4 PC1 : 11000000.10101000.00001001.00000100 Masque PC1 : 11111111.11111111.11111111.10000000 IPv4 PC2 : 11000000.10101000.00001001.01001110 Masque PC2 : 11111111.11111111.11111111.10000000
Tout les bits d'adresse IP ayant le même poids qu'un bit de masque de sous-réseau à 1 est dit masqué et désigne le réseau, dans notre cas, nous avons donc les 25 premiers bits en partant du poids fort qui sont assignés au réseau, les 7 autres sont utilisés pour désigner les machines de ce réseau.
__________________________ / \ IPv4 PC1 : 11000000.10101000.00001001.00000100 Masque PC1 : 11111111.11111111.11111111.10000000 IPv4 PC2 : 11000000.10101000.00001001.01001110 Masque PC2 : 11111111.11111111.11111111.10000000 \__________________________/ Bits réseau
Les bits désignant le réseau doivent être identiques pour que les deux ordinateurs se voient comme faisant partie du même réseau. Dans notre exemple, c'est le cas. :) La notation CIDR est une forme raccourcie qui indique le nombre de bits du masque de sous-réseau d'une adresse IP qui sont assignés à la désignation du réseau. Dans notre exemple, la notation CIDR des adresses des ordinateurs PC1 et PC2 est :
Si en IPv4 la notation de masque de sous réseau décimal est très utilisée, elle a été abandonné en IPv6, non seulement parce qu'il n'y a plus de notation décimale en IPv6, mais aussi pour raccourcir la notation.
Pourquoi changer ?
IPv6 apporte diverses améliorations comme la simplification des trames réseau qu'il utilise, l'intégration d'IPSEC qui était une fonctionnalités externe de IPv4 ou la possibilité de joindre une machine plutôt qu'une autre en fonction de ses meilleurs performances réseau (voir Anycast) et la disparition pur et simple de la diffusion (ou broadcast). Petit aparté sur les broadcast, anycast, multicast et tout :
Vous avez besoin de plus d'adresses IP !
Cependant, dans cet article, nous verrons d'avantage le second problème que IPv6 règle : Le manque d'adresses IPv4.
Quand IPv4 à été créé dans les années 80, on pensait qu'il y aurait assez d'adresses pour tout le monde ; personne n'avait vraiment vu venir le succès du réseau Internet qui n'était réservé qu'aux universités et structures gouvernementales à l'époque. De plus, on ne pensait pas qu'arriverait un jour des hordes de téléphones portables pouvant s'y connecter. Vous allez me dire que 4 milliard d'adresses devraient suffire, mais pour être franc, les 2³² adresses ne sont que théoriques, certaines plages d'adresses ne sont pas utilisables sur Internet, voici lesquelles :
Bref, seules 3 707 435 775 adresses sont réellement utilisables.
Il fût un temps, il suffisait de faire une demande pour se voir attribuer une grosse plage d'adresse d'adresses, regarder la cartographie des adresse IPv4 (carte de 2006) vous montrera que nombre de gros emplacements ont été attribués directement à des entreprises ou à des administrations des États-Unis. Cela date des années 1980, quand on ne pensait pas en voir le bout. Cependant, avec le temps, on s'est rendu compte qu'on ne pourrait pas continuer à gaspiller ainsi et on s'est mis à rationaliser, ceci à mené à la création de l'IANA au niveau mondial et de divers bureaux d'attribution au niveau continental et national nommés Registre Internet Régionaux (ci-après « RIR »).
Actuellement, les plages d'adresses IP, qu'elles soient en v4 ou en v6, sont détenues par l'IANA, elles sont ensuite fournies aux RIR continentaux en fonction de leurs besoins. Une fois entre les mains des RIR continentaux, elles sont fournies aux RIR nationaux, puis enfin, aux entreprises, ou administrations.
Non, tout simplement car les adresses IP ne sont pas du pétrole, même s'il n'y en a plus en réserve, elles ne s'usent pas, de la même façon, il est possible de remettre dans le pot commun les plages d'adresses non utilisées. Enfin, si l'IANA n'a plus une adresse IPv4 en réserve, les RIR en disposent encore un peu par effet de transmission. Au pire, Internet aura du mal à croître Mais heureusement, si vous avez suivi, IPv6 va pouvoir prendre la relève et supprimer ce petit problème. :)
Malheureusement, le changement ne se fera pas d'un claquement de doigt, nombre d'entreprises et de Fournisseurs d'Accès à Internet (ci-après « FAI ») ont traîné les pieds pour y passer, et puisque c'est au pied du mur que l'on voit mieux le mur, peut-être le tarissement des adresses IPv4 au niveau de l'IANA va les pousser à se rendre compatibles IPv6 en vitesse.
Avant tout, répondons à quelques bêtises que l'on trouve régulièrement.
Si je passe à IPv6, je ne pourrai plus accéder aux serveurs qui sont uniquement IPv4.
C'est faux, il est possible d'avoir ce que l'on appel une double pile IP, c'est-à-dire que votre carte réseau aura à la fois une adresse IPv4 et une adresse IPv6, par exemple, voici ce que ça donne chez le FAI auquel je suis abonné.
Sous GNU/Linux :
ppp0* Link encap: Protocole Point-à-Point inet adr:80.67.176.144 P-t-P:62.4.16.41 Masque:255.255.255.255 adr inet6: fe80::5043:b090:0:0/10 Scope:Lien adr inet6: 2001:910:1090::1/64 Scope:Global […]
Sous Microsoft Windows :
Carte Ethernet Marvell Yukon 88E8001 Gigabit Ethernet : Suffixe DNS propre à la connexion : zergy.lan Adresse IP : 192.168.2.2 Masque de sous-réseau : 255.255.255.0 Adresse IP : 2001:910:1090:2:c03:256d:9235:62e3 […]
On voit bien ici que les connexions disposent d'une adresse IPv4 (192.168.2.*) et d'une adresse IPv6 (2001:910:1090:*) Les connectivités IPv4 et IPv6 sont utilisées selon les besoins. Les adresses IPv6 en fe80:* sont des adresses de liens locaux, j'y reviendrai par la suite.
IPv6 permet moins d'anonymat que IPv4
On entend souvent cette bêtise à propos de deux choses :
Les systèmes de Translation d'Adresses et Port Réseaux, aussi nommée PAT/NAT, sont un placébo trouvé vers la fin des années 1990 pour permettre à plusieurs ordinateurs d'un réseau local (adresses IPv4 de classes A, B ou C) d'être connecté à Internet avec une seule IPv4 publique. Certains prêtent à ce système une sécurité puisque les machines à l'intérieur du réseau local ne sont pas directement joignables depuis Internet puisqu'on ne dispose que d'une IP publique. Cependant, en IPv6, s'il est vrai que tous vos équipement auront une adresse IPv6 publique, les murs de feu de ces machines seront là pour bloquer les attaques, et n'oublions pas qu'un système de PAT/NAT n'empêche pas de se prendre des tuiles, la première faille dans un système informatique étant bien souvent l'utilisateur. Mais réjouissons-nous, avec la disparition du PAT/NAT fini la redirection de port nécessaire pour jouer correctement. :) Pour le problème de l'adresse MAC dans l'adresse IPv6 publique, c'est vrai si l'adresse est réglée automatiquement, et faux si vous la réglez à la main. Et vu qu'en IPv6 votre FAI vous donne gracieusement une plage d'adresses IP, à vous de choisir celle qui vous convient.
Comme les FAI fournissent des plages d'adresses IPv6, on aura encore le même problème
La plage des IPv6 utilisables sur internet vont de 2000:0000:0000:0000:0000:0000:0000:0000 à 9fff:ffff:ffff:ffff:ffff:ffff:ffff:ffff, c'est-à-dire :
On prend ici le fait que vous souhaitez juste vérifier que vous pouvez vous connecter au réseau Internet en IPv6, il vous faut :
Actuellement, en France, les quatre FAI suivants sont compatibles IPv6 :
Pour les autres :
Les matériels réseaux devant être vérifié pour le passage à IPv6 sont votre routeur -généralement la *box de votre FAI- et votre point d'accès Wifi si celui-ci est un élément à part du routeur. Si vous utilisez votre *box en mode « Bridge » (mode simple modem ADSL) ou que vous n'avez qu'un simple modem (ADSL ou RTC) pour vous connecter, vous n'êtes pas concerné par cette section, en effet un modem utilise les protocoles PPP et ATM, et n'est donc pas concerné par des problèmes d'IPv4 ou IPv6. C'est à l'équipement se trouvant derrière de faire la connectivité IP. Aujourd'hui encore, bon nombre de modems-routeur ou routeurs grand public n'offrent pas de connectivité IPv6, faites attention lors de vos achats. Pour ce qui est des box des FAI :
Pour tous les équipements et FAI, consultez la documentation fournie et mettez le micro-logiciel (firmware) à jour si besoin.
Les systèmes d'exploitation récents sont compatibles avec IPv6, par récent on entend :
Quelque soit votre système d'exploitation, le support d'IPv6 doit être activé par défaut, sauf sur Windows XP, voici comment faire pour celui-ci :
Connectez-vous à un site de test.
Si en IPv4 votre FAI ne vous fournissait qu'une seule et unique adresse IP, en IPv6 vous avez droit à une plage complète, généralement, on vous attribue un /64, certains FAI comme FDN fournissent un /48. Le problème étant de trouver moyen d'utiliser ces 2⁶⁴ (ou 2⁷², ou 2⁸⁰) adresses. :D Mais outre la plage d'adresse IPv6 publique que vous fournit votre FAI, vous en trouverez d'autres, décrivons-les rapidement :
A présent que votre connectivité IPv6 à Internet est en place, vous pouvez tester si un serveur quelconque est lui aussi compatible, pour cela, il suffit d'avoir quelques petits outils.
Si vous utilisez le navigateur internet Mozilla Firefox, il existe l'extension « SixOrNot » qui vous indiquera si le serveur du site que vous visitez peut être joint en IPv6.
Ceux-ci n'étant pas installés de base sous Microsoft Windows voici la procédure pour les mettre en place :
Il faut ensuite ajouter le dossier d'installation à la variable PATH du système, pour plus facilement les utiliser.
Sous Windows XP et 2003 :
Sous Windows Vista et 7 :
Utilisation
Nous allons ici uniquement utiliser la commande host pour interroger un serveur DNS (ceux qui traduisent les adresses IP en nom intelligible et vice-versa) afin de savoir si un serveur dispose d'une IPv6. D'autres commandes comme dig sont fournies par ces outils mais ne sont pas décrites ici. L'utilisation est très simple, il suffit d'ouvrir une invite de commande et de taper la commande :
$ host nomDuServeur
Exemple avec une machine compatible IPv6 :
$ host www.zergy.net www.zergy.net is an alias for enalys.zergy.net. enalys.zergy.net has address 80.67.176.144 enalys.zergy.net has IPv6 address 2001:910:1090:2::1
La commande nous répond que www.zergy.net est un surnom du serveur enalys.zergy.net et que l'adresse IPv4 ce celui-ci est 80.67.176.144. Cependant, la réponse nous indique également que enalys.zergy.net dispose d'une adresse IPv6 qui est 2001:910:1090:2::1. Exemple avec une machine non compatible IPv6 :
$ host www.aeriesguard.com www.aeriesguard.com is an alias for aeriesguard.com. aeriesguard.com has address 78.41.233.87 aeriesguard.com mail is handled by 30 mx2.celeonet.com. aeriesguard.com mail is handled by 25 mx3-cl.celeonet.fr.
La commande nous répond que www.aeriesguard.com est un surnom du serveur aeriesguard.com et que l'adresse IPv4 ce celui-ci est 78.41.233.87. Les autres lignes indiquent quels sont les serveurs de messagerie utilisés par le domaine aeriesguard.com, rien ne concerne une quelconque compatibilité IPv6. :(
Traité de l’art juste de fabriquer des adresses hypées (HTTPS)