Чи CIDR насправді «забирає» класи IP-адреси?


20

Я все ще намагаюся зрозуміти, наскільки CIDR дійсно робить класи IP-адреси застарілими. Ось що я зрозумів поки що:

  1. Смішно неефективно (і теж неможливо) призначати кожну організацію, якій потрібно звернутися до понад 255 хостів адреси класу B, які технічно можуть вирішувати 65535 хостів.

  2. Однак, якщо такій організації потрібно було звернутися, скажімо, приблизно до 700 хостів, можна просто призначити цій мережі (бажано суміжні) мережеві адреси класу С. Наприклад:

    192.42.42
    192.42.43
    192.42.44
    
  3. Проблема: Для цього однією організації, маршрутизатори повинні зберігати три записи в своїх експедиційних таблицях, що не масштабуються.

  4. CIDR вирішує цю проблему, вводячи підсумки / агрегацію маршрутів, дозволяючи ISP, який присвоїв організації трьох класів С організацію, рекламувати лише один префікс для решти світу. Наприклад,

    192.42.42.0/21
    

Все йде нормально. Однак я просто не можу зрозуміти, чому кожен ресурс, до якого я торкаюся, стверджує, що класне звернення - це "минуле". В кінці кінців, ISP є відповідальним, скажімо, мережеві адреси класу C, і робить правонаступником їх своїм клієнтам. CIDR просто вирішує проблему декількох записів у таблицях переадресації, правда? Таким чином, класи IP-адрес все ще існують, чи не так?

Іспит підходить, тому допомогу дуже цінують. : P


2
/ 21 - це вісім мереж "класу c".
Пітер

5
Мені спокушається сказати, що це вже минуле, оскільки воно стосується IPv4
Хаген фон Ейтцен

@HagenvonEitzen Я спокусився зазначити, що це абсолютно не відповідає дійсності.
Гонки легкості з Монікою

2
Це справа минулого, тому що 1993 рік був 22 роки тому. Див. RFC 1517, 1518, 1519. Не довіряйте жодному ресурсу, який стверджує, що класичні адреси є актуальними сьогодні, або ставиться до них як до всього іншого, крім історичних цікавинок.
Майкл Хемптон

Відповіді:


22

Делегування адреси справді відбувалося у трьох розмірах: делегації класів A, B і C. Делегації класу A будуть надані з певного діапазону адрес, делегації класу B з іншого діапазону тощо. Оскільки різні класи використовували різні діапазони адрес, ви можете визначити класу, переглянувши першу частину адреси. І це було вбудовано в протоколи маршрутизації.

  • Делегації класу A містили 16777216 адрес у кожній
  • Делегації класу B містили 65536 адрес у кожній
  • Делегації класу C містили по 256 адрес

Це було дуже неефективно для мереж, які не відповідали цим розмірам. Мережа, якій потрібно 4096 адрес, або отримає шістнадцять делегацій класу C (що було б погано для глобальної таблиці маршрутизації, оскільки кожну з них потрібно було б маршрутизувати окремо: розмір класу вбудований у протокол), або вони отримають один клас B делегація (яка б втрачала багато адрес).

У 1993 році було запроваджено CIDR. Протоколи були налаштовані так, щоб мати змогу мати справу з префіксами різного розміру, і стало можливим маршрутизація (як внутрішньо, так і зовні) префіксів типу a / 30 або a / 21 або a / 15 і т.д. тощо. Все, що між / 0 і / 32 стало можливо. Організації, яким потрібно 2048 адрес, могли отримати / 21: саме те, що їм потрібно.

Те, як ви могли внутрішньо розподілити ці адреси, також було обмеженим. Існували правила, як можна підмережу. Спочатку кожна підмережа у вашій класній мережі повинна бути однакового розміру. Вам потрібна одна підмережа з 128 адресами та інша підмережа з 16 адресами: дуже погано.

Маскування підмережі змінної довжини (VLSM) є еквівалентом внутрішньої мережі CIDR. VLSM існував довше, ніж CIDR. Про це вже згадувалося в 1985 році. Таким чином, CIDR в основному поширює VLSM на міждоменну маршрутизацію. З VLSM ваші підмережі вже не повинні бути однакового розміру. Ви можете призначити різну кількість адрес для кожної підмережі, залежно від ваших потреб.

У наші дні вся маршрутизація в Інтернеті проводиться без занять. Префікс таблиці таблиці маршрутизації може збігтися за збігом (або через історію) відповідності класифікованій структурі, але протоколи більше не припускають, що вони можуть вивести довжину префікса (маска підмережі) з першої частини адреси. Усі довжини префіксу явно повідомляються: без класу.

Сказати, що ISP відповідає за мережу класу C, аналогічно застаріло. Адреси поширюються абсолютно безкласно РІР ( Регіональні Інтернет-реєстри , організації, відповідальні за делегування адрес Інтернет-провайдерам та підприємствам із власними незалежними адресами).

Класи адрес IPv4 насправді вже не існують, і вони застаріли в 1993 році. Якщо ви подивитеся на старі застарілі протоколи маршрутизації, ви, звичайно, все ще можете побачити припущення, які вони зробили на основі класу адрес, але це було 20 років тому ...


1
Ці "правила" були обмеженнями протоколів маршрутизації. Усі ваші мережі повинні бути однакового розміру, оскільки протокол маршрутизації не мав мережевої маски. (наприклад, RIPv1, IGRP)
Ricky Beam

1
Так, це я сказав. Як впроваджувати довжину префікса у протоколах маршрутизації, так реалізуються
VLSM

Вони не «здогадуються за адресою», вони застосовують локальну мережну маску для всього класу. Напр. якщо у вас інтерфейс 10.0.0.5/24, все в 10/8 буде a / 24.
Рікі Бім

1
Це біт VLSM. Трохи в тому, що вони вважали, що кожна адреса, що починається з 10, належить разом. Біт перед VLSM передбачає, що оскільки локальний інтерфейс був / 24, кожна підмережа в 10/8 була б a / 24. І сьогодні / і 24 / / 8 є припущеннями. Кожна підмережа може мати різний розмір, і немає способу визначити, де знаходиться сукупна межа.
Сандер Стеффан

1
Додавши до сказаного, перші кілька бітів IP-адреси визначали клас адреси. Перший біт 0 = клас A, перші два біти 10 = клас B, перші три біти 110 = клас C тощо. Дивіться також en.wikipedia.org/wiki/…
CVn

29

класне звернення - це "минуле".

Це вірно, тому що ніщо в сучасному Інтернеті не робить класного звернення [1] . При класній адресації мережева маска є фіксованим значенням на основі адреси. У вашому прикладі ви не можете "об'єднати" три діапазони класу C, щоб мати 700 хостів в одній локальній мережі. Маска мережі для кожного діапазону автоматично становить 24 біти.

CIDR виправив це, скасувавши правила, згідно з якими адреса диктує маску. Таким чином, локальна мережа може бути будь-якого розміру.

Ви (та багато інших людей) все ще затрималися на словах "Клас С", "Клас В" та "Клас А". Ці конструкції вже не існують; і не десятиліттями. Що люди мають на увазі, коли вони використовують термін, це розмір сітки маски 24, 16 та 8 відповідно. Вони не означають, що застосовується семантика класу.

[1] 10.0.0.1/24 - недійсна конфігурація в класичній системі.


1
Я думаю, що Windows як і раніше використовує IP-адресу адреси як маску за замовчуванням.
Taemyr

2
Так, але це не особливо класно. Це просто застосування CIDR за замовчуванням. Ні, де Microsoft не вимагає або не визначає клас IP-адреси '
Майк МакМахон,

@Taemyr Це не лише Windows. Linux виводив маску за замовчуванням з перших бітів адреси протягом багатьох років. Це все ще стосується Ubuntu 14.04. Але це лише дефолт, який більшу частину часу потрібно перекрити з іншим значенням.
kasperd

15

Класна адресація підтримує лише 3 маски для unicast: / 8, / 16 /, / 24.

CIDR дозволяє масці мати будь-яке значення від / 0 до / 32.

Подумайте про точковий серій: який би раніше витрачав клас C / 24 (256 xIP) з класним налаштуванням; для CIDR йому потрібно лише / 30 (4 xIP) або / 31 (2 xIP).

Більшість провайдерів тепер призначать лише / 28 для клієнта, який надає 14 IP-адрес або навіть менше.

Два режими роботи не сумісні, оскільки один (класний) відгадує маску з IP, а другий (CIDR) точно вказує її.

Дивіться статтю у Вікіпедії «Класна мережа» .


Дякуємо, що приділили час написанню відповіді. Однак я не бачу, як ваша відповідь стосується мого запитання.

5
Його відповідь точкова. Коли ви зрозумієте різницю між безкласним та класним, відповідь матиме сенс.
Рікі Бім

@baerenfaenger Ось ваше запитання, як я його зрозумів. "Я просто не можу зрозуміти, чому ... класне звернення - це" минуле ". ... CIDR просто вирішує проблему декількох записів у таблицях переадресації, правильно "Таким чином, класи IP-адрес все ще існують, чи не так?"
Пітер

Однак у підмережі IPv4 a / 31 не може містити жодних IP-адрес, 0 є Обидва зарезервовані для ідентифікатора самої мережі та трансляції в мережу.
щурячий вирод

2
@ratchet freak, крім птп-посилань, там вам не потрібен ip-трансляція, і ви можете піти з / 31 див. tools.ietf.org/html/rfc3021
Pieter

5

Як уже пояснюється в багатьох відповідях, класи - це минуле, тому що вони не дозволяють використовувати маски підмережі інші / 8, / 16 та / 24.

Ці конкретні маски підмережі як і раніше дуже популярні, особливо / 24, оскільки вони найпростіші для нас, людей. Для цих масок кінець частини підмережі адреси вирівнюється крапкою у (IP-адресі з пунктиром). Таким чином, візуально зрозуміло, чи є дві IP-адреси в одній підмережі чи ні, не потрібні розрахунки.

Ось чому терміни класів A, B і C тримаються навколо, вони все ще узгоджуються з найпоширенішими масками підмережі. Але вони вже не мають сенсу, і говорити, що 10.11.12.0/24 - клас C, просто неправильно. Перший октет класу С був за визначенням між 192 та 223.


2

У класичному маршрутизації мережна маска має на увазі верхній біт адреси та не зберігається у таблицях маршрутизації; клас є властивістю кожної адреси, а не тільки топології маршрутизації. Мережа класу C не може бути підмножиною мережі класу B, оскільки верхні біти не можуть відповідати обом.

Ваша гіпотетична організація з мережами 3 класу С повинна звернути увагу на те, які комп’ютери отримали адреси, в якій із трьох мереж. За допомогою CIDR маршрутизації вони можуть використовувати маску мережі, яка дозволяє всім їх комп'ютерам знаходитися в одній підмережі.


1

Єдине місце, в якому я бачив фактичну поведінку класу протягом останніх років, - це протокол тунелювання «в точку». PPTP Багато хто вважає це застарілим саме по собі, але його, безумовно, багато ще використовується.

Коли клієнт підключається до сервера, тунель отримує або маршрут за замовчуванням, або маршрут до класної мережі сервера. https://technet.microsoft.com/en-us/library/cc779919%28v=ws.10%29.aspx

Нещодавно в 2016 році було кілька мереж, де це насправді була проблема.

Я вважаю, що існують шляхи вирішення DHCP та різноманітних сценаріїв додатків, а також маршрутів в іншому напрямку. Якщо це можливо, використовуйте інший протокол тунелювання, який має кращу підтримку маршрутів.

З повагою,

Джонатан.


0

Як ви правильно описали, класне адресація є неефективною порівняно з безкласовою адресацією, оскільки багато IP-адрес залишається витраченими всередині підмереж з класною адресацією.

Я просто не можу зрозуміти, чому кожен ресурс, до якого я торкаюся, стверджує, що класне звернення - це "минуле".

Це правда, що IP-адреси можуть обробляти мережу класу С, але це не відповідає всім провайдерам. Крім того, у попередню епоху класифікована адресація використовувалася у всіх підмережах (навіть для домашніх підмереж або корпоративних підмереж), де зараз використовується лише безкласна адресація (якщо не NAT).

Це є причиною повного звернення до речі, що минуло.

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