Чому IETF спеціально обрав 192.168 / 16 для приватного класу IP-адрес?


90

Чому Internet Engineering Task Force (IETF) вибрав 192.168/16приватний клас IP-адреси, а не щось інше?

Чому саме 192.168/16і 10/8та 172.16/12і не 145.243/16наприклад?

Чи є причина, що ці IP-адреси були обрані для стандарту приватних IP-адрес за всіма іншими можливостями?



32
RFC 1918 не містить пояснень, чому саме такі мережі були обрані, Акаш. Звідси питання запитувача.
JdeBP

1
Я помилявся, коли це було невідчутним. Я зміг майже повністю відповісти на ваше запитання, спираючись на RFC. Але 1918 рік не є найважливішим для відповіді на питання ...
Майкл Хемптон

Відповіді:


89

Я знаю, хто обрав ці діапазони адрес. На жаль, він мертвий, тому я не можу його точно запитати, чому він обрав їх, але я можу зробити кілька добре поінформованих здогадок.

До середини 90-х років, коли Інтернет справді почав виходити з Інтернету, не так вже й багато. Яка історія Інтернету існує, головним чином, у RFC, які її визначають, що датується 1969 роком , на початку ARPANET. Через них ви можете спостерігати, як Інтернет прогресує від розвиненої мережі кількох примітивних мейнфреймів, розроблених деякими найяскравішими розумами того часу, до мережі, яку ми навряд чи можемо уявити, як жити сьогодні.

Ця відповідь майже повністю випливає з тих RFC, і малою мірою з мого особистого досвіду, як я був в Інтернеті в цю епоху.


По-перше, IETF не вибирав ці діапазони IP-адрес чи будь-які інші. Розподіл адрес спеціального використання зараз є і завжди був завданням Служби Інтернет-номерів .

IANA завжди була роллю , а не конкретною організацією, і ця роль змінилася руками рівно одного разу. В даний час його проводить ICANN, але з 1972 року до смерті в 1998 році, коли ця організація була створена на його заміну, IANA був по суті однією людиною, Джоном Постелем . Звичайно, він вперше назвав ролі царя номерів сокетів - необхідне завдання, яке він взяв на себе, оскільки це потрібно було зробити. Він закінчився царем практично кожного номера, якому можна було призначити: адреси, номери протоколів, порти, ви його називаєте, багато в чому тому, що він хотів це зробити, і до того моменту, коли Інтернет відкрився для публічної комерціївін займався цим понад 20 років. Він присвоїв номери, і Інтернет-реєстр (тоді SRI-NIC, це було розширено на розподілену колекцію реєстрів по всьому світу) опублікував їх.

Останній RFC від SRI, що показував перелік присвоєнь Інтернет-адрес, був RFC 1166 від 1990 року. Це дуже тривалий список, тому не слід дивуватися, що ці дані були переміщені в онлайн-бази даних. Порівнюючи його з попередником RFC 1117, показує швидкість розширення Інтернету навіть тоді, за кілька років до його відкриття для публіки.

Отже, зараз ми маємо змогу трохи краще зрозуміти діапазони адрес у RFC 1918 . Це фактично друга редакція RFC; першим був RFC 1597 , опублікований майже на два роки раніше в березні 1994 р. У маловідомому спростуванні RFC 1627 були викладені сучасні аргументи проти приватних адресних просторів. RFC 1627 також трапляється згадувати, хто призначив три адресні простори.

Вони були призначені IANA, тобто Джоном Постелем, на прохання авторів RFC 1597, і якщо вірити скарзі в RFC 1627, він робив це за допомогою зворотних каналів, а не звичайних відкритих процесів. Ви можете бачити , що RFC 1597 сам пішов прямо до статусу RFC без звичайних попередніх Інтернет-проектів , тому він теж був затверджений з допомогою тилових каналів, знову ж Постелом, який також був редактором RFC в той час . Тож на це питання ніколи не вдасться відповісти категорично.

Тепер щодо того, чому він вибрав ці три діапазони адрес, дозвольте мені повернути вашу увагу на RFC 1166 та 1117 від SRI, які мали поточні присвоєння діапазону IP-адрес. І в обох ви помітите, що мережа 10 все ще була виділена для неіснуючого ARPANET, який був закритий у 1990 році . Постель, в ролі IANA, знав би, що цей діапазон більше не використовується і його можна переділити. Я вважаю, що Постель вибрав мережу 10, оскільки він знав, що вона буде доступною і не використовується.

Аналогічно, я очікую, що Постель зібрав 192.168, оскільки на той момент, коли він зробив вибір, наступна доступна чи майже наступна доступна мережа була призначена з колишнього простору класу C. Це, мабуть, не може бути доведено так чи інакше, але темп присвоєння адреси, показаний у RFC, напевно говорить про те, що вони були б у цьому загальному районі приблизно в 1993-1994 роках, коли завдання були виконані. (Адреси в 192.159 призначалися в 1992 році . Дати для виконання завдань у 192.160-192.167 не було, оскільки вони в певний момент були перерозподілені в RIPE.)

Відповісти на це запитання за 172.16-172.31 важче. Ніщо, що я міг знайти, не підказує, чому саме цей діапазон був обраний. Навчання в колишньому просторі класу B ще не було майже таким високим, наскільки я можу виявити. Я можу лише здогадуватися, що IANA кидав дротик на дартс, перекочував кістки чи іншим чином витягував номер із своїх нижчих регіонів.


Наостанок записка про Йона Постеля. Незважаючи на очевидний спосіб, яким цей RFC був створений повністю сформованим без (початкового) вкладу з боку громади, я не маю на увазі цього, і це не слід тлумачити, оскільки Джон Постел якось погано чи несправедливо виконував роль IANA. Він був одним із найсильніших впливів на ранньому Інтернеті, і ти все ще відчуваєш цей вплив сьогодні кожного разу, коли ти оглядаєш закулісну техніку Інтернету, але він завжди переймався правильною роботою. Цитую з одного спогаду :

Немає слави в управлінні та операціях. Зовсім навпаки. Люди помічають, коли це робиться погано, але рідко пропонують похвалу, коли це робиться добре. Люди на адміністративних посадах часто стають дрібними бюрократами. Оскільки в роботі так мало винагороди, вони штучно роблять це базою влади. Тож це бентежило тих, хто чув, як Джон називав Інтернет-номерами "царя". Вони не усвідомлювали, що громада привласнювала титул Джону з прихильності та глибокої вдячності за те, що він навів порядок у важливих інфраструктурних службах. Зокрема, громада використовувала цей термін з повним знанням того, що Джон зайняв свою позицію як довіри, а не як можливості для особистої влади. Ми завжди знали, що його погляди походять із законних переконань, і нам ніколи не довелося переживати, що він якось розглядає політичну чи особисту вигоду. Ми можемо не погодитися з ним, але ми завжди знали, що спочатку спонукає стурбованість тим, що потрібно зробити правильну справу.


6
Це, мабуть, було важким концертом для Джона. Це де ми отримуємо вираз "Going Postel"? :-p
тудор

5
Джон Постель - один з моїх давніх героїв. Він завжди був у небі, тримаючи більш відомих вчених, які працюють разом над спільною метою. Батько управління Інтернетом.
Френк Томас

4
"До середини 1990-х ще не багато знайомств в Інтернеті" - Не жартуйте, match.com не був зареєстрований до 1998 року. Ні? ... я дістану пальто.
Анонім

1
Свіжа публікація NANOG підтверджує, що вони були звичайними "наступними доступними" призначеннями.
grawity

30

Тому що це мало сенс у той час? :-D

Пам'ятайте, що коли були призначені приватні діапазони IP-адрес, виникло декілька проблем, з якими довелося зіткнутися мережевим інженерам: Деякі з найпотужніших маршрутизаторів того часу мали приблизно стільки ж процесорної потужності та оперативної пам’яті, скільки сьогоднішні кишенькові графічні калькулятори - і деякі з тих, хто сьогодні все ще працює кругом навколо маршрутизаторів за літній рік (я пам’ятаю, коли швидкість процесора вимірювалася в кілогерцах, а пам’ять оперативної пам’яті вимірювалася в кілобайтах, а не гіга *, як вони є сьогодні!). Інтернет швидко зростав, IPv4адресний простір був обмеженим, і, схоже, він закінчиться до 2000 року і так далі, і так далі. Таким чином, багатьом діапазонам IP-адрес було вже призначено, і вони не хотіли вимагати від компаній повернути діапазони IP-адрес лише для того, щоб вони могли перепризначити їх до приватних діапазонів. Вони також хотіли спробувати максимально спростити роботу з приватними компаніями - мало хто з них співпрацював би, якби їм довелося вкласти багато грошей, щоб їхні мережі справлялися з одним або двома десятками діапазонів / IP адреси тут і там.

Ця частина, як я вважаю, здогадки з мого боку, але багато в чому ґрунтується як на логіці, так і на досвіді створення мереж. Вони, ймовірно, зібрали список усіх непризначених номерів мережі та шукали відмінну схему, яка відповідала б бажаним критеріям: Один єдиний клас А (номери мережі, які мають високий біт 0xxxxxxx двійкових у мережевому номері, були класом A), 16 класу B (мережеві номери 10xxxxxx двійкові) та 256 класу C (номер мережі 110xxxx двійкові) адреси. Адреси класів В і С також повинні бути послідовними . (Вибір для 16 і 256 був, ймовірно, частково довільним - після того, як робиш цей матеріал на деякий час, ти, як правило, починаєш думати з потужністю 2 - і, ймовірно, частково тому, що це було те, що можна було знайти, що було доступне для бронювання.)

Виходячи з цього, вони, ймовірно, вибрали кінцеві діапазони з тих доступних адрес, які дозволили б виробникам маршрутизаторів зробити простий розрядний тест на адресу, щоб визначити, чи слід маршрутизувати / вперед / опускати пакет. Також є деякі властивості бітових шаблонів, які, як я бачу, допомагають створювати компактні таблиці NAT. Адреса 10.xyz очевидна, оскільки вона має відповідати лише одному мережевому номеру. 172.16.yz до 172.32.yz має такий зразок, що якщо ви будуєте таблицю з чотирма бітами низького порядку, посилаючись на чотири біти високого порядку, весь діапазон заповнюється через один ряд таблиці, не розбиваючись на два ряди - тобто, другий октет завжди 0001xxxx (двійковий). У 192.168.yz двійковий код для 168 становить 10101000 - тобто три нижні біти завжди дорівнюють 0, а вищі 5 біт чергують 1 і 0.

Хоча вони можуть здаватися довільними, якщо ви коли-небудь робили програмування на машинній мові або декодування мікрокодів, такі типи моделей дозволяють протестувати лише декілька біт, щоб зробити приватне / загальнодоступне визначення без необхідності спочатку декодувати всю IP-адресу. Це дозволило б маршрутизаторам швидко обробляти такі адреси без необхідності підтримувати великі таблиці пошуку в пам'яті. Таким чином, маршрутизатор може витіснити пакет приватної мережі назад у приватну мережу, не спочатку повністю розшифрувавши її, збриваючи дорогоцінні тактові цикли від швидкості маршрутизатора та мережі.

Якщо вам цікаво, погляньте, як послідовна передача даних (наприклад, UART) обробляє кожен байт даних: Він може надсилати / приймати один-єдиний біт за один раз, зі швидкістю керуючого годинника, і зазвичай кадрує дані додатковими бітами, такими як біт парності та синхронізації. Було б занадто багато часу, щоб спробувати обчислити такі речі, як парність, у цілому байті одразу, тому натомість він підтримує спеціальний біт, який є кожним тактовим циклом. Цей біт модифікується наступним бітом, який переміщується в / з реєстру відправлення / отримання. Як тільки весь байт буде надісланий / отриманий, значення, залишене в біті парності, вже є правильним, не потребуючи його перерахунку. Концепція більш-менш "виконайте роботу одночасно, коли ви робите щось інше", у випадку з послідовним чіпом, це обчислення паритету в той же час, що він надсилає / отримує. Для маршрутизатора / комутатора,

Крім того, це Я просто логіка / здогадки з мого боку, засновані на 25-річному виконанні подібної роботи. Я не знаю, чи зможемо ми колись дізнатися точні причини, що стоять за обраними остаточними номерами, оскільки я не згадую жодних паперів / RFC / тощо. коли-небудь даючи повне обгрунтування. Найближче, що я бачив, - це лише деякі коментарі, які дозволяють запропонувати вибраним діапазонам зробити компанію порівняно простою та ефективною з мінімальними зусиллями / інвестиціями / перепроектуванням.


6
Це, мабуть, не пояснює вибір 168 зокрема. Я не бачу жодної причини, чому 10101000 було б простіше розшифрувати, ніж 10101010 або 10101001 - в будь-якому випадку потрібно зіставити всі 8 біт, перш ніж знати, що адреса належить приватній мережі. Інтуїтивно виглядає більш ймовірним, що 192.168 був просто першим блоком відповідного розміру, який був доступний при здійсненні розподілу, ніж конкретний біт-шаблон 10101000 якимось чином простіше декодувати, ніж інші шаблони однакової довжини.
Геннінг Макгольм

@HenningMakholm, сучасне мережеве обладнання використовує багато ASIC, інтегральні схеми, що застосовуються для додатків, які виконують обробку на входах в апаратному забезпеченні. простий реєстр може бути реалізований в апаратному забезпеченні для перевірки загальної бітової структури, так що для її аналізу потрібна лише одна інструкція по збірці. Я не кажу, що думки CM - це те, про що думали дизайнери rfc1918 (ми не можемо знати, оскільки вони не включили цю інформацію), але це інтригуюча можливість.
Френк Томас

2
@FrankThomas: Ви хочете сказати, що зіставлення для 168 було б простіше створити схему ASIC, ніж порівняння для якоїсь іншої 8-бітної константи було б? Я не дизайнер обладнання, але мені важко повірити.
Геннінг Макгольм

2
У протоколі немає жодних вимог щодо маршрутизаторів, щоб обробляти ці мережі якимось особливим чином, тому майже вся ця відповідь не має значення. Пам’ятайте, що RFC 1918 не вказував NAT, і він передбачав, що ці адреси будуть суто внутрішніми, і взагалі немає можливості дістатися до Інтернету. NAT з'явився дещо пізніше, і не був дійсно вказаний до RFC 2663.
Майкл Хемптон

2
@Frank Я не багато працював з verilog або VHDL протягом довгого часу, але я не думаю, що ваша логіка правдива. Принаймні очевидний (і ефективний) спосіб того, як я реалізую рівність в апараті, не хвилює жодних моделей. Є деякі ISA, які можуть генерувати лише конкретні зразки для логічних безпосередніх (ARMv8 для того, щоб назвати дійсно новий), але це вже з цього приводу.
Voo

21

У споконвічному Інтернеті мережа тепер позначалася 10.0.0.0/8 була виділена ARPANET . На той час, коли IETF та IANA почали призначати діапазони приватних адрес, ARPANET не вийшов з ладу, і його колишній адресний простір був доступний для приватного використання.

Інші два діапазони зробили доступними для приватних ІС мережами класу В та класу С, крім вищезгаданого класу А.


15

Тому що 192 починається з 11xxxxxx у двійковій формі, що вказує на мережу класу C. Це найменше число, яке починається з двох послідовних 1. Класи А мають 0 як найвищий біт (и) порядку, а клас B - 10.

RFC 1918, який визначає приватні діапазони IP, не пояснює це питання, тому немає однозначної відповіді на те, чому вони обрали .168 для 16-бітного блоку, але я вважаю, що це було через те, що RFC не був випущений до 1996 року, після того, як вже відбулася величезна кількість реєстрацій. оскільки 192 є першим 8-бітовим блоком у виділеннях класу C, ймовірно, що багато адрес уже було прийнято. 168, можливо, були першими доступними.

Також пам’ятайте, що деякі з цих варіантів є довільними. Зауважте, що діапазон класу B rfc1918 становить 172,16 - 172,31? Я не можу придумати причину 172, але я впевнений, що вони вирішили використовувати 16 класів B, щоб у них був 1 мільйон суміжних адрес (1048576).

Іноді протоколи саме так. хтось повинен був зробити вибір, і вони зробили це. деякий час ядро ​​Linux було обмежене максимум 1024 процесорами на систему, і, зрештою, їм довелося випустити патч, після того, як у деяких суперкомп'ютерів виникли проблеми. той, хто вирішив використовувати 1024, мабуть, не мав жодних вагомих причин для цього, крім того, що йому потрібна цінність, і 1024 є приємним і круглим.


1
Хороший момент. Особливо в поєднанні з фоном з публікації Darth Androids та, можливо, додатковою інформацією про перші біти інших класів.
Hennes

9
Але чому 192.168?
user20574

14

Це залишок Classful Networking , де діапазон адрес IPv4 був розділений на класи:

  • Клас А: 0,0.0,0 - 127,255,255,255 / 255,0,0,0
  • Клас В: 128.0.0.0 - 191.255.255.255 / 255.255.0.0
  • Клас С: 192.0.0.0 - 223.255.255.255 / 255.255.255.0
  • Клас D: 224.0.0.0 - 239.255.255.255 (багатоадресна передача)
  • Клас Е: 240.0.0.0 - 255.255.255.255 (зарезервовано)

З того часу ми перейшли (у 1993 р.) До безкласового міждоменного маршрутизації , однак класи все ще мають спадщину в різних місцях (мережа 127 - це "домашній / зворотний зв'язок" - 127.0.0.1 хтось?, 192.168.X є загальним для дому маршрутизатори, 10 мережа поширена в більш "підприємливому" мережевому апаратному забезпеченні, а багатоадресна передача все ще є багатоадресною.


16
Здається, запитуючий запитує, чому саме ці мережі в кожному класі були обрані, як це робила на іншому веб-сайті WWW, і ця людина робила на іншому StackExchange , на що ваша відповідь не стосується. user46971 вдарив нігтем по голові.
JdeBP

1
Відповідь SE настільки хороша, що я думаю, можливо, це питання слід перенести, а потім позначити як дублікат. Це дійсно більше стосується мереж, ніж загального використання комп'ютера.
trlkly

3

RFC пояснює причину, чому ми вибрали три діапазони з "класу A, B & C" відповідно: CIDR був уточнений, але не був широко впроваджений. Там була значна кількість обладнання, яке все ще було «класним».

Наскільки я пам'ятаю, вибір конкретних діапазонів був таким:

10/8: ARPANET щойно було вимкнено. Один із нас запропонував це, і Джон вважав це хорошим повторним використанням цього "історичного" блоку адреси. Ми також підозрювали, що "чисті 10" в деяких місцях могли бути жорстко закодовані, тому повторне використання його для приватного адресного простору, а не для маршрутизації між AS може мати незначну перевагу - зберігати таку глузливість на місцях.

172.16 / 12: найнижчий нерозподілений / 12 у просторі класу B.

192.168 / 16: найнижчий нерозподілений / 16 у класі класу С 192/8.

Підсумовуючи: IANA виділила цей простір так само, як і для будь-яких інших цілей. Як ІАНА, Джон був дуже послідовним, якщо не було справді вагомої причини для творчості.

Даніель (співавтор RFC1918)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.