Перейти к содержимому
3.4. IP-адреса и маршрутизация

Маска, NAT и адреса, которые не адреса

Разберитесь, где кончается своя сеть, проведите пакет через NAT и обратно и научитесь узнавать адреса, по которым опознают неисправность.

// адрес пополам

IP-адрес несёт два адреса сразу: адрес сети и адрес устройства внутри неё. Где проходит граница, говорит маска. Двигайте ползунок: оранжевые биты - сетевая часть, и от неё зависит, кого маршрутизатор считает вашим соседом, а кого - чужой сетью.

сеть устройство 192.168.1.5
1 1 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 1
Адрес сети 192.168.1.0/24
Маска 255.255.255.0
Устройств в сети 254
  • Телефон в той же квартире 192.168.1.7 та же сеть
  • Умная лампочка на кухне 192.168.1.200 та же сеть
  • Ноутбук за роутером соседа 192.168.2.5 другая сеть
  • Сервер сайта в интернете 93.184.216.34 другая сеть

/0 Сетевой части нет вовсе. В таблице маршрутизации запись 0.0.0.0/0 означает маршрут по умолчанию: отправь сюда всё, для чего нет точного пути. Обычно это адрес роутера или провайдера.

/8 Маска 255.0.0.0, около 16 миллионов адресов. Так раздавали сети класса A: MIT получил блок в 16 миллионов адресов, столько же, сколько всему Китаю выделили на первых порах. Этой же записью задан приватный диапазон 10.0.0.0/8.

/12 Так записан приватный диапазон 172.16.0.0/12 - средние корпоративные сети.

/16 Маска 255.255.0.0, около 65 тысяч адресов - крупная корпоративная сеть. В этой же записи задан домашний приватный диапазон 192.168.0.0/16.

/24 Маска 255.255.255.0, 254 устройства: обычная домашняя или офисная сеть. Именно поэтому почти у каждого дома роутер раздаёт адреса вида 192.168.1.x.

/30 Маска 255.255.255.252, два адреса - ровно столько нужно, чтобы соединить два маршрутизатора между собой.

/32 Вся длина адреса ушла на сеть, устройствам не осталось ничего: такой записью обозначают один конкретный адрес.

Два адреса в каждой сети заняты служебными - сам адрес сети и широковещательный, поэтому в /24 устройств 254, а не 256. Здесь это правило применено к любому префиксу; в статье те же значения приведены для /8, /16, /24 и /30. Речь только про IPv4: у IPv6 адрес длиной 128 бит, адресов там примерно 340 ундециллионов, и делить их приходится по-другому.

// пакет через nat

Как один адрес работает на всю квартиру

Дома у ноутбука адрес 192.168.1.5, а в интернете его нет вовсе: наружу всё уходит от имени роутера. Ведите пакет по шагам - и станет видно, как роутер потом находит, кому вернуть ответ. У каждого шага есть вторая сторона: нажмите «а если не прошёл» и посмотрите, что при этом ломается.

  1. 01 Ноутбук отправляет пакет

    Отправитель - 192.168.1.5, порт 54321, получатель - 142.250.74.46. Адрес отправителя приватный: в интернете такой не маршрутизируется, и ответ по нему никто бы не нашёл.

  2. 02 Роутер подменяет отправителя

    Роутер ставит свой публичный адрес 178.124.5.99 и свой порт 49876, а в таблицу записывает: порт 49876 - это 192.168.1.5:54321. Без этой записи вернуть ответ будет некуда.

  3. 03 Пакет идёт по маршрутам

    Каждый маршрутизатор смотрит адрес получателя, находит подходящую запись и передаёт пакет дальше - к следующему. Полного пути не знает никто, каждый знает только следующий шаг. Обычно таких шагов от десяти до пятидесяти.

  4. 04 Сервер отвечает роутеру

    Ответ приходит на 178.124.5.99, порт 49876 - про ноутбук сервер не знает ничего и знать не может: он всё время разговаривал с роутером.

  5. 05 Роутер возвращает ответ ноутбуку

    По таблице: порт 49876 - это 192.168.1.5:54321. Роутер меняет адрес получателя обратно и отдаёт пакет в квартиру. Для ноутбука всё выглядело так, будто он разговаривал с сервером напрямую.

0 / 5 поломок разобрано

Адреса и порты - из разбора в статье. У провайдера бывает ещё и двойной NAT: тогда «серый» адрес получает не только ноутбук, но и сам роутер, и проброс портов перестаёт работать даже вручную.

// адреса, которые не адреса

Часть диапазонов IPv4 занята под особые задачи, и половина диагностики держится на умении их узнавать. Задача сверху - выберите, что значит адрес, и посмотрите разбор.

  1. 01

    Компьютер показывает адрес 169.254.7.31

    Кабель подключён, Wi-Fi подключён, сеть не работает.

    • Верно: это link-local. Роутер не ответил - не отвечает сам, не тот разъём, оборван кабель. Такой адрес всегда означает неисправность, а не настройку.

    • Домашние адреса - это 192.168.x.x, 10.x.x.x или 172.16-31.x.x. Диапазон 169.254 под них не выдаётся.

    • Публичный адрес провайдер выдаёт из своих диапазонов; 169.254 в интернете не маршрутизируется вовсе.

  2. 02

    Программа слушает 127.0.0.1

    Из соседнего компьютера подключиться не получается.

    • Верно. 127.0.0.1 - «сам себе»: обращение возвращается обратно, не доходя до сетевой карты. Поэтому и снаружи к такой программе не подключиться - она доступна только на своей машине.

    • Роутер обычно 192.168.0.1 или 192.168.1.1. 127.0.0.1 к роутеру отношения не имеет.

    • Заменить действительно можно - но это не ошибка, а осознанный выбор: слушать только себя.

  3. 03

    В таблице маршрутизации запись 0.0.0.0/0

    Рядом указан адрес роутера.

    • Верно. Маска нулевой длины подходит любому адресу, поэтому запись срабатывает последней - когда ничего конкретнее не нашлось. Обычно это адрес роутера или провайдера.

    • Таблица маршрутизации не запрещает, а показывает дорогу. Запреты - дело межсетевого экрана.

    • Свой адрес у маршрутизатора отдельный; 0.0.0.0/0 - это правило «всё остальное», а не устройство.

  4. 04

    Пакет отправлен на 255.255.255.255

    Его получили все устройства в сети сразу.

    • Верно. Так работает, например, запрос DHCP: устройство ещё не знает адреса роутера и кричит в эфир всем сразу.

    • Похоже по написанию, но маска - это не адрес получателя, а способ отделить номер сети от номера устройства.

    • За пределы своей сети такой пакет не выходит: маршрутизаторы его не пропускают.

  5. 05

    Телефон и ноутбук показывают 192.168.1.5 и 192.168.1.7

    Оба выходят в интернет через один роутер.

    • Верно. Такие диапазоны не маршрутизируются в интернете - они существуют только внутри квартиры, а различает устройства роутер по портам в таблице NAT.

    • Конфликт был бы при одинаковых адресах. Здесь адреса разные, всё в порядке.

    • Провайдер выдал один публичный адрес роутеру; эти два раздал сам роутер по DHCP.

  6. 06

    Провайдер выдал роутеру адрес 100.64.3.12

    Проброс портов настроен, но снаружи подключиться не получается.

    • Верно. Диапазон 100.64 провайдеры используют для своего NAT: наружу вы идёте от имени провайдерского узла. Проброс портов на своём роутере в этом случае не помогает - нужен публичный адрес, обычно за отдельную плату.

    • Публичный адрес был бы виден снаружи, и проброс портов работал бы. Здесь адрес из служебного диапазона провайдера.

    • Домашние диапазоны другие. Этот адрес роутер получил от провайдера, и настройки тут ни при чём.

Диапазоны пока путаются

Запомнить стоит три: 169.254 - неисправность, 127.0.0.1 - сам себе, 192.168 и 10.x - своя квартира. С ними разбирается половина сетевых жалоб.

В основном верно

Осталось помнить про 100.64: если провайдер выдал такой адрес, проброс портов на своём роутере не заработает никогда.

Разобрались полностью

Именно так: по одному взгляду на адрес часто понятно, где искать причину - в устройстве, в роутере или у провайдера.

Диапазоны - из таблицы специальных адресов в статье. Про 100.64 сказано там же, в разборе двойного NAT.

Интерактив разработан - ремонт компьютеров и ноутбуков в Барановичах. © 2008-2026. Источник: any.by/demo/gde-konchaetsya-set