“Классы сетей — это пережиток устаревшего подхода к адресации, который всё ещё приходится изучать, потому что его логика застыла в маршрутных таблицах, старом ПО и неправильных конфигурациях. Фактически, мы вынуждены разбираться в правилах игры, по которой больше не играют, чтобы понимать, почему современные сети устроены именно так.”
Иерархия классов A, B и C
С 1981 до 1993 года IP-адреса IPv4 распределялись по системе классов, или classful networking. Жёсткое деление на классы было простым для понимания, но катастрофически неэффективным с точки зрения использования адресного пространства. Проблема была в том, что размер сети был предопределён первыми битами адреса, независимо от реальных потребностей организации.
Класс A определялся первым битом адреса, равным нулю. Диапазон адресов от 1.0.0.0 до 126.0.0.0. В сетях класса A 8 бит отводилось на идентификатор сети, а оставшиеся 24 бита — на адреса хостов. Это позволяло создать одну сеть, содержащую более 16 миллионов уникальных адресов. Такие блоки выделялись только крупнейшим организациям.
Класс B начинался с битовой комбинации «10» в первых двух битах. Диапазон — от 128.0.0.0 до 191.255.0.0. Под сеть и хосты отводилось по 16 бит, что давало около 65 тысяч адресов в одной сети. Этот класс считался оптимальным для университетов и средних компаний.
Класс C определялся первыми тремя битами «110». Диапазон адресов — от 192.0.0.0 до 223.255.255.0. Здесь 24 бита были под сеть, и только 8 бит (один байт) — под хосты, что ограничивало сеть 254 устройствами. Это был стандарт для мелких офисов.
Таблица основных классов сетей
Помимо трёх основных классов для уникастной адресации, существовали служебные классы D и E.
| Класс | Диапазон первого октета | Назначение битов | Количество хостов в сети | Основное назначение |
|---|---|---|---|---|
| A | 1 – 126 | N.H.H.H (8 бит сети, 24 бита хоста) | 16 777 214 | Крупнейшие провайдеры и корпорации |
| B | 128 – 191 | N.N.H.H (16 бит сети, 16 бит хоста) | 65 534 | Университеты и средние предприятия |
| C | 192 – 223 | N.N.N.H (24 бита сети, 8 бит хоста) | 254 | Малые сети и локальные сегменты |
| D | 224 – 239 | Не применимо | – | Групповая рассылка (multicast) |
| E | 240 – 255 | Не применимо | – | Зарезервировано для экспериментов |
Класс D (224.0.0.0 – 239.255.255.255) зарезервирован для многоадресной рассылки (multicast). Пакеты, отправленные на адрес этого класса, доставляются всем устройствам, которые подписались на соответствующую группу. Это основа для потокового видео, конференц-связи и некоторых протоколов маршрутизации.
Класс E (240.0.0.0 – 255.255.255.255) никогда не использовался в публичных сетях. Он был выделен для будущих экспериментов и исследований.
Недостатки классовой системы и появление CIDR
Ключевая проблема классовой адресации — расточительство. Компании, которым было достаточно 2-3 тысяч адресов, вынужденно получали целый класс B на 65 тысяч адресов. Остальные адреса простаивали, но не могли быть перераспределены, что ускорило истощение пула IPv4. Это явление называлось «проблемой трёх классов».
Система также усложняла маршрутизацию в интернете. Каждой сети класса A, B или C соответствовала отдельная запись в глобальных таблицах маршрутизации, что вело к их неконтролируемому росту.
Переход к бесклассовой адресации (CIDR)
В 1993 году была стандартизирована технология бесклассовой междоменной маршрутизации — Classless Inter-Domain Routing (CIDR, произносится как «сайдер»). Она отменила жёсткие границы между классами.
Суть CIDR — в использовании маски переменной длины (Variable Length Subnet Mask, VLSM). Теперь размер сети определялся не первыми битами адреса, а явно указанной маской подсети, которая записывалась через слэш. Например, запись 192.0.2.0/24 означает, что под сеть отведено 24 бита, а под хосты — оставшиеся 8 бит, как в старом классе C. Но с тем же успехом можно было определить сети /25, /26, /28, гибко выделяя блоки нужного размера.
# Пример сравнения классового и бесклассового подхода
Классовый (Classful):
192.168.1.0 — автоматически считается сетью класса C с маской 255.255.255.0 (/24).
Бесклассовый (CIDR):
192.168.1.0/25 — сеть на 126 хостов.
192.168.1.128/26 — сеть на 62 хоста.
192.168.1.192/28 — сеть на 14 хостов.
# Все эти сети выделены из одного исходного блока класса C.
CIDR решил две основные задачи: резко замедлил истощение IPv4-адресов за счёт их агрегирования (суммаризации маршрутов) и позволил создавать подсети произвольного размера, соответствующие реальным нуждам.
Почему классы сетей до сих пор актуальны
Хотя официально классовая адресация отменена, её отголоски встречаются повсеместно:
- Стандартные маски по умолчанию: Многие сетевые устройства и устаревшие системы по-прежнему предполагают маску класса для адресов в определённых диапазонах (например, для 10.0.0.1 — маску класса A, 255.0.0.0). Это может приводить к ошибкам при настройке.
- Приватные диапазоны: Известные диапазоны приватных адресов (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) исторически унаследованы от классов A, B и C соответственно.
- Упрощённая логика в документации: Термины «сеть класса A» или «адрес класса C» часто используются как неформальные обозначения размера сети, особенно в контексте безопасности и документации ФСТЭК.
- Обратная совместимость: Некоторые старые протоколы и конфигурационные файлы могут некорректно работать с бесклассовой адресацией.
Итог
Система классов сетей — важный исторический этап, объясняющий, почему IPv4-адресация выглядит именно так. Её понимание необходимо для грамотной работы с унаследованными системами, сетевой документацией и для глубокого анализа проблем маршрутизации. Однако современное проектирование и администрирование сетей полностью построено на бесклассовой адресации (CIDR) и масках переменной длины, которые обеспечивают гибкость и эффективное использование адресного пространства. Знание классов помогает понять эволюцию стандартов, но для практической работы сегодня критически важно владеть CIDR и VLSM.