La pénurie d'adresses IP.
Constat et Solutions
La pénurie d'adresses IP disponibles pour connecter de nouvelles machines à l'Internet est souvent pointée du doigt par les prophètes de la fin prochaine du réseau mondial comme l'un des problèmes techniques les plus critiques auquel doit faire face le réseau pour garantir la pérennité de son développement. Au-delà des problèmes chroniques d'engorgement et de leur répercussion au niveau des tables de routage, l'impossibilité de fournir suffisamment d'adresses aux nouveaux venus sur le réseau menacerait de donner un coup d'arret brutal à la croissance exponentielle de ce nouveau media. Mais quelle est la cause profonde de cette pénurie ? Comment fonctionne le systeme d'attribution des adresses ? Quelle est l'ampleur réelle du phénomène et quels sont les moyens d'y remédier ?
Le système de répartition des adresses sur Internet
Comme on le répète souvent, l'Internet est un réseau international dépourvu d'organe de contrôle ou de gouvernement : nul ne peut contenir son extension et sa croissance exponentielle, personne ne décide sur le réseau quel site ou personne peut rejoindre l'Internet, ou au contraire, qui doit en être exclu. Personne enfin, n'impose l'usage de tel protocole plutôt que tel autre, de façon impérative. Pourtant, de par sa structure même dont les fondements reposent dans le protocole originel IP (Internet Protocol), l'Internet comme tous les autres réseaux a besoin pour fonctionner qu'un certain nombre de paramètres parmi tous les paramètres indispensables au bon fonctionnement d'un réseau soient assignés impérativement de façon UNIQUE. Parmi ceux-ci, les noms de domaines (deux sites distincts ne peuvent partager le même nom de domaine), les numéros de ports TCP/UDP qui canalisent les informations vers les bonnes applications par défaut, les MIBs et bien sûr avant tout, les adresses IP des machines connectées. En effet, deux machines sur le réseau ne peuvent partager la même adresse IP puisque ce numéro est l'unique paramètre devant permettre aux paquets d'information de retrouver leur destination sur le réseau. Il est par conséquent capital pour la bonne marche du réseau que ces adresses IP soient assignées de façon concertée, et c'est pourquoi fut créée sous l'égide de l'IETF (la branche technique de l'Internet Society qui valide les différents protocoles et au tout premier lieu TCP/IP), l'IANA ou Internet Assigned Numbers Authority, centre de coordination pour la distribution de tous les paramètres à valeur unique sur l'Internet. Pour mener à bien sa tâche, l'IANA délègue ses fonctions à différents organismes régionaux, qui eux-mêmes cèdent le plus souvent une partie de leur activité à d'autres organismes, sur des bases régionales ou fonctionnelles. Ainsi, par exemple, l'InterNIC, géré par une société privée (Network Solution) est responsable des attributions de l'IANA pour l'ensemble du continent américain. Il tente cependant de déléguer la gestion de l'attribution des adresses IP à une nouvelle entité à but non-lucratif, l'ARIN ou American Registry for Internet Numbers, afin de séparer l'activité "rentable" que constitue l'enregistrement payant des noms de domaines et l'attribution des adresses IP que chacun souhaite conserver gratuite. Pour l'Europe, le découpage par pays de la hiérarchie des domaines du plus haut niveau (top-level domain : ".uk", ".fr", ".de", etc.) a abouti à une délégation finale de la gestion des noms de domaine à des organismes nationaux. Ainsi en France, c'est le NIC France qui gère le domaine .fr et attribue les différents noms de domaine selon des critères et à des prix qui lui sont propres. Par contre, les fonctions d'attributions des plages d'adresses IP restent entre les mains de l'organisme européen, le RIPE NCC qui gère également le Moyen-Orient et l'Afrique. Ce dernier n'attribue cependant pas directement les adresses aux utilisateurs finals, mais uniquement aux prestataires de service Internet, qui les répartissent ensuite entre leurs différents clients. Ces différents ISP (Internet Service Provider ou prestataires de service internet) sont désignés par le RIPE comme des Local Internet Registries auxquelles les entreprises peuvent s'adresser pour se voir allouer un champ d'adresses IP correspondant à leurs besoins. Dans chaque pays, ces Local Internet Registries sont classés en trois catégories (Large, Medium et Small), selon leur degré de participation au budget du RIPE-NCC (participation dont le montant autrefois volontaire est depuis 1995 édicté par le RIPE-NCC de façon impérative). On dénombre 5 Large Local Internet Registries pour la France : notamment des opérateurs (France Telecom via sa filiale Transpac, AT&T et Cegetel), et de très gros prestataire d'accès Internet (UUNET et RENATER, cœur du réseau Internet académique et de la recherche en France). Onze sociétés proposent leurs services en tant que Medium Local Internet Registries pour la France (notamment des prestataire de service internet professionnel comme Oleane ou Internet Way, ainsi que des opérateurs et prestataire de services étrangers souhaitant développer un réseau européen ou disposant de filiales en France). Enfin, on dénombre 44 Small Local Internet Registries. Notons également que deux autres prestataires peuvent attribuer des champs d'adresses sur la France de part leur statut de Supernational Internet Registries : il s'agit de IBM Global Network et de Eunet.
L'intérêt d'un tel système hiérarchique d'attribution des adresses reposant, à la base de la pyramide, sur la fourniture de l'accès physique au réseau et des adresses IP par un même Prestataire de Service est très sensible en terme de routage. Il permet en effet d'attribuer à un prestataire de service internet un Provider Aggregatable Address Space, c'est à dire un espace d'adressage unique pour ses clients qui partageront tous le même début d'adresse IP (les x premiers bits de l'adresse). Ceci permet de diminuer de façon significative les tables de routages en routant automatiquement vers le provider toutes les adresses contenues dans son espace d'adresses agrégeable, et en lui laissant alors la charge de router sur ses réseaux internes les paquets vers les réseaux de ses clients. La conséquence logique de cette technique d'attribution est de nécessiter un changement d'adresse lors de tout changement de prestataire d'accès puisque chaque préfixe d'adresse est propre à chaque prestataire.
Seule l'attribution d'un Provider Independent Address Space, un espace d'adresses indépendant du Provider permet de changer l'accès physique à l'Internet d'un réseau sans modifier son adressage, mais au prix d'un gonflement inévitable des tables de routage mondiales de l'Internet. C'est pourquoi l'on cherche à limiter au maximum l'usage de tels champs d'adressages, en leur préférant ceux décrit au paragraphe précédent.
Les solutions à la pénurie d'adresses IP
Subneting et CIDR
La première solution au problème de pénurie progressive des adresses IP est de tenter de mieux utiliser les adresses existantes, et notamment celles encore non attribuées. Une des grandes difficultés réside dans le fait que beaucoup de société ont besoin de plus de 256 adresses (aussi une classe C se révèle-t-elle insuffisante), même si elles sont loin de pouvoir utiliser l'intégralité des adresses d'une Classe B. Deux choix sont alors possibles : attribuer un bloc de plusieurs classes C, mais ceci nécessite de découper le réseau d'entreprise en sous-réseaux de 255 machines reliées par des routeurs. Ou bien allouer une partie seulement d'une classe B en créant artificiellement un masque de sous-réseau découpant le bloc de 65000 adresses en des espaces d'adressages plus petit. Grâce au classless inter-domain routing ou CIDR, il est désormais possible pour les prestataires d'accès de découper à loisir les espaces d'adresses qui leurs sont alloués d'un seul bloc et de ne faire figurer dans les principaux routeurs de l'Internet qu'une unique adresse et un préfixe de sous-réseau permettant de router automatiquement vers le prestataire l'ensemble des paquets adressés à l'une quelconque des adresses contenu dans ce bloc. On s'affranchit ainsi du découpage arbitraire et peu flexible en classes : l'allocation des ressources est plus fine et les tables de routages sont allégées au coeur du réseau.
En ce sens, le subneting et CIDR ne sont pas de véritables solutions au problème de la rareté des adresses IP, mais en permettant une allocation plus fine des ressources, elles repoussent d'autant les conséquences de la raréfaction accélérée des adresses IP.
Les réseau Privés et la Translation d'adresse
Il est également possible de bâtir un réseau d'entreprise en utilisant l'un des espaces d'adressage réservés aux réseaux privés coupés de l'Internet. Le réseau de classe A 10.0.0.0, les réseaux de classe B allant de 172.16.0.0 à 172.31.0.0, ainsi que ceux de classe C courant de 192.168.0.0 à 192.168.255.0 sont définis par la RFC (Request for Comment - publications de l'IETF) 1918 comme non attribués sur l'Internet et réservés au réseaux privés déconnectés. Il est alors possible de relier ces réseaux à l'Internet public en utilisant les routeurs comme des NAT, ou Network Address Translators, qui vont attribuer à la volée une adresse publique aux machines internes désireuses d'établir une connexion avec l'Internet public, et effectuer une traduction automatique des adresses IP dans l'en-tête des paquets.
Les réseaux privés et les proxy
Il est également possible de relier ces réseaux privés à l'Internet via des passerelles de plus haut niveau : si la translation d'adresse est une intervention au niveau 3 du protocole (couche OSI de niveau 3, c'est à dire IP), il est également possible d'utiliser des passerelles applicatives pour chacun des services auxquels on souhaite donner accès sur Internet. De telle passerelles appelés proxy établissent des connexions par procuration sur des serveurs publics de l'Internet et font suivre les communications jusqu'aux machines du réseau interne. Ainsi, un proxy HTTP sera doté d'une adresse IP sur le réseau privé interne, et d'une seconde adresse IP sur l'Internet : chaque fois qu'un poste interne souhaitera initier une requête sur le Web, il la dirigera sur le proxy qui se trouve sur son propre réseau, et donc accessible, et ce dernier se chargera d'effectuer la connexion HTTP vers le serveur Web ad-hoc, avant de faire suivre le résultat de la requête (une page HTML par exemple) jusqu'à l'application originaire de la demande. La session Web se passera pour l'utilisateur de la même manière que s'il était directement connecté à l'Internet, alors même qu'une seule machine du réseau est effectivement reliée au réseau public. Il est ainsi possible de faire accéder des centaines de machines aux principales ressources de l'Internet sans qu'elles soient directement reliées au réseau public, et en n'utilisant donc qu'une seule adresse IP publique.
De surcroît, on peut constater qu'un nombre croissant d'entreprises contraignent leurs employés à emprunter de tels proxys applicatifs pour accéder aux ressources externes, notamment pour des raisons de sécurité (le proxy est alors obligatoire pour contourner un firewall) ou bien d'efficacité (le proxy peut-être couplé à un cache qui améliore le rendement du réseau public) : dans ces conditions, l'attribution de plage d’adresses IP publiques à ces postes de facto coupés de l’Internet public par un accès indirect via proxy est un pure gâchis d’adresse. D’une manière générale, la volonté des directions informatiques de maîtriser le trafic de données vers le réseau public, ainsi que l’utilisation généralement bornée des ressources de l’Internet (c’est à dire limitée à quelques applications ou service classiques comme le courrier électronique ou le Web) permet d’envisager pour la plupart des utilisateurs professionnels de l’Internet, l’utilisation d’adresses IP réservées aux réseaux internes et l’accès aux réseau public via des proxys. C’est au contraire du côté du grand public et des usages domestiques de l’Internet que la nécessité de disposer d’une adresse publique propre lors de la connexion au réseau public est impérative : c’est bien l’utilisateur dans un contexte non-professionnel de l’Internet qui souhaitera accéder à des services originaux et non relayé par un proxy comme des serveurs de jeu en réseau, de nouvelles applications de vidéo à la demande ou de conférences textuelles temps réel. Mais jusqu’à présent, l’essentiel de ces utilisateurs font usage de connexions à la demande via un prestataire d’accès à l’Internet joint quelques heures pas jour par téléphone : nul n’est besoin d’attribuer à chacun d’entre eux une adresse IP fixe, celles-ci étant au contraire réparties entre les modems du prestataire et distribué à la demande lors de chaque connexion. Ainsi, une dizaine d’abonnés au moins de ces services d’accès à Internet partagent la même adresse IP fixe publique.
IPv6
Enfin, le dernier moyen de contrer la pénurie progressive d’adresses est de changer de protocole réseau, de mettre en oeuvre un nouveau protocole doté d’un champs d’adressage plus vaste. Cette solution radicale a pour avantage indéniable de résoudre une fois pour toute le problème, si tant est que le nouveau champs d’adressage soit suffisamment large pour durer " indéfiniment " ou presque, et que la politique d’attribution des adresses soit contrôlée, afin d’éviter de gâcher inutilement de nouvelles adresses. La nouvelle spécification du protocole IP, la version 6 ou IPv6, a été conçu dans cette perspective. Dotée d’un système d’adressage sur 128 bits, elle permettrait théoriquement d’attribuer une adresse au moins à chaque atome de l’univers. En tout état de cause, chaque habitant de notre planète disposera de milliards d’adresses pour son usage personnel. Il sera ainsi bientôt possible d’attribuer des adresses IP à chaque ampoule électrique, chaque serrure, chaque appareil ménager etc., ouvrant ainsi la voie à toutes les applications domotiques du futur. En outre, cette nouvelle version de l’Internet Protocol corrige un certain nombre de faiblesses de la version 4 d’IP, en permettant par exemple de mieux discrétiser des flux d’informations de priorités différentes, facilitant notamment la diffusion de contenu temps réel sur le réseau. De surcroît, le nouvel adressage privilégie une structure hiérarchique sur l’ancien système des classes, facilitant ainsi le routage au coeur du réseau (toutes les adresses géographiquement localisées en Europe pourront ainsi débuté par le même bloc de bits).
La grande difficulté du passage à IPv6 qui sera en définitive la solution ultime au problème de la raréfaction es adresses IP, et accessoirement à la croissance exponentielle des tables de routage au coeur du réseau, est qu’il est nécessaire de mettre à jour l’ensemble des matériels et logiciels en vigueur sur le réseau. Cette tâche ne pourra être effectuée en une seule fois sur une période de temps limitée (un ou deux jours comme ce fut le cas lors de la précédente mise à jour du protocole, de la version 3 à la version 4). La migration sera progressive et difficile, même si l’on nous promet des solutions de compatibilité permettant d’encapsuler des paquets IPv6 dans des datagrammes IPv4 et vice versa, ainsi que des système de traduction automatique d’adresse permettant de faire cohabiter au sein du même réseau les deux protocoles. Cependant, toutes les difficultés technologiques liées à cette migration nécessaire ne sont pas encore résolues et personne ne sait exactement comment se déroulera cette période de transition, ni quelle sera a priori sa durée.
La pénurie d'adresses, notamment manifeste au niveau des champs d'adressage de taille moyenne - quelques milliers d'adresses - est bel et bien réelle et d'actualité. Néanmoins, un certain nombre de techniques parmi lesquelles CIDR pour les prestataires de service, ou la translation d'adresses (NAT) pour les utilisateurs finals permettent de patienter efficacement jusqu'au déploiement progressif d'IPv6 dans les prochaines années. En outre, l'usage banalisé de l'Internet dans les entreprises requière de plus en plus l'utilisation de solutions de sécurité à base de firewalls : le passage contraint par des proxy ainsi induit peut s'accompagner d'un système d'adressage privé sur l'intranet de l'entreprise, l'accès aux ressources utiles de l'Internet via ces seuls proxys permettant une réduction drastique du nombre d'adresses visible depuis le réseau public.
Silvère TAJAN et Denis GADOT.
Qu'est-ce qu'une adresse IP ?
Le socle fondateur sur lequel repose l'Internet n'est pas une infrastructure élémentaire ou originelle. Ce n'est pas non plus un quelconque organisme régulateur, mais un protocole, ou plutôt une pile de protocoles de niveau 3 et 4 qui représentent l’espéranto de l'interconnexion de réseaux et de la communication entre ordinateurs : TCP/IP. Parmi ces protocoles, IP ou internet protocol qui a donné son nom à l'Internet est celui chargé d'acheminer les paquets d'information qui lui sont confiés par les protocoles et applications de niveau supérieurs à bon port. Pour ce faire, IP encapsule l'information dans un datagramme dont l'en-tête ne contient que l'adresse de l'ordinateur émetteur, celle de l'ordinateur destinataire de l'information, ainsi que quelques paramètres supplémentaires comme le numéro de version du protocole, la taille du paquet ou la notification de son éventuelle fragmentation. Le routage du paquet sur le réseau consistera alors à déterminer à chaque embranchement, quel route devra emprunter le paquet pour atteindre sa destination, et ce compte tenu des éventuelles informations sur l'état ou l'encombrement du réseau échangées par les routeurs.
L'adresse IP est donc l'élément fondamental de désignation d'une machine sur le réseau. Elle est codée sur 32 bits, généralement représentés sous la forme de quatre nombres décimaux de trois chiffres séparés par des points (notation décimale pointée ou dotted decimal notation). Chacun de ces nombre pourra donc prendre une valeur comprise entre 0 et 255, soit un champs d'adressage théorique compris entre 0.0.0.0 et 255.255.255.255. Ainsi, il est possible d'adresser grâce à ces conventions plus de 4 milliards de machines différentes, soit beaucoup plus que les estimations les plus optimistes du nombre d'ordinateurs actuellement connectés au réseau. Cependant, à l'époque où l'Internet ne reliait que quelques centaines de gros ordinateurs, l'idée que le nombre de machines connectées puisse un jour dépasser le million paraissait suffisamment loufoque pour que l'on allouât les adresses de façon anarchiques et sans précautions. Résultat : à la fin de ce siècle, les adresses libres font de plus en plus cruellement défaut alors même que l'on est loin d'atteindre les 4 milliards de machine qu'autoriserait normalement l'espace d'adressage de 32 bits.
L'espace d'adressage est structuré en 5 classes d'adresses que l'on différencie par leurs premiers bits : 0 pour la classe A, 10 pour la classe B, et ainsi de suite jusqu'à 11110 pour la classe E. Les trois premières classes d'adressages représentent des champs d'adresses à attribuer à des réseaux de taille variable. Comme on peut le voir dans la figure ci-contre, les adresses de classes A comprennent un identificateur de réseau codé sur 7 bits (soit 128 réseaux différents de classes A), et un identificateur de machine dans le réseau codé sur 24 bits. Ainsi, un tel réseau de classe A peut comprendre jusqu'à 16 millions de machines. De la même façon, on pourra définir 16384 réseaux de classe B adressant chacun 65536 machines, et plus de deux millions de réseaux de classes C composés au maximum de 256 machines chacun. La classe d'adresses D est quant à elle réservée au multicast, c'est à dire à la communication de données en direction d'un groupe de machines disséminées mais partageant la même adresse multicast, sans qu'il soit nécessaire d'émettre un paquet différent pour chaque machine membre du groupe multicast. Enfin, la dernière classe d'adresse demeure inexploitée.
Notons enfin que certains espaces d'adressages des trois premières classes sont volontairement inutilisées sur l'Internet afin d'en laisser l'usage aux réseaux privés coupés de l'Internet public mais désireux d'utiliser IP et les technologies de l'Internet en interne.
|