Подсеть (Subnet)
Часть большой сети с общим диапазоном адресов: сеть делят на подсети, чтобы разграничить доступ и упростить управление.
Подсеть — логически выделенная часть сети со своим диапазоном IP-адресов. Большую сеть делят на подсети так же, как здание делят на этажи и отделы: серверы приложений — в одной подсети, базы данных — в другой, рабочие места сотрудников — в третьей. Между подсетями трафик идет через маршрутизатор или межсетевой экран, и там можно решать, кому куда разрешено.
Как записывается подсеть
IP-адрес IPv4 состоит из 32 бит. Часть бит обозначает сеть, остальные — устройство в ней. Сколько бит отведено под сеть, показывает маска или число после косой черты (запись CIDR):
10.0.1.0/24 = маска 255.255.255.0 = адреса 10.0.1.0 – 10.0.1.255
В подсети /24 256 адресов, из них 254 можно раздать устройствам: первый адрес обозначает саму сеть, последний — широковещательный.
| Префикс | Маска | Адресов для устройств |
|---|---|---|
| /24 | 255.255.255.0 | 254 |
| /25 | 255.255.255.128 | 126 |
| /26 | 255.255.255.192 | 62 |
| /28 | 255.255.255.240 | 14 |
| /30 | 255.255.255.252 | 2 |
Каждый лишний бит в префиксе делит подсеть пополам. Подробнее об адресах — в термине IPv4 / IPv6.
Зачем делить сеть
- Безопасность. Если взломан компьютер сотрудника, он не должен иметь прямого доступа к базам данных. Разделение на подсети с правилами между ними ограничивает распространение атаки.
- Порядок. По адресу сразу понятно, что это за устройство и где оно находится.
- Производительность. Широковещательные сообщения не выходят за пределы подсети и не нагружают всю сеть.
- Требования регуляторов. Системы, обрабатывающие персональные данные или платежи, выделяют в отдельные сегменты с контролируемым доступом.
Пример разбиения
10.0.1.0/24— веб-серверы и балансировщики, доступные из интернета;10.0.2.0/24— серверы приложений, доступные только из первой подсети;10.0.3.0/24— базы данных, доступные только серверам приложений;10.0.10.0/23— рабочие места сотрудников.
Подсети в облаке
В облачных платформах подсети создаются внутри виртуальной частной сети (VPC) и привязываются к зонам доступности. Их удобно описывать кодом в Terraform, чтобы схема сети была задокументирована и воспроизводима. Главная ошибка при планировании — слишком маленькие подсети: расширить их потом сложно, поэтому адресов закладывают с запасом, а диапазоны разных площадок и VPN не должны пересекаться.