CIDR-нотация
CIDR-нотация (Classless Inter-Domain Routing notation, бесклассовая междоменная маршрутизация) — это компактный метод записи IP-адресов и их сетевых масок, используемый в компьютерных сетях для указания границ подсети. В отличие от устаревшей классовой адресации (классы A, B, C), CIDR-нотация позволяет гибко делить адресное пространство на подсети произвольного размера, что значительно повышает эффективность использования IPv4-адресов. Основной элемент записи — IP-адрес, за которым следует косая черта (/) и число, обозначающее длину префикса (количество единичных бит в маске подсети). Например, запись 192.168.1.0/24 означает, что первые 24 бита адреса являются сетевой частью, а оставшиеся 8 бит — адресами хостов.
История возникновения
Проблемы классовой адресации
До внедрения CIDR в 1993 году в Интернете использовалась классовая адресация (IPv4), где адресное пространство было жёстко разделено на три основных класса: A (с маской /8), B (/16) и C (/24). Это приводило к нерациональному расходованию адресов. Например, организация, которой требовалось 300 адресов, получала блок класса B (65 534 адреса), что создавало огромный избыток. К 1992 году стало очевидно, что при сохранении такой модели адреса IPv4 будут исчерпаны в течение нескольких лет.
Разработка и внедрение
Протокол CIDR был предложен в 1992 году и стандартизирован в 1993 году в документах RFC 1517–1519. Основными авторами выступили инженеры из компании Cisco Systems и других организаций. CIDR решил сразу две задачи: позволил агрегировать маршруты (уменьшать размер таблиц маршрутизации) и гибко выделять подсети любого размера. Внедрение CIDR в глобальную сеть Интернет происходило постепенно, и к концу 1990-х годов он стал основным методом маршрутизации.
Принцип работы
IP-адрес и маска подсети
В CIDR-нотации IP-адрес (32 бита для IPv4) делится на две части: сетевой префикс (сеть) и идентификатор хоста. Длина префикса указывается числом после косой черты. Например, в записи 10.0.0.0/8 первые 8 бит — сеть, остальные 24 — хосты. Маска подсети в двоичном виде представляет собой последовательность единиц (длиной, равной префиксу) и нулей. Для 10.0.0.0/8 маска — 255.0.0.0.
Вычисление диапазона адресов
Чтобы определить диапазон адресов в подсети, нужно:
- Взять IP-адрес и маску.
- Выполнить побитовое логическое «И» между адресом и маской — получится адрес сети.
- Выполнить побитовое логическое «ИЛИ» между адресом сети и инвертированной маской — получится широковещательный адрес.
Пример: для 192.168.1.0/24:
- Маска:
255.255.255.0(24 единицы). - Адрес сети:
192.168.1.0. - Широковещательный адрес:
192.168.1.255. - Диапазон хостов:
192.168.1.1–192.168.1.254.
Агрегация маршрутов
CIDR позволяет объединять несколько смежных подсетей в одну, записывая их общий префикс. Например, сети 192.168.0.0/24, 192.168.1.0/24 и 192.168.2.0/24 можно агрегировать в 192.168.0.0/22. Это уменьшает количество записей в таблицах маршрутизации и снижает нагрузку на маршрутизаторы.
Классификация и размеры подсетей
Типичные длины префиксов
В CIDR-нотации используются различные длины префиксов, от /0 (весь IPv4-адрес) до /32 (один хост). Наиболее распространённые:
| Длина префикса | Маска подсети | Количество адресов | Количество хостов |
|---|---|---|---|
| /8 | 255.0.0.0 | 16 777 216 | 16 777 214 |
| /16 | 255.255.0.0 | 65 536 | 65 534 |
| /24 | 255.255.255.0 | 256 | 254 |
| /30 | 255.255.255.252 | 4 | 2 |
| /32 | 255.255.255.255 | 1 | 0 |
Специальные префиксы
/0— весь Интернет (используется в маршрутизации по умолчанию)./31— используется для соединения «точка-точка» (2 адреса, оба хостовые, без широковещательного)./32— адрес одного хоста (часто применяется в списках доступа).
Применение
В маршрутизации
CIDR-нотация является основой протоколов маршрутизации, таких как BGP (Border Gateway Protocol), OSPF (Open Shortest Path First) и RIP (Routing Information Protocol). Маршрутизаторы обмениваются префиксами CIDR, что позволяет строить эффективные таблицы маршрутизации. Например, провайдер может объявить маршрут 192.0.2.0/24 вместо 256 отдельных маршрутов для каждого адреса.
В настройке сетей
Администраторы используют CIDR-нотацию при настройке сетевых интерфейсов, DHCP-серверов, межсетевых экранов и VPN-соединений. Например, в конфигурации сетевого интерфейса Linux запись ip addr add 10.0.0.1/24 dev eth0 задаёт адрес и маску подсети.
В облачных вычислениях
Провайдеры облачных услуг (например, Amazon Web Services, Microsoft Azure, Яндекс.Облако) используют CIDR-нотацию для определения диапазонов виртуальных частных облаков (VPC). Клиент может указать, например, 10.0.0.0/16 для своей виртуальной сети.
Примеры
Пример 1: Разделение сети на подсети
Исходная сеть: 192.168.0.0/24. Требуется создать 4 подсети по 64 адреса каждая. Для этого используется маска /26:
- Подсеть 1:
192.168.0.0/26(адреса 192.168.0.0–192.168.0.63) - Подсеть 2:
192.168.0.64/26(192.168.0.64–192.168.0.127) - Подсеть 3:
192.168.0.128/26(192.168.0.128–192.168.0.191) - Подсеть 4:
192.168.0.192/26(192.168.0.192–192.168.0.255)
Пример 2: Агрегация маршрутов
Три сети: 10.1.0.0/24, 10.1.1.0/24, 10.1.2.0/24. Их общий префикс — 10.1.0.0/22 (первые 22 бита совпадают). Маршрутизатор может объявить один маршрут вместо трёх.
Интересные факты
- CIDR-нотация применяется не только для IPv4, но и для IPv6, где длина префикса обычно составляет /64 для подсетей.
- В 1994 году внедрение CIDR позволило отсрочить исчерпание IPv4-адресов примерно на 10–15 лет.
- Максимальная длина префикса для IPv4 — /32, для IPv6 — /128.
- В некоторых старых операционных системах (например, ранние версии Windows) CIDR-нотация не поддерживалась, и требовалось указывать маску в десятичном виде.
Критика и ограничения
- CIDR не решает фундаментальную проблему нехватки IPv4-адресов, а лишь смягчает её. Полное решение — переход на IPv6.
- При неправильной агрегации маршрутов могут возникать «чёрные дыры» (black holes), когда трафик направляется в несуществующую сеть.
- Для человека вычисление диапазонов адресов вручную может быть сложным, особенно при нестандартных длинах префиксов (например, /23 или /25).
Источники
- RFC 1518 — An Architecture for IP Address Allocation with CIDR (1993)
- RFC 1519 — Classless Inter-Domain Routing (CIDR): an Address Assignment and Aggregation Strategy (1993)
- RFC 4632 — Classless Inter-domain Routing (CIDR): The Internet Address Assignment and Aggregation Plan (2006)
- Д. Дэвис, «Компьютерные сети», 5-е издание, 2012
- Материалы курса «Сети и телекоммуникации» МФТИ
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →