Адресация — это главный навык сетевого инженера. На собеседовании могут попросить
«дай 200 хостов в каждой VLAN, оптимально нарежь /22» — и считать ты должен в голове или на бумаге за минуту.
Этот урок учит так считать.
IPv4-адрес — это 32 бита, записанные четырьмя октетами (по 8 бит каждый)
в десятичной форме через точку. Каждый октет — число от 0 до 255 (2⁸ = 256).
Адрес 192.168.10.45 — как в битах
8 бит на октет, 4 октета на адрес = 32 бита, 4 миллиарда адресов IPv4 (но их давно не хватает).
2. Маска подсети — главный концепт
Маска говорит: «сколько старших бит — это номер сети, а сколько остальных — номера хостов».
Маска /24 (или 255.255.255.0) значит: первые 24 бита фиксированы (сеть), последние 8 — переменные (хосты).
Маска /24 разделяет адрес на «сеть» и «хост»
Маска просто говорит «вот эти биты — сеть, остальные — хост». Маршрутизаторы по этому работают.
3. CIDR-нотация — современный стандарт
CIDR (Classless Inter-Domain Routing) — это запись префикса одной цифрой после /.
Скажем /24 = 24 единичных бита в маске = 255.255.255.0.
Соответствие CIDR ↔ маска ↔ количество хостов
Формула: хостов = 2^(32-N) − 2. Минус 2 на network и broadcast. /31 — исключение (P2P, RFC3021).
4. Метод «магического числа» — считаем подсети в голове
Главный трюк сетевика. Любую подсеть можно вычислить за 10 секунд, если знаешь степени 2 и базовый алгоритм.
Алгоритм: 192.168.10.45/26 — найти network и broadcast
Алгоритм работает для любой маски. На бумаге решается за минуту, в голове — за 10-15 секунд после практики.
Скоростной приём для частых масок:
/24 → шаг 1 в 4-м октете (192 подсети по 256), /25 → шаг 128, /26 → 64, /27 → 32, /28 → 16, /29 → 8, /30 → 4.
Запомни 128, 64, 32, 16, 8, 4 — этого хватает в 99% случаев.
5. VLSM — разная длина маски
VLSM (Variable Length Subnet Masking) — это когда внутри одной большой сети ты режешь подсети
разной длины, чтобы не тратить адреса впустую.
VLSM пример: дана /24, нужно нарезать оптимально
VLSM позволяет нарезать «по нужде»: большим — большие куски, мелким — мелкие. Ничего не пропадает.
Правило раздачи VLSM
Раздавай от больших к меньшим (сначала /25 для 100 хостов, потом /26 для 50 и т.д.).
Считай нужное число хостов с запасом ×1.3 на рост.
Адреса для P2P — последние, /30 или /31. Это аксиома в энтерпрайз-проектах.
Оставляй 10-20% резерва на новые подсети.
6. Спецадреса и зарезервированные диапазоны
Диапазон
Назначение
RFC
0.0.0.0/8
«Эта сеть». Источник в DHCP-discover. Также 0.0.0.0/0 — default route.
RFC 1122
10.0.0.0/8
Приватная сеть (большая).
RFC 1918
100.64.0.0/10
Carrier-Grade NAT (CGN), не для LAN.
RFC 6598
127.0.0.0/8
Loopback. Чаще всего 127.0.0.1 = localhost.
RFC 1122
169.254.0.0/16
Link-local (APIPA, когда DHCP не ответил).
RFC 3927
172.16.0.0/12
Приватная сеть (средняя).
RFC 1918
192.0.2.0/24
TEST-NET-1 (для документации).
RFC 5737
192.168.0.0/16
Приватная сеть (домашняя, малая).
RFC 1918
198.51.100.0/24
TEST-NET-2.
RFC 5737
203.0.113.0/24
TEST-NET-3.
RFC 5737
224.0.0.0/4
Multicast.
RFC 5771
240.0.0.0/4
Reserved (для experimental).
RFC 1112
255.255.255.255
Limited broadcast (только в локальной сети).
RFC 919
7. IPv6 — база за 5 минут
IPv4-адреса закончились в 2011 году (формально). Долгосрочное решение — IPv6 с 128-битным адресом
(3.4×10³⁸ адресов — больше, чем песчинок на всех пляжах Земли).
IPv6 адрес — как читать
В IPv6 нет broadcast — заменён multicast. NDP заменяет ARP. SLAAC заменяет DHCP (опционально).
8. Команды для практики
Linux
$ ip addr show # все интерфейсы и их IP$ ip addr add 10.0.0.5/24 dev eth0 # добавить IP$ ip route show # таблица маршрутизации$ ip route add default via 10.0.0.1 # задать default gateway$ ip -6 addr show # IPv6 адреса$ ipcalc 192.168.10.45/26 # калькулятор подсетей$ sipcalc 10.0.0.0/22 # альтернатива (с splitting)
Cisco
router(config)# interface GigabitEthernet0/0
router(config-if)# ip address 192.168.10.1 255.255.255.0
router(config-if)# no shutdown
router(config)# ip route 0.0.0.0 0.0.0.0 192.168.10.254 # default routerouter# show ip route # таблица маршрутизацииrouter# show ip interface brief # краткая сводкаrouter# show running-config interface gi0/0
9. Частые ошибки в проектировании
сценарий 1«Назначил /24 на P2P-линк между двумя роутерами» —
использовал 2 адреса из 254, остальные 252 пропали. Должно быть /30 (или /31, если поддерживается RFC 3021).
сценарий 2«Все офисы на /24, гостевая сеть тоже на /24» →
тратится огромное адресное пространство. Реально подумай, сколько хостов нужно, и режь под VLSM.
сценарий 3«Использую 1.0.0.0/8 как приватный, я же видел этот диапазон в DHCP» →
1.0.0.0/8 — публичный диапазон APNIC, 1.1.1.1 — Cloudflare. RFC1918 = 10/8, 172.16/12, 192.168/16. Точка.
сценарий 4«Хосты не пингуются друг другу в одной подсети» →
проверь, что маска одинаковая на всех хостах! 192.168.0.5/24 и 192.168.0.10/25 — это разные подсети,
L3-роутинг между ними не сработает без gateway.
10. Чеклист для проектирования адресации
Из RFC1918: лучше всего 10.0.0.0/8 — много места, удобно резать.
На каждый сайт/локацию выделяй /16 или /20.
Внутри — на каждый VLAN /24 или меньше по реальному числу хостов.
Для P2P — только /30 или /31.
Loopback'и для маршрутизаторов — каждому /32 из выделенного блока.
Никаких /24 на P2P, никаких /16 на 50 хостов.
Документируй всё в IPAM (NetBox, phpIPAM, Excel) — иначе через год не вспомнишь.