2

Итак, я немного новичок в сети и бэк-энде, и сейчас изучаю Flask.

Я только что включил простой маленький HTTP-сервер на своем ноутбуке («Hello World!") и работаю на порту 5000. Если я перехожу к 127.0.0.1:5000 в своем браузере, я правильно вижу сообщение.

И если (на другом компьютере в доме) я перехожу на 192.168.1.40:5000, частный IP-адрес компьютера, который используется для сервера, то я тоже могу видеть его оттуда.

Но что, если я хочу, чтобы друг мог получить к нему доступ из-за пределов локальной сети, издалека? Как они находят это?

Я спросил Google, каков был мой IP (IPv4), и попытался использовать его, но, как я и ожидал, он не работал, поскольку (насколько я понимаю) это просто разрешает сам маршрутизатор, а не конкретный компьютер, на котором работает сервер. Что я здесь не так делаю?

2 ответа2

5

Если вы используете домашний Интернет и за маршрутизатором, вам необходимо настроить простую переадресацию портов на локальный ПК. Откройте конфигурацию вашего маршрутизатора и укажите, что порт 5000 должен вести к вашему частному адресу (192.168.1.40).

Также рекомендуется переключать любой частный адрес с динамического на статический для машин, на которых размещаются сервисы, чтобы их адрес не менялся и, таким образом, не нарушал работу порта. Это можно сделать, просто указав адрес компьютера в конфигурации сети, который находится за пределами пула динамических адресов маршрутизатора (можно изменить), а затем укажите адрес маршрутизатора как шлюза и DNS-сервера.

Пример пространства пула: 192.168.1.100 - 192.168.1.200
Пример маршрутизатора IP: 192.168.1.1
Пример личного статического IP-адреса веб-сервера: 192.168.1.2

Затем кто-то другой должен перейти на ваш общедоступный IP-адрес (вы можете проверить его с помощью службы, например http://www.whatismyip.com/ или аналогичной).

Ваш публичный IP-адрес обычно динамический. Это означает, что это может меняться время от времени. Вы можете либо купить статический IP-адрес (не все провайдеры могут его предложить), либо использовать специальные службы DNS для таких целей (например, http://www.no-ip.org/ , http://dyn.com и т. П.) ,

0

См. Http://www.howtogeek.com/117371/how-to-find-your-computers-private-public-ip-addresses/ для хорошего объяснения ваших публичных и частных IP-адресов. Кроме того, вам понадобится правило брандмауэра для включения списка IP-адресов или включения всех IP-адресов для отправки входящих сообщений на ваш компьютер; Вы можете ограничить трафик на порт [например, 80 для HTTP] или массив портов. Вы можете удалить это правило брандмауэра, когда закончите.

Кроме того, ваш маршрутизатор также может быть настроен для разрешения входящего трафика.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .