Перейти к содержанию

Как получить белый IP у провайдера и когда можно без него

Публичный, или «белый», IPv4 выдаёт интернет-провайдер. Спросите у поддержки про публичный адрес с входящими подключениями и уточните, нужен ли вам постоянный адрес. Для временной ссылки на сайт или демо достаточно открыть HTTPS-туннель к одному приложению.

Пошаговая настройка

  1. Сравните WAN-адрес роутера с внешним IPv4

    В настройках роутера откройте раздел «Интернет» или «WAN» и найдите IPv4. С устройства в той же сети без VPN проверьте внешний IPv4 на странице «мой IP». Если адреса совпадают, а WAN-адрес публичный, уточните у провайдера, разрешает ли он входящие подключения. WAN-адрес из диапазонов 10.x.x.x, 172.16.x.x–172.31.x.x, 192.168.x.x или 100.64.x.x–100.127.x.x указывает на частный либо общий диапазон. Если адреса различаются, узнайте, происходит ли преобразование адреса на другом вашем роутере или у провайдера.

  2. Спросите провайдера о публичном адресе

    Можно написать так: «Нужен публичный IPv4 на WAN роутера с возможностью входящих подключений. Доступен ли динамический адрес? Есть ли статический, сколько он стоит и блокируются ли входящие порты?» Спросите, как применить новую настройку и когда перепроверить WAN. При постоянном адресе уточните условия сохранения номера при смене тарифа. После активации повторите сравнение и проверяйте доступ из другой сети.

  3. Поднимите пробную страницу в отдельной папке

    Если вам нужна ссылка на один веб-сервис, попробуйте вариант без заказа IP. На компьютере с локальным сервисом откройте Bash и выполните команды с Python 3. Они создадут временную папку с одной HTML-страницей и запустят сервер на 127.0.0.1 — адресе самого компьютера. Выделенная папка позволяет показать только тестовую страницу.

    demo_dir="$(mktemp -d)"
    printf '%s\n' '<h1>Tunnel demo is online</h1>' > "$demo_dir/index.html"
    python3 -m http.server 8000 --bind 127.0.0.1 --directory "$demo_dir"
  4. Проверьте страницу на той же машине

    Откройте второй терминал и выполните запрос. Если порт занят, остановите только свой пробный сервер либо выберите свободный порт и используйте его во всех следующих командах. Убедитесь, что получаете именно свою строку Tunnel demo is online. Успешный локальный запрос даёт с чем сравнить ответ через публичный адрес.

    curl -fsS http://127.0.0.1:8000/
  5. Запустите туннель

    Установите клиент ForTunnels по инструкции CLI ниже. Зарегистрируйте аккаунт и добавьте CLI-токен командой из настроек дашборда. Запустите HTTP-туннель к порту 8000 в отдельном терминале. Клиент сам подключится к ForTunnels. Скопируйте публичную HTTPS-ссылку из вывода клиента.

    fortunnels http 8000
  6. Откройте ссылку из другой сети

    Отключите Wi-Fi на телефоне и откройте выданный URL через мобильный интернет либо сделайте запрос с удалённой машины. В команде замените https://YOUR-TUNNEL-HOST на адрес из CLI. Убедитесь, что пришла та же строка из index.html. Остановите туннель через Ctrl+C, когда демо закончится, а затем остановите пробный сервер.

    curl -fsS "https://YOUR-TUNNEL-HOST/"
Ожидаемый ответ из локальной и удалённой сети
<h1>Tunnel demo is online</h1>

Публичный, статический и «серый» IP

Публичный IPv4 маршрутизируется в интернете. Он может быть динамическим и меняться при переподключении. Статический означает, что провайдер закрепил адрес за вами. Постоянный публичный адрес нужен, например, когда партнёр разрешает соединения только с заранее известного IP или вы сами принимаете трафик на своём маршрутизаторе и смена адреса неприемлема.

За CGNAT провайдер делит один публичный IPv4 между несколькими абонентами. В этом случае правило на домашнем роутере управляет только вашим участком сети. Если ваш провайдер не предоставляет публичный IPv4 или вы не можете менять настройки роутера, исходящее соединение CLI позволяет доставлять трафик от ForTunnels до выбранного приложения.

Туннель даёт адрес сервиса ForTunnels. Он подходит для демо, тестового API или webhook. При этом IP домашней линии и исходящий IP приложений остаются прежними. Если интеграция требует закрепить в своём списке разрешений IP, с которого ваш компьютер отправляет запросы, обсудите публичный статический IPv4 с провайдером.

Почему доступ может не заработать

После подключения публичного IPv4 доступ к приложению всё равно зависит от правила переадресации на роутере, межсетевого экрана и адреса, который слушает приложение. Если провайдер выдал динамический адрес, а прямое подключение нужно по одному имени, уточните, поддерживает ли ваш роутер динамический DNS. Он обновляет имя при смене публичного адреса.

Если не открывается URL туннеля, сначала убедитесь, что локальный curl возвращает тестовую страницу. При 502 проверьте порт и состояние приложения. Сверьте публичную ссылку с последней строкой CLI и оставьте оба терминала открытыми. Компьютер должен оставаться включённым и подключённым к интернету.

Частые вопросы

Поможет ли туннель при CGNAT у провайдера?

Да, если машина с CLI может установить исходящее соединение с ForTunnels. Входящее соединение приходит на адрес сервиса, поэтому для этого маршрута собственный публичный IPv4 на домашнем роутере не нужен.

Можно ли сделать белый IP в настройках роутера?

Адрес для подключения к интернету выделяет провайдер. Можно назначить постоянный локальный IP устройству, но это не изменит внешний адрес сети. Поддержка провайдера подскажет, можно ли заказать публичный IPv4 для вашей линии.

Источники

Запустите свой туннель

Зарегистрируйтесь, чтобы управлять маршрутами из дашборда.