Роутеры Windows 10Windows 11

Роутер: проброс портов не работает — CGNAT

  • Обновлено
  • Чтение ≈ 5 минут
  • Нужны права администратора

Краткий ответ

Проброс портов не работает чаще всего из-за CGNAT: у провайдера нет белого IP, и входящие соединения не доходят до роутера. Сравните WAN-адрес роутера с внешним IP, проверьте правило, статический IP устройства, файрвол и используйте белый IP, IPv6 или туннель.

В этой статье
  1. Сначала узнайте, есть ли белый IP
  2. Если белый IP есть
  3. Если вы за CGNAT
Возможная причинаКак узнатьЧто делать
Заказать белый IPМногие провайдеры подключают услугу за небольшую плату.Услуга «статический IP» в личном кабинете.Самый простой путь.
Использовать IPv6Если провайдер выдаёт глобальные IPv6, проброс не нужен, но нужно открыть порт в файрволе.В ipconfig есть адрес из диапазона 2000::/3.Разрешите входящие и подключайтесь по IPv6.
Обратный туннель (Cloudflare Tunnel, WireGuard)Сервер сам устанавливает исходящее соединение.Работает за любым NAT.Для веб-служб — Cloudflare Tunnel, для остальных — WireGuard на арендованном VPS.
Игровые и p2p-приложенияИспользуют ретрансляторы.Сервер игры недоступен напрямую.Выберите режим с выделенными серверами.
Двойной NAT домаЗа роутером провайдера стоит ваш роутер.WAN вашего роутера — приватный адрес.Включите режим моста (Bridge) на первом устройстве или пробросьте порт на обоих.

#Сначала узнайте, есть ли белый IP

Проброс портов работает, только если роутер имеет публичный (белый) IPv4-адрес. Провайдеры нередко используют CGNAT — общий адрес на много абонентов; тогда входящий запрос из интернета доходит до оператора, но не до вашего роутера. Определить это просто: сравните два адреса.

  1. Узнайте внешний IPv4, который видят сайтыНа компьютере, подключённом к своему роутеру, откройте браузер и перейдите на доверенный сайт определения публичного IPv4, затем запишите показанный адрес. Можно вместо этого открыть терминал и выполнить приведённую ниже команду curl -s ifconfig.me; echo, если команда доступна: она показывает адрес, с которого запрос виден внешнему сервису. Не путайте этот адрес с 192.168..., назначенным вашему компьютеру внутри дома.
  2. WAN IP в интерфейсе роутераНа домашнем компьютере откройте надёжную страницу определения внешнего IPv4-адреса, затем зайдите в панель своего роутера по адресу «Основной шлюз» (Windows: ipconfig). В разделе «Интернет/WAN → Состояние» запишите IPv4 WAN. Если он отличается от публичного адреса либо относится к 10.0.0.0/8, 172.16–31.0.0/12, 192.168.0.0/16 или 100.64.0.0/10, может использоваться двойной NAT/CGNAT. Тогда обычный проброс портов на одном роутере может не работать; уточните у провайдера наличие публичного IPv4.
  3. СравнитеВ панели своего маршрутизатора найдите раздел «Интернет/WAN» и запишите выданный ему IPv4. Затем с компьютера за этим роутером откройте доверенный сервис определения внешнего IP и сравните адреса. Если WAN-адрес частный (10.x.x.x, 172.16–31.x.x, 192.168.x.x) или из диапазона 100.64.0.0/10, входящие подключения из интернета обычно блокируются дополнительной трансляцией провайдера. Если адреса совпадают и IP публичный, продолжайте проверять локальный брандмауэр и правило порта; совпадение само по себе ещё не доказывает, что порт открыт.
  4. Команды для отдельных ситуацийВыберите только подходящий вариант. Это не одна последовательность: часть команд диагностирует проблему, а часть меняет настройки или данные.
    Выберите подходящий вариант — это не команды для последовательного выполнения
    Вариант 1Внешний адрес, видимый из интернета
    Linux · Терминал (Bash)Команда
    Внешний адрес, видимый из интернета
    curl -s ifconfig.me; echo
    Вариант 2Маршрут до внешнего адреса: несколько приватных (10.x/100.64.x) узлов подряд говорят о CGNAT
    Windows · Командная строка (CMD)Команда
    Маршрут до внешнего адреса: несколько приватных (10.x/100.64.x) узлов подряд говорят о CGNAT
    tracert -d -h 6 8.8.8.8

#Если белый IP есть

  1. Закрепите внутренний адрес устройстваВ веб-интерфейсе собственного роутера найдите «Локальная сеть → DHCP → Резервирование адресов» (название зависит от модели). Выберите устройство, на которое нужно пересылать порт, и закрепите его фактический внутренний IPv4 за MAC-адресом. Например, для роутера с сетью 192.168.1.0/24 это может быть свободный 192.168.1.50; не копируйте пример, если ваша подсеть иная. Сохраните изменения и сравните зарезервированный адрес с IP в правиле перенаправления.
  2. Создайте правило пробросаУбедитесь, что сервис действительно слушает нужный порт на вашем устройстве и у роутера есть публичный адрес. В панели роутера откройте «NAT/Переадресация портов/Virtual Server» и создайте правило: внешний порт, внутренний IPv4 вашего устройства, внутренний порт и протокол TCP либо UDP по документации приложения. Сохраните, не открывайте удалённое администрирование роутера в интернет. Проверьте доступ извне с мобильной сети и выключите правило, если оно не требуется.
  3. Разрешите вход на нужный порт в брандмауэреДля владельца компьютера, на который направлен порт: прежде чем добавлять правило брандмауэра, убедитесь, что нужный сервер запущен и слушает правильный TCP/UDP-порт. В Windows 11 откройте «Пуск → Безопасность Windows → Брандмауэр и защита сети → Дополнительные параметры» и раздел «Правила для входящих подключений». Создавайте узкое разрешающее правило только для конкретной доверенной программы и нужного порта; лучше ограничить удалённые адреса. Не отключайте брандмауэр целиком. Если служба не слушает порт, правило не поможет.
  4. Убедитесь, что служба слушает нужный портНа компьютере Windows, где запущен ваш сервер, нажмите Win+R → powershell → Enter и выполните Get-NetTCPConnection -State Listen | Sort-Object LocalPort. Найдите действительный TCP-порт вашего приложения и проверьте локальный адрес прослушивания. Если служба использует UDP, этот вывод не подходит: нужен Get-NetUDPEndpoint. Если порт отсутствует, сначала запустите собственную службу и изучите её журнал; проброс на роутере не поможет, пока программа не принимает соединения.
  5. Проверьте снаружиОтключите Wi-Fi на телефоне, включите мобильные данные и откройте адрес вашего публичного IPv4 с нужным портом из приложения, для которого настроен проброс. Проверяйте только пока сервис запущен и слушает порт; иначе порт закономерно покажется закрытым. Если доступа нет, сравните WAN-адрес роутера с публичным IP и проверьте правило брандмауэра. Домашняя проверка по публичному IP может вводить в заблуждение, если роутер не поддерживает NAT loopback.
  6. Различайте сбой проброса и отсутствие hairpin NATПроверяйте перенаправление из другой сети: на телефоне отключите Wi-Fi, включите мобильную сеть и обратитесь к публичному IP роутера и порту запущенной службы. Если снаружи работает, но из домашнего Wi-Fi по публичному IP нет, ваш роутер, вероятно, не поддерживает NAT loopback (hairpin NAT). Для устройств дома используйте внутренний IP или локальное имя. Если снаружи не работает тоже, снова проверьте CGNAT, запущенную службу и правила брандмауэра.
  7. Команды для отдельных ситуацийВыберите только подходящий вариант. Это не одна последовательность: часть команд диагностирует проблему, а часть меняет настройки или данные.
    Выберите подходящий вариант — это не команды для последовательного выполнения
    Вариант 1Слушает ли служба нужный порт (пример: 25565)
    Windows · Командная строка (CMD)Команда
    Слушает ли служба нужный порт (пример: 25565)
    netstat -ano | findstr :25565
    Вариант 2Разрешить входящий TCP-порт в брандмауэре Windows
    Windows · PowerShellКомандаПрава администратора
    Разрешить входящий TCP-порт в брандмауэре Windows
    New-NetFirewallRule -DisplayName "Server 25565" -Direction Inbound -Protocol TCP -LocalPort 25565 -Action Allow
    Вариант 3Linux: слушающий порт и правила ufw
    Linux · Терминал (Bash)КомандаНужен sudo
    Linux: слушающий порт и правила ufw
    sudo ss -ltnp | grep 25565
    sudo ufw allow 25565/tcp
    Вариант 4Проверка доступности порта снаружи (запускайте с другой сети/сервера; замените адрес и порт)
    Linux · Терминал (Bash)Команда
    Проверка доступности порта снаружи (запускайте с другой сети/сервера; замените адрес и порт)
    nc -vz 203.0.113.10 25565

#Если вы за CGNAT

Так эту ошибку тоже называют

Источники и обновления

Последнее обновление статьи: 2 ноября 2026. Версии программ и интерфейсы меняются — если шаги не совпадают с вашей версией, сверяйтесь с документацией производителя.