Почему у двух телефонов один внешний IP-адрес
Роутер может отправлять запросы через один внешний IP-адрес.

Роутер может отправлять запросы через один внешний IP-адрес.

Вы открыли страницу проверки IP на двух домашних телефонах и получили одинаковые цифры. Это ещё не конфликт и не признак того, что устройства перепутались. Сайт видит адрес, с которого к нему пришло соединение, а внутри домашней сети у телефонов могут быть разные адреса. Важно понять, какие именно числа вы сравниваете.
В статье вы узнаете:
Представим обычную домашнюю сеть IPv4. Это привычные адреса из четырёх чисел с точками. Первый телефон получил адрес 192.168.1.10, второй 192.168.1.11, а роутер внутри сети использует 192.168.1.1.
Телефоны различаются своими локальными адресами. Но когда они обращаются к сайту, роутер может подставить вместо каждого из них один общий внешний адрес. В нашей учебной схеме обозначим его 203.0.113.25. Этот адрес специально взят из диапазона для документации: открывать его или прописывать в настройках не нужно.
Получается такая картина:
| Что проверяем | Первый телефон | Второй телефон |
|---|---|---|
| Адрес внутри домашней сети | 192.168.1.10 | 192.168.1.11 |
| Адрес, видимый сайту в нашей схеме | 203.0.113.25 | 203.0.113.25 |
В первой строке адреса разные, во второй одинаковые. Противоречия нет: строки описывают разные участки пути. Локальные адреса нужны для связи внутри своей сети, внешний адрес показывает сайту общий выход.
Такой способ подмены называют преобразованием сетевых адресов, или NAT. В домашнем варианте, где несколько устройств делят один внешний адрес, роутер учитывает ещё и номера портов. За счёт этого он сохраняет возможность вернуть ответы отправителям.
Если сайт отвечает на один общий адрес, почему страница первого телефона не приезжает на второй? Потому что у соединения есть не только адрес, но и программный номер порта. Это не отверстие для кабеля. Номер помогает отличать один обмен данными от другого.
Допустим, оба телефона одновременно соединяются с одним сайтом. Роутер выбирает для этих соединений разные внешние номера, например 62001 и 62002, и запоминает две связи:
Сайт отправляет данные одному адресу 203.0.113.25, но разным портам. Роутер смотрит сохранённую запись, восстанавливает нужный локальный адрес и передаёт данные дальше. Номера в примере выбраны для наглядности, конкретный роутер не обязан назначать именно их.
У телефона нет одного такого номера на всю жизнь или даже на весь вечер. Он может одновременно вести много обменов: открывать страницу, загружать изображения, получать сообщения. Роутер хранит соответствия для этих соединений, а не только список устройств. Эта разновидность преобразования описана в RFC 3022, разделе о NAPT.
Поэтому общий внешний адрес сам по себе не мешает двум людям пользоваться одним сайтом. В нашей схеме сведения, нужные для обратного пути, не исчезают: часть из них хранит роутер.
Совсем другой случай: два обычных устройства в одной домашней сети одновременно получили один локальный адрес, например 192.168.1.10. Данные для этого адреса могут попадать не туда, а соединения работать с перебоями. Это и есть конфликт адресов, а не совпадение внешнего IP на сайте.
Устройство может проверить, не занят ли его IPv4-адрес другим устройством в той же сети. Механизм описан в RFC 5227 об обнаружении конфликтов IPv4. Но вручную назначенный «свободный на вид» адрес всё равно может оказаться чужим. Отсутствие устройства в случайно открытом списке не доказывает, что адрес никто не использует.
А если 192.168.1.10 стоит у вас дома и такой же адрес есть у друга в другой независимой сети, конфликта нет. Для домашних и других частных сетей специально выделены диапазоны, которые можно использовать повторно. Адрес имеет смысл внутри своей сети, а не как уникальная метка всех устройств в мире.
Поэтому перед поиском неисправности полезно уточнить место сравнения. Совпадение на сайте проверки IP может быть нормальным. Совпадение локальных адресов двух устройств одной обычной домашней сети требует проверки настройки. Такие же адреса в разных домах сами по себе ничего не нарушают.
К локальному адресу часто добавляется префикс, например 192.168.1.10/24. Число после косой черты задаёт границы адресного блока. Одного вида 192.168.1… недостаточно, чтобы надёжно определить эти границы: нужен настоящий префикс из настроек сети.
У наших учебных телефонов пусть будет один и тот же префикс /24. В калькуляторе CIDR выберите префикс /24 и по очереди введите 192.168.1.10 и 192.168.1.11. Каждый раз получится сеть 192.168.1.0/24. В ней обычный диапазон адресов устройств идёт от 192.168.1.1 до 192.168.1.254.
Это 254 адреса по правилам расчёта такой подсети. Один из них в примере уже использует роутер. Калькулятор не утверждает, что все остальные свободны, и не выдаёт адреса подключённым телефонам.
Совпадение результата означает лишь, что введённые адреса и префиксы относятся к одному вычисленному блоку. Оно не доказывает, что устройства сейчас находятся в одном Wi-Fi или могут связаться друг с другом. У друга дома может быть точно такой же блок, а внутри одной сети связь могут ограничивать настройки.
Калькулятор здесь решает узкую задачу: показывает границы по вашим исходным данным. Он не ищет внешний IP, не сканирует устройства и не обнаруживает NAT. По нему нельзя проверить исправность домашнего подключения.
Общий выход бывает не только у одной квартиры. Провайдер тоже может преобразовывать адреса и выпускать несколько абонентов через один внешний IPv4. Поэтому одинаковый адрес снаружи ещё не доказывает, что люди сидят за одним роутером или живут вместе.
Верно и обратное: два устройства рядом не обязаны показывать один внешний адрес. Один телефон мог перейти на мобильную связь, другой использовать VPN; в сети могут быть разные выходы. Кроме того, современные подключения могут использовать IPv6. Схему с общим IPv4 не стоит автоматически переносить на него.
Для сравнения нужны одинаковые условия: какой вид адреса показан, через какое подключение открыта страница и не изменился ли путь в интернет. Сравнивать локальный IPv4 одного телефона с внешним адресом другого бессмысленно, даже если оба результата названы просто «IP».
И последнее: общий адрес не означает анонимность. Он лишь не позволяет по одному числу уверенно заключить, что перед вами одно конкретное устройство или человек. Для бытовой проверки достаточно более простого вывода: сначала отделите адрес телефона внутри сети от адреса общего выхода, и нормальная работа роутера перестанет выглядеть как ошибка.
Напишите своё мнение, комментарий или предложение.