- Home »

Понимание IP-адресов, подсетей и нотации CIDR в сетях
Если ты когда-нибудь настраивал сервер, поднимал VPN или просто пытался понять, почему твой сайт внезапно стал недоступен по локалке, то наверняка сталкивался с загадочными числами вроде 192.168.1.1/24
или 10.0.0.0/8
. Это не просто случайные цифры — это IP-адреса, подсети и магическая нотация CIDR. В этой статье разберёмся, что это такое, зачем оно нужно, как быстро и без боли всё настроить, и почему понимание этих вещей — мастхэв для любого, кто хочет управлять серверами, а не быть их рабом. Будет много практики, примеры, схемы, команды и даже немного гиковских лайфхаков. Поехали!
Как это работает? Простое объяснение без магии
IP-адрес — это как почтовый адрес для твоего устройства в сети. Он нужен, чтобы пакеты данных знали, куда идти. Но если у тебя не один сервер, а целая сеть (или ты арендуешь VPS, например, здесь), то возникает вопрос: как разделить сеть на части, чтобы не было хаоса? Вот тут и появляются подсети и CIDR.
- IP-адрес (IPv4): 4 байта, обычно пишется как четыре числа через точку (например,
192.168.0.1
). - Подсеть (subnet): логическое деление сети на части, чтобы устройства внутри подсети могли общаться напрямую, а снаружи — только через маршрутизатор.
- CIDR (Classless Inter-Domain Routing): способ записи диапазона IP-адресов, например,
192.168.0.0/24
. Цифра после слэша — это количество бит, отвечающих за “сетевую” часть адреса.
Раньше были классы (A, B, C), но это быстро устарело. CIDR — гибче и экономнее. Например, /24
— это 256 адресов (но реально доступно 254, потому что первый — адрес сети, последний — broadcast).
Как быстро и просто всё настроить?
Всё начинается с понимания, сколько устройств будет в сети. Например, если у тебя 10 серверов, не надо выделять им подсеть на 254 адреса. Можно сделать /28
— это 16 адресов (14 рабочих).
- Шаг 1: Определи, сколько хостов тебе нужно.
- Шаг 2: Выбери подходящий префикс CIDR (см. таблицу ниже).
- Шаг 3: Настрой сеть на сервере или роутере.
CIDR | Маска подсети | Кол-во адресов | Доступно хостам | Где использовать |
---|---|---|---|---|
/30 | 255.255.255.252 | 4 | 2 | Точка-точка (VPN, маршрутизаторы) |
/29 | 255.255.255.248 | 8 | 6 | Маленькие сети, DMZ |
/28 | 255.255.255.240 | 16 | 14 | Малые офисы, VPS-пулы |
/24 | 255.255.255.0 | 256 | 254 | Классика, локалки, большие VPS-пулы |
/16 | 255.255.0.0 | 65536 | 65534 | Очень большие сети, дата-центры |
Для расчёта можно использовать калькуляторы, например, ipcalc.org или subnet-calculator.com.
Примеры, схемы, практические советы
Пример 1: Разделение VPS на подсети
Допустим, у тебя есть выделенный сервер (вот тут можно взять) и ты хочешь поднять на нём несколько изолированных VPS. Ты можешь разбить свою сеть на подсети, чтобы каждая VPS была в своей “песочнице”.
# Пример настройки подсети на Linux (Debian/Ubuntu)
ip addr add 192.168.10.1/28 dev eth0
ip link set eth0 up
Теперь твои VPS могут быть в диапазоне 192.168.10.2-192.168.10.14
. Если нужно больше — увеличивай префикс.
Пример 2: Ошибка — слишком широкая подсеть
Частая ошибка: выделять /24 для пары серверов. Это не только неэкономно, но и может привести к проблемам с безопасностью (например, ARP-спуфинг в большой подсети).
Сценарий | Префикс | Плюсы | Минусы | Рекомендация |
---|---|---|---|---|
2 сервера | /30 | Минимум адресов, безопасность | Нет запаса | Использовать /30 или /29 |
10 серверов | /28 | Оптимально | Мало места для роста | Оставить запас, взять /27 |
100 серверов | /24 | Стандарт | Много broadcast-трафика | Разбить на /25 или /26 |
Пример 3: Автоматизация с помощью скриптов
Если ты часто поднимаешь новые VPS, можно автоматизировать выдачу IP и настройку подсетей. Например, с помощью bash-скрипта:
#!/bin/bash
# Добавить IP из подсети /28
for i in {2..14}; do
ip addr add 192.168.10.$i/28 dev eth0
done
Или использовать netplan для автоматической конфигурации сетей на Ubuntu.
Команды и утилиты для работы с подсетями и CIDR
ipcalc
— консольный калькулятор подсетейifconfig
(устаревший, но всё ещё встречается)ip addr
— современный способ управления IP на Linuxroute
илиip route
— настройка маршрутизацииnmap
— сканирование подсетейarp-scan
— поиск устройств в подсети
# Пример расчёта подсети
ipcalc 192.168.10.0/28
# Добавить IP-адрес
ip addr add 192.168.10.2/28 dev eth0
# Посмотреть маршруты
ip route show
# Сканировать подсеть
nmap -sn 192.168.10.0/28
Сравнение: ручная настройка vs автоматизация
Метод | Плюсы | Минусы | Когда использовать |
---|---|---|---|
Ручная настройка | Гибкость, полный контроль | Долго, легко ошибиться | Малые сети, разовые задачи |
Автоматизация (скрипты, Ansible, netplan) | Быстро, повторяемо, масштабируемо | Требует времени на настройку | Много серверов, частые изменения |
Интересные факты и нестандартные применения
- Можно использовать подсети для изоляции сервисов внутри одного сервера (например, разные Docker-сети с разными подсетями).
- Некоторые облачные провайдеры позволяют “растягивать” подсети между дата-центрами — удобно для резервирования.
- С помощью CIDR можно быстро ограничить доступ к сервису только для нужных диапазонов IP (например, через
iptables
илиfirewalld
). - В IPv6 всё ещё интереснее: там подсети обычно /64, и адресов хватит на всех (и даже на холодильник).
Новые возможности: автоматизация и скрипты
Понимание CIDR и подсетей открывает двери к автоматизации. Можно:
- Генерировать конфиги для VPN (WireGuard, OpenVPN) с уникальными подсетями для каждого клиента.
- Автоматически выдавать IP-адреса новым контейнерам или виртуалкам.
- Динамически менять маршруты в зависимости от нагрузки или отказа узлов.
- Интегрировать управление подсетями в CI/CD пайплайны для тестовых окружений.
Например, с помощью Ansible можно развернуть целую сеть серверов с нужными подсетями за пару минут. Или — если ты фанат Python — использовать модуль ipaddress для генерации и проверки подсетей прямо в скриптах.
Выводы и рекомендации
IP-адреса, подсети и CIDR — это не только про “чтобы работало”. Это про безопасность, масштабируемость и автоматизацию. Если ты хочешь, чтобы твои серверы жили долго и счастливо, а ты не тратил часы на ручную настройку — разберись с этими вещами. Используй подсети по назначению, не раздавай /24 направо и налево, автоматизируй всё, что можно автоматизировать. И не забывай: правильная сеть — это фундамент для любого проекта, будь то маленький VPS или огромный дата-центр.
Если хочешь попробовать всё это на практике — закажи VPS или выделенный сервер и начни экспериментировать. А если что-то не работает — всегда есть ServerFault и Habr для поиска ответов.
Прокачивай свои сетевые скиллы — и пусть твои сервера всегда будут на связи!
В этой статье собрана информация и материалы из различных интернет-источников. Мы признаем и ценим работу всех оригинальных авторов, издателей и веб-сайтов. Несмотря на то, что были приложены все усилия для надлежащего указания исходного материала, любая непреднамеренная оплошность или упущение не являются нарушением авторских прав. Все упомянутые товарные знаки, логотипы и изображения являются собственностью соответствующих владельцев. Если вы считаете, что какой-либо контент, использованный в этой статье, нарушает ваши авторские права, немедленно свяжитесь с нами для рассмотрения и принятия оперативных мер.
Данная статья предназначена исключительно для ознакомительных и образовательных целей и не ущемляет права правообладателей. Если какой-либо материал, защищенный авторским правом, был использован без должного упоминания или с нарушением законов об авторском праве, это непреднамеренно, и мы исправим это незамедлительно после уведомления. Обратите внимание, что переиздание, распространение или воспроизведение части или всего содержимого в любой форме запрещено без письменного разрешения автора и владельца веб-сайта. Для получения разрешений или дополнительных запросов, пожалуйста, свяжитесь с нами.