RTFM.WIKI

Ordnung muß sein. Ordnung über alles (18+)

Инструменты пользователя

Инструменты сайта


network:cidr

CIDR

Таблица

Источник: http://rtzra.ru/wiki/internet/cidr

длина префикса CIDR кол-во адресов (теорет.) кол-во адресов (хостов) маска сети количество "классовых" сетей
/1 2147483648 2 147 483 646 128.0.0.0 128 A
/2 1073741824 1 073 741 822 192.0.0.0 64 A
/3 536870912 536 870 910 224.0.0.0 32 A
/4 268435456 268 435 454 240.0.0.0 16 A
/5 134217728 134 217 726 248.0.0.0 8 A
/6 67108864 67 108 862 252.0.0.0 4 A
/7 33554432 33 554 430 254.0.0.0 2 A
/8 16777216 16 777 214 255.0.0.0 1 A (256 B)
/9 8388608 8 388 606 255.128.0.0 (1/2 A) 128 B
/10 4194304 4 194 302 255.192.0.0 (1/4 A) 64 B
/11 2097152 2 097 150 255.224.0.0 (1/8 A) 32 B
/12 1048576 1 048 574 255.240.0.0 16 B
/13 524288 524 286 255.248.0.0 8 B
/14 262144 262 142 255.252.0.0 4 B
/15 131072 13 107 255.254.0.0 2 B
/16 65536 65 534 255.255.0.0 1 B (256 C)
/17 32768 32 766 255.255.128.0 (1/2 B) 128 C
/18 16384 16 382 255.255.192.0 (1/4 B) 64 C
/19 8192 819 255.255.224.0 (1/8 B) 32 C
/20 4096 4 094 255.255.240.0 16 C
/21 2048 2 046 255.255.248.0 8 C
/22 1024 1 022 255.255.252.0 4 C
/23 512 510 255.255.254.0 2 C
/24 256 254 255.255.255.0 1 C
/25 128 126 255.255.255.128 1/2 C
/26 64 62 255.255.255.192 1/4 C
/27 32 30 255.255.255.224 1/8 C
/28 16 14 255.255.255.240 1/16 C
/29 8 6 255.255.255.248 1/32 C
/30 4 2 255.255.255.252 1/64 C
/31 2 0 255.255.255.254 1/128 C
/32 1 1 255.255.255.255 1/256 C

Теория

Источник: http://megapuper.ru/index.php?title=IP-адреса_и_маски

Частные сети

10.0.0.0/8        10.0.0.0 - 10.255.255.255
172.16.0.0/12     172.16.0.0 - 172.31.255.255
192.168.0.0/16    192.168.0.0 - 192.168.255.255

Маска

Существующая маска для IP адреса выросла из классового деления адресов, на заре эпохи IP:

Класс A: 8 бит для номера сети 24 бита для номера хоста
Класс B: 16 бит на сеть и 16 бит на хост
Класс C: 24 бита на сеть и 8 бит на хост

Обычная сеть на 256 адресов: 192.168.0.0/24

IP-адрес. Десятичная запись         192        168         0          0
IP-адрес. Двоичная запись           11000000   10101000    00000000   00000000
Маска подсети. Двоичная запись      11111111   111111111   11111111   00000000
Маска подсети. Десятичная запись    255        255         255        0

IP-адрес состоит из 32 бит, поделенных на 4 части по 8 бит в каждой.
Маска подсети также имеет длину 32 бита - она фактически шаблон, по которому определяется принадлежность адреса подсети. Там, где в маске стоят единицы, значение меняться не может, то есть часть 172.16.5 совершенно неизменна и она будет одинакова для всех хостов этой подсети, а та, где нули — варьируется.

То есть в примере выше 172.16.5.0/24 - это адрес сети, а хосты будут 172.16.5.1-172.16.5.254 (последний 255 — широковещательный), потому что 00000001 — это 1, а 11111110 — 254 (речь о последнем октете адреса). /24 означает, что длина маски 24 бита, то есть у нас идёт 24 единицы — неизменная часть и 8 нулей.

Другой случай, когда маска у нас, например, 30 бит, а не 24.

Например есть сеть 172.16.2.4/30
Распишем это так:

IP-адрес. Десятичная запись        172         16          2           4
IP-адрес. Двоичная запись          10101100    00010000    00000010    00000100
Маска подсети. Двоичная запись     11111111    11111111    11111111    11111100
Маска подсети. Десятичная запись   255         255         255         252

Как видно, для этой подсети могут меняться только последние два бита. Последний октет может принимать следующие 4 значения:

00000100 — адрес подсети (4 в десятичной системе)
00000101 — адрес узла (5)
00000110 — адрес узла (6)
00000111 — широковещательный (7)

Всё, что за пределами этого — уже другая подсеть

То есть теперь ясно, что маска подсети — это последовательность 32-х бит, где сначала идут единицы, означающие адрес подсети, потом идут нули, означающие адрес хоста. При этом чередоваться нули и единицы в маске не могут чередоваться. То есть маска 11111111.11100000.11110111.00000000 невозможна.

Обратная маска (wildcard)

Для подавляющего большинства админов, обратная маска - это не более, чем инверсия обычной маски. То есть нули в начале задают адрес части, которая должна совпадать обязательно, а единицы наоборот свободную часть.
То есть в вверхнем примере, если хотим отфильтровать все хосты из подсети 172.16.5.0/24, то в access-list задаём

172.16.5.0 0.0.0.255

Потому что обратная маска будет выглядеть так:

00000000.00000000.00000000.11111111

Во втором примере с сетью 172.16.2.4/30 обратная маска будет выглядеть так - 30 нулей и две единицы:

Обратная маска. Двоичная запись        00000000    00000000    00000000    00000011
Обратная маска. Десятичная запись      0           0           0           3

Соответственно параметр в access-листе будет выглядеть так:

172.16.2.4 0.0.0.3

В описанных ситуациях последний октет обратной маски получается вычитанием из 255 цифры последнего октета обычной маски (255-252=3) и т.д.

Но на самом деле обратная маска - это несколько более богатый инструмент, им можно объединять адреса внутри одной подсети или даже объединять подсети, но самое главное отличие, можно чередовать нули и единицы. Это позволяет, например, отфильтровать определённый узел (или группу) в нескольких подсетях одной строкой.

Пример 1

Дано: сеть 172.16.16.0/24
Надо: отфильтровать первые 64 адреса (172.16.16.0-172.16.16.63)
Решение: 172.16.16.0 0.0.0.63

Пример 2

Дано: сети 172.16.16.0/24 и 172.16.17.0/24
Надо: отфильтровать адреса из обеих сетей
Решение: 172.16.16.0 0.0.1.255

Обсуждение

Ваш комментарий. Вики-синтаксис разрешён:
 
This website uses 🍪 for visitor traffic analysis. By using the website, you agree with storing the cookies on your computer.More information
/var/www/dx/data/www/rtfm.wiki/data/pages/network/cidr.txt · Последние изменения: 2017/10/31 17:07 (внешнее изменение)