Pourquoi l'IETF a-t-il spécifié spécifiquement 192.168 / 16 comme une classe d'adresse IP privée?

Pourquoi l' Internet Engineering Task Force (IETF) a-t-il choisi 192.168/16 comme une classe d'adresse IP privée et pas autre chose?

Pourquoi spécifiquement 192.168/16 et 10/8 et 172.16/12 et non pas 145.243/16 par exemple?

Existe-t-il une raison pour laquelle ces adresses IP ont été choisies pour être la norme pour les adresses IP privées sur toutes les autres possibilités?

Je sais qui a choisi ces plages d'adresses. Malheureusement, il est mort, donc je ne peux pas lui demander exactement pourquoi il les a choisi, mais je peux faire des suppositions bien éclairées.

Il n'y a pas beaucoup de rencontres en ligne avant le milieu des années 1990, lorsque Internet a vraiment commencé à décoller. Quelle est l'histoire de l'Internet est principalement dans les RFC qui le définissent, qui remontent à 1969 , au début de l'ARPANET. Grâce à eux, vous pouvez regarder les progrès de l'Internet à partir d'un réseau novateur de quelques mainframes primitifs, conçus par certains des esprits les plus brillants de l'époque, au réseau auquel on peut difficilement imaginer vivre sans aujourd'hui.

Cette réponse s'appuie presque entièrement sur ces RFC, et dans une petite partie de mon expérience personnelle que j'étais sur Internet à cette époque.


Tout d'abord, l'IETF n'a pas choisi ces plages d'adresses IP, ni d'autres. L'attribution d'adresses d'utilisation spéciale est actuellement et a toujours été l' objet de l' Autorité des numéros assignés Internet .

L'IANA a toujours été un rôle , plutôt qu'une organisation spécifique, et ce rôle a changé de mains une fois. Actuellement, il est détenu par l'ICANN, mais de 1972 jusqu'à sa mort en 1998, lorsque cette organisation a été créée pour le remplacer, l'IANA était essentiellement un homme, Jon Postel . Bien sûr, il a d'abord appelé le rôle de czar of socket numbers , une tâche nécessaire qu'il a prise sur lui – même parce qu'il fallait le faire. Il a fini par le tsar de pratiquement tous les numéros qui pourraient être attribués: les adresses, les numéros de protocole, les ports, vous le nommez, en grande partie parce qu'il était prêt à le faire, et au moment où Internet a ouvert ses portes au commerce public, il l'avait fait pour Plus de 20 ans. Il a attribué les numéros, et le Registre Internet (alors SRI-NIC, qui a été étendu à une collection distribuée de registres dans le monde entier) les a publiés.

La dernière RFC de SRI montrant une liste d'affectations d'adresses Internet était RFC 1166 de 1990. C'est une liste très longue, donc il ne faut pas être surprenant que ces données aient été déplacées vers des bases de données en ligne. En le comparant à son prédécesseur RFC 1117 montre le taux d'expansion de l'Internet même alors, des années avant qu'il ne soit ouvert au public.

Donc, maintenant, nous sommes en mesure de comprendre les gammes d'adresses dans RFC 1918 un peu mieux. C'est en fait la deuxième révision de la RFC; La première était la RFC 1597 , publiée presque deux ans plus tôt en mars 1994. Dans sa réfutation peu connue, la RFC 1627 , les arguments contemporains contre les espaces d'adresses privés ont été définis. La RFC 1627 mentionne également qui a assigné les trois espaces d'adressage.

Ils ont été assignés par l'IANA, c'est-à-dire Jon Postel, à la demande des auteurs de la RFC 1597, et si la plainte dans la RFC 1627 doit être considérée, il l'a fait via les canaux arrière plutôt que les processus ouverts habituels. Vous pouvez voir que la RFC 1597 elle-même est allée directement à l'état de la RFC sans les précédents précédents Internet-Drafts , de sorte qu'il a également été approuvé via les canaux arrière, encore une fois par Postel, qui était également éditeur RFC à l'époque . Il ne sera peut-être jamais possible de répondre à cette question de manière concluante.

Maintenant, pour savoir pourquoi il a choisi ces trois plages d'adresses, permettez-moi de vous renseigner sur les RFC 1166 et 1117 de SRI qui ont eu les attributions de plage d'adresses IP alors en cours. Dans les deux, vous remarquerez que le réseau 10 a toujours été attribué au défunt ARPANET, qui avait fermé ses portes en 1990 . Postel, dans son rôle d'IANA, savait que cette gamme n'était plus utilisée et pourrait être réaffectée. Je propose que Postel ait choisi le réseau 10 parce qu'il savait qu'il était disponible et qu'il n'était pas utilisé.

De même, je m'attends à ce que Postel ait choisi 192.168 parce que, au moment où il a fait le choix, ce fut le prochain réseau disponible, ou presque le prochain réseau disponible, à attribuer à l'ancien espace de classe C. Cela ne peut probablement pas être prouvé d'une manière ou d'une autre, mais le rythme des affectations d'adresses présentées dans les RFC suggère fortement qu'ils auraient été dans ce voisinage général vers 1993-1994 lorsque les travaux ont été effectués. (Les adresses en 192.159 ont été assignées en 1992. Aucune date n'est disponible pour les affectations dans 192.160-192.167 car celles-ci étaient à un certain moment réaffectées à RIPE).

Répondre à cette question pour 172.16-172.31 est plus difficile. Rien que je pourrais trouver suggère pourquoi cette gamme a été sélectionnée. Les affectations dans l'ancien espace de classe B n'avaient pas encore atteint ce niveau, autant que je puisse le découvrir. Je ne peux que spéculer que l'IANA a lancé un dard sur un fléchet, des dés roulés, ou a enlevé le nombre de ses régions inférieures.


Enfin, une note sur Jon Postel. En dépit de la manière apparente dans laquelle cette RFC a été créée entièrement formée sans entrée (initiale) de la communauté, je ne veux pas impliquer cela, et cela ne doit pas être interprété comme étant, Jon Postel a exécuté quelque peu le rôle de IANA de manière peu ou injustement. Il a été l'une des influences les plus fortes sur le début de l'Internet, et vous ressentez toujours cette influence chaque fois que vous apercevez les machines derrière les coulisses d'Internet, mais il était toujours préoccupé de faire le bon travail. Pour citer un souvenir :

Il n'y a aucune gloire dans l'administration et les opérations. Plutôt l'inverse. Les gens remarquent quand il est mal fait, mais offrent rarement des louanges quand cela se fait bien. Les personnes occupant des fonctions administratives deviennent souvent de petits bureaucrates. Comme il y a si peu de récompense dans le travail, ils forment artificiellement une base de pouvoir. Donc, cela a confondu certains qui ont entendu dire que Jon désignait le «czar» des numéros d'Internet. Ils ne se sont pas rendus compte que la communauté a transmis le titre à Jon de l'affection et de l'appréciation profonde pour avoir apporté l'ordre aux services d'infrastructure essentiels. En particulier, la communauté a utilisé ce terme en toute connaissance de cause que Jon a pris sa position de confiance, plutôt que comme une opportunité pour le pouvoir personnel. Nous avons toujours su que son point de vue venait de croyances légitimes et nous n'avions jamais à nous inquiéter qu'il envisageait un avantage politique ou personnel. Nous pourrions peut-être ne pas être d'accord avec lui, mais nous avons toujours su être motivés d'abord par la crainte que le bon fait soit fait.

Parce qu'il était logique à l'époque? :-RÉ

Rappelez-vous, lorsque les plages d'adresses IP privées ont été attribuées, plusieurs problèmes auxquels les ingénieurs du réseau devaient être confrontés étaient les suivants: certains des routeurs les plus puissants à l'époque possédaient autant d'énergie et de mémoire RAM que les calculatrices graphiques de poche d'aujourd'hui. De ceux qui courent aujourd'hui autour des routeurs d'hier-année (je me souviens quand la vitesse de CPU était mesurée en kilohertz et le stockage de RAM était mesuré en kilo-octets, pas les giga * comme ils sont aujourd'hui!). L'Internet se développait rapidement, l'espace d'adressage IPv4 était limité et semblait qu'il allait s'arrêter d'ici 2000, et cetera. Ainsi, de nombreuses plages d'adresses IP ont déjà été assignées, et elles ne voulaient pas demander aux entreprises de restituer les plages d'adresses IP de manière à pouvoir les réaffecter à des gammes privées. Ils voulaient également essayer de rendre le plus simple possible pour les entreprises de travailler avec les gammes privées – peu d'entreprises auraient coopéré si elles devaient investir beaucoup d'argent pour faire en sorte que leurs réseaux fonctionnent avec une ou deux douches de gammes / IP Adresses ici et là.

Cette partie est certes une conjecture de ma part, mais basée en grande partie sur la logique et l'expérience dans la mise en place de réseaux. Ils ont probablement regroupé une liste de tous les numéros de réseau non assignés et recherché un modèle distinctif qui répond aux critères souhaités: une seule classe A (les numéros de réseau qui ont un nombre élevé de 0xxxxxxx binaires dans le numéro de réseau étaient les classes A), 16 classe B (numéro de réseau 10xxxxxx binaire) et 256 classe C (numéros de réseau 110xxxx binaire). Les adresses de classe B et C devraient toutes être consécutives . (Le choix pour 16 et 256 était probablement partiellement arbitraire – après avoir fait ces choses pendant un certain temps, vous avez tendance à penser en puissance de 2 – et probablement en partie parce que c'était ce que l'on pourrait trouver qui était disponible pour la réservation.)

À partir de cela, ils ont probablement sélectionné les gammes finales à partir des adresses disponibles qui permettraient aux fabricants de routeurs de faire un simple test en bit sur l'adresse pour déterminer s'il faut parcourir / transférer / déposer le paquet. Il existe également certaines propriétés des modèles de bits que je vois aider à créer des tables NAT compactes. L'adresse 10.xyz est évidente, car elle ne doit correspondre qu'à un seul numéro de réseau. Le 172.16.yz à 172.32.yz a le motif que si vous construisez une table avec les quatre bits de bas ordre, référençant les quatre bits de haut ordre, la plage entière se remplit sur une seule ligne de la table, sans se diviser en deux lignes – c'est-à-dire, le deuxième octet est toujours 0001xxxx (binaire). Dans 192.168.yz, le binaire pour 168 est 10101000, c'est-à-dire que les trois bits inférieurs sont toujours 0 et les 5 bits supérieurs alternent 1 et 0.

Bien que cela puisse sembler arbitraire, si vous avez déjà effectué une programmation de langage machine ou un décodage de microcode, ces types de modèles vous permettent de tester seulement quelques bits pour effectuer une détermination privée / publique sans décoder d'abord toute l'adresse IP. Cela permettrait aux routeurs de traiter ces adresses rapidement sans devoir conserver de nombreuses tables de recherche en mémoire. Ainsi, le routeur pourrait pousser un paquet de réseau privé vers le réseau privé sans le décoder en premier, en réduisant les cycles d'horloge précieux de la vitesse du routeur et du réseau.

Si vous êtes curieux, consultez la façon dont la transmission de données en série (comme un UART ) gère chaque octet de données: il ne peut envoyer / recevoir qu'un seul bit à la fois, à la vitesse de l'horloge de contrôle et généralement les données Dans des bits supplémentaires tels que des bits de parité et de "synchronisation". Il serait trop long d'essayer de calculer des choses comme la parité sur un multiple entier à la fois, alors plutôt, il maintient un bit spécial que chaque cycle d'horloge. Ce bit est modifié par le prochain bit qui est décalé dans / hors du registre d'envoi / réception. Dès que l'octet complet est envoyé / reçu, la valeur laissée dans le bit de parité est déjà correcte sans avoir à le recalculer. Le concept est plus ou moins "faire le travail en même temps que vous faites autre chose", dans le cas d'une puce en série, il est en train de calculer la parité en même temps qu'il envoie / reçoit. Pour un routeur / commutateur, vous pouvez obtenir des performances supérieures s'il décode déjà l'adresse IP lorsque chaque bit de l'adresse vient du fil, et peut-être déjà sait où envoyer le paquet avant même qu'il soit finit d'être lue depuis le réseau câble!

De plus, ce n'est que de la logique / conjectures de ma part, basé sur 25 ans de faire ce genre de travail. Je ne sais pas si nous connaîtrons les raisons exactes des derniers chiffres choisis car je ne me rappelle aucun document / RFC / etc. Jamais accordé la justification complète. Le plus proche que j'ai vu sont quelques commentaires suggérant que les gammes choisies devraient rendre relativement facile et efficace pour les entreprises de les utiliser avec un minimum d'effort / investissement / ré-ingénierie.

Dans l' Internet primordial , le réseau désigné actuellement 10.0.0.0/8 a été attribué à l' ARPANET . Au moment où l'IETF et l'IANA se sont déplacés pour attribuer des plages d'adresses privées, ARPANET était défunt, et son ancien espace d'adresse était disponible pour un usage privé.

Les deux autres gammes ont mis en place des réseaux de classe B et de classe C disponibles pour les IP privées, en plus de la classe A.

Parce que 192 commence par 11xxxxxx en binaire, indiquant un réseau de classe C. C'est le nombre le plus bas qui commence par deux années consécutives. Les classes A ont 0 comme leur bit de commande le plus élevé, et les classes B ont 10.

La RFC 1918 qui définit les plages de IP privées, ne clarifie pas sur ce point, donc il n'y a pas de réponse définitive sur pourquoi elles ont choisi .168 pour le bloc de 16 bits, mais je prétends que c'est parce que la RFC n'a été diffusée qu'en 1996, DdddddddiceHdélem Traengacheddice illustrddachach illustrddachach illustrdddélem Traeadddachachachach ac illustrdemdachach illustrddachach illustrdddachach illustr Parce que 192 est le premier bloc de 8 bits dans les allocations de classe C, il est probable que beaucoup d'adresses ont déjà été prises. 168 peut avoir été le premier disponible.

Marco GrandAvélie Tram Dafe Da Marco illustrdGMMMMMMMMMMMMachach DawoFMMMMMMMMMMMMMMMMMAAAAAAAAAHH Notez que la gamme rfc1918 classe B est 172.16 – 172.31? Je ne peux pas penser à la raison de 172, mais je suis bien sûr qu'ils ont choisi d'utiliser 16 classe Bs, donc ils avaient un bloc de 1 million d'adresses contiguës (1048576).

Parfois, les protocoles sont de cette façon. DddddéldiceAéldiceadélmélemTéleterélemetachachachachachachistán Pendant un certain temps, le noyau linux était limité à un maximum de 1024 CPUs par système, et finalement ils devaient émettre un patch, après que certains supercalculateurs avaient des problèmes. Quiconque a décidé d'utiliser 1024 n'a probablement pas de bonnes raisons de le faire autrement que cela, il avait besoin d'une valeur, et 1024 est agréable et rond.

Il s'agit d'un reste de Classful Networking , où la plage d'adresses IPv4 a été subdivisée en classes:

  • Classe A: 0.0.0.0 – 127.255.255.255 / 255.0.0.0
  • Classe B: 128.0.0.0 – 191.255.255.255 / 255.255.0.0
  • Classe C: 192.0.0.0 – 223.255.255.255 / 255.255.255.0
  • Classe D: 224.0.0.0 – 239.255.255.255 (multicast)
  • Classe E: 240.0.0.0 – 255.255.255.255 (réservé)

Nous avons depuis déplacé (en 1993) vers le routage inter-domaine sans classe , mais les classes ont toujours leur héritage dans divers endroits (le réseau 127 est "home / loopback" – 127.0.0.1 n'importe qui ?, 192.168.X est commun pour la maison Les routeurs, le réseau 10 est commun dans le matériel de réseau plus "en entreprise", et la multidiffusion est encore multidiffusion.