Безкласова адресація

Безкласова адресація ( англ. Classless Inter-Domain Routing , англ. CIDR ) - Метод IP -адресації, що дозволяє гнучко управляти простором IP-адрес, не використовуючи жорсткі рамки класової адресації. Використання цього методу дозволяє економно використовувати обмежений ресурс IP-адрес, оскільки можливе застосування різних масок підмереж до різних подсетям.


1. Діапазони адрес

IP-адреса є масивом бітів. Принцип IP-адресації - виділення безлічі (діапазону, блоку, підмережі) IP-адрес, в якому деякі бітові розряди мають фіксовані значення, а інші розряди пробігають всі можливі значення. Блок адрес задається вказівкою початкової адреси і маски підмережі. Безкласова адресація грунтується на змінної довжині маски підмережі ( англ. variable length subnet mask , VLSM ), В той час, як в класовій (традиційною) адресації довжина маски строго фіксована 0, 1, 2 або 3 встановленими октетами.

Ось приклад запису IP-адреси в безкласової нотації : 192.0.2.32/27.

Октети IP-адреси 192 0 2 32
Біти IP-адреси 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0
Біти маски підмережі 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0
Октети маски підмережі 255 255 255 224

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

Ось ще один приклад запису адреси із застосуванням безкласової адресації: 172.16.0.1/12.

Октети IP-адреси 172 16 0 1
Біти IP-адреси 1 0 1 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
Біти маски підмережі 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Октети маски підмережі 255 240 0 0

Безліч всіх адрес відповідає нульовий масці підмережі і позначається / 0, а конкретну адресу IPv4 - масці підмережі з довжиною префікса в 32 біта, обозначаемой / 32.

Для спрощення таблиць маршрутизації можна об'єднувати блоки адрес, вказуючи один великий блок замість ряду дрібних. Наприклад, 4 суміжні мережі класу C (4 255 адрес, маска 255.255.255.0 або / 24) можуть бути об'єднані, з точки зору далеких від них маршрутизаторів, в одну мережу / 22. І навпаки, мережі можна розбивати на більш дрібні підмережі, і так далі.

В Інтернеті використовуються [ прояснити ] лише маски такого вигляду: n одиниць, далі всі нулі. Для таких (і тільки для таких) масок отримувані безлічі IP-адрес будуть суміжними.


2. Математичне обгрунтування

З точки зору безкласової двійковій адресації простір IP-адрес розглядається як ультраметріческое. Різні блоки адрес є в ньому кулями, радіус яких зменшується з збільшенням n, і самі вони формують спрямоване двійкове дерево. Тобто, від кожного блоку (/ n, 0 \ leqslant n <32 для IPv4) можна "перейти" на один з двох блоків меншого розміру (/ n +1), з яких він складається.


3. Можливі маски

IPv4 CIDR
IP / маска До останнього IP

в підмережі

Маска Кількість адрес Клас
abcd / 32 +0.0.0.0 255.255.255.255 1 1/256 C
abcd / 31 +0.0.0.1 255.255.255.254 2 1/128 C
abcd / 30 +0.0.0.3 255.255.255.252 4 1/64 C
abcd / 29 +0.0.0.7 255.255.255.248 8 1/32 C
abcd / 28 +0.0.0.15 255.255.255.240 16 1/16 C
abcd / 27 +0.0.0.31 255.255.255.224 32 1/8 C
abcd / 26 +0.0.0.63 255.255.255.192 64 1/4 C
abcd / 25 +0.0.0.127 255.255.255.128 128 1/2 C
abc0 / 24 +0.0.0.255 255.255.255.000 256 1 C
abc0 / 23 +0.0.1.255 255.255.254.000 512 2 C
abc0 / 22 +0.0.3.255 255.255.252.000 1024 4 C
abc0 / 21 +0.0.7.255 255.255.248.000 2048 8 C
abc0 / 20 +0.0.15.255 255.255.240.000 4096 16 C
abc0 / 19 +0.0.31.255 255.255.224.000 8192 32 C
abc0 / 18 +0.0.63.255 255.255.192.000 16 384 64 C
abc0 / 17 +0.0.127.255 255.255.128.000 32 768 128 C
ab0.0 / 16 +0.0.255.255 255.255.000.000 65 536 256 C = 1 B
ab0.0 / 15 +0.1.255.255 255.254.000.000 131072 2 B
ab0.0 / 14 +0.3.255.255 255.252.000.000 262 144 4 B
ab0.0 / 13 +0.7.255.255 255.248.000.000 524288 8 B
ab0.0 / 12 +0.15.255.255 255.240.000.000 1048576 16 B
ab0.0 / 11 +0.31.255.255 255.224.000.000 2097152 32 B
ab0.0 / 10 +0.63.255.255 255.192.000.000 4194304 64 B
ab0.0 / 9 +0.127.255.255 255.128.000.000 8388608 128 B
a.0.0.0 / 8 +0.255.255.255 255.000.000.000 16777216 256 B = 1 A
a.0.0.0 / 7 +1.255.255.255 254.000.000.000 33554432 2 A
a.0.0.0 / 6 +3.255.255.255 252.000.000.000 67108864 4 A
a.0.0.0 / 5 +7.255.255.255 248.000.000.000 134217728 8 A
a.0.0.0 / 4 +15.255.255.255 240.000.000.000 268435456 16 A
a.0.0.0 / 3 +31.255.255.255 224.000.000.000 536870912 32 A
a.0.0.0 / 2 +63.255.255.255 192.000.000.000 1073741824 64 A
a.0.0.0 / 1 +127.255.255.255 128.000.000.000 2147483648 128 A
0.0.0.0 / 0 +255.255.255.255 000.000.000.000 4294967296 256 A

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