Назад | Перейти на главную страницу

Не удается подключиться к серверу Flask через общедоступный IP, только частный IP

У меня есть простой сервер Flask, который выводит запросы на терминал. Запросы, которые я отправляю через публичный IP-адрес устройства, не регистрируются.

Сервер фляги запускается правильно на всех интерфейсах с .run(host="0.0.0.0", port=5000, debug=False). В целях тестирования мой маршрутизатор настроен с использованием флэш-сервера в DMZ.

Мой основной метод проверки возможности подключения был с помощью curl. Вот мои результаты:

С главной машины:

Попытки получить доступ к последним двум хостам из удаленной (мобильной) сети также терпят неудачу.

Сервер представляет собой простую машину с Linux, на которой не работают какие-либо известные мне брандмауэры.

Просматривая журналы маршрутизатора, я никогда не вижу попыток подключения к общедоступному IP-адресу на порту 5000. Это кажется странным.

Это говорит мне, что сервер правильно привязан ко всем портам, но локальные IP-адреса неправильно маршрутизируются с общедоступного IP-адреса. Что мне нужно сделать, чтобы это исправить?

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

Изменить 2: вот что-то еще, что кажется странным. Если я бегу с .run(host="0.0.0.0", port=5000, debug=False, ssl_context=('fullchain.pem', 'privkey.pem')) (передавая ему правильные учетные данные), я даже не могу подключиться к нему локально: я просто получаю