1

Я только что получил статический IP-адрес от своего провайдера и пытаюсь настроить небольшой экспериментальный сервер на своем домашнем ноутбуке, на котором установлена Ubuntu.

Я настроил Ubuntu для использования внутреннего статического IP-адреса 192.168.1.11 .

Ubuntu статический ip config

Я перенаправил номер порта с моего маршрутизатора, чтобы перенаправить все запросы на порт 80 на 192.168.1.11 .

Ниже приведена конфигурация моего маршрутизатора (D-Link DSL-2750U):

Конфигурация маршрутизатора

Я запустил небольшой веб-сервер Java на порту K на моем Ubuntu box. Но я не могу получить доступ к веб-серверу из внешней сети, используя мой статический IP-адрес, предоставленный провайдером как 117.218.XXX.XXX а не 192.168.1.11 . Я что-то пропустил?


ОБНОВЛЕНИЕ: Согласно предложению от JakeGould я обновил удаленный IP-адрес маршрутизатора до общедоступного IP-адреса 117.218.XXX.XXX .

После выполнения вышеупомянутой конфигурации я мог фактически посетить мой сервер из браузера. Но браузер открывал страницу конфигурации роутера, а не перенаправлял запрос в окно Ubuntu. Поэтому теперь я изменил порт по умолчанию для контроля доступа пользователей для маршрутизатора D-Link.

Теперь время запроса истекло. Ниже приведен вывод curl

curl http://117.218.XXX.XXX
curl: (7) couldn't connect to host

Поэтому я попытался отключить брандмауэр на коробке Ubuntu с помощью "sudo ufw disable" но проблема не исчезла .

Я не уверен, что изменения конфигурации требуются на Dlink, ниже страница конфигурации брандмауэра Dlink

Может кто-нибудь, пожалуйста, помогите мне с этим.

2 ответа2

1

192.168.1.11 - это частный статический IP-адрес вашей локальной сети (ЛВС), а не ваш публичный (внешний) IP-адрес.

Вы можете найти свой общедоступный IP-адрес, выполнив этот поиск Google.

Обновление за комментарий:

Существует множество возможных объяснений невозможности подключения через внешний IP-адрес:

  1. Брандмауэр на сервере Ubuntu
  2. Брандмауэр на роутере D-Link
  3. Интернет-провайдер заблокировал исходящий порт 80
  4. Конфигурация переадресации портов не была правильно настроена в маршрутизаторе D-Link

Возможные решения

1. Брандмауэр на сервере Ubuntu

Отключите встроенный брандмауэр Ubuntu, ufw:

sudo ufw disable

Если кажется, что проблема ufw может препятствовать успешной работе исходящих соединений. Исходящие правила можно найти с помощью этой команды:

iptables -nvL OUTPUT

2. Брандмауэр на роутере D-Link

Вам нужно будет обратиться к документации вашего маршрутизатора, чтобы увидеть, как это может работать.

3. Интернет-провайдер заблокировал исходящий порт 80

Свяжитесь с вашим интернет-провайдером, чтобы узнать, происходит ли это.

4. Конфигурация переадресации портов не была правильно настроена в маршрутизаторе D-Link

Руководство, соответствующее вашему маршрутизатору, может помочь вам настроить переадресацию портов: http://portforward.com/english/routers/port_forwarding/Dlink/DSL-2750U/Apache.htm

1

Согласно скриншотам, которые вы показываете, переадресация портов странным образом настроена на вашем WAN-соединении следующим образом:

  • Начало / конец внешнего порта: 80/80
  • Протокол: TCP
  • Начало / конец внутреннего порта: 80/80
  • IP-адрес сервера: 192.168.1.11
  • Правило расписания: всегда
  • Удаленный IP: 192.168.1.11

То, как вы используете эту настройку, в основном говорит маршрутизатору просто направлять весь трафик с 192.168.1.11 на порт 80 на 192.168.1.11 на порт 80 что не имеет смысла. «Удаленный IP:» должен быть установлен на ваш внешний IP-адрес 117.218.XXX.XXX вот так:

  • Удаленный IP: 117.218.XXX.XXX

С этим на месте это говорит маршрутизатору направить весь трафик от 117.218.XXX.XXX на порт 80 - 192.168.1.11 на порт 80.

Тем не менее, если сам маршрутизатор использует порт 80 для страницы управления D-Link, то вам нужно посмотреть, сможете ли вы изменить порт, используемый страницей управления. В противном случае все, что вы делаете с этим набором правил, - это раскрытие вашей страницы управления D-Link любому / всему, что может достичь этого уровня 117.218.XXX.XXX . Что касается того, как это сделать? У каждого маршрутизатора есть разные способы справиться с этим, и некоторые маршрутизаторы просто не предоставляют конечным пользователям такой возможности, поскольку провайдеры обычно не хотят, чтобы конечные пользователи легко запускали веб-серверы из своего интернет-соединения, предоставляемого провайдером.

Если вы не можете изменить порт страницы управления D-Link на другой, отличный от 80 порта, лучше всего просто изменить порт вашего веб-сервера на другой, например, 8000 или 8080 . Конечно, теперь вам нужно настроить правила переадресации портов, чтобы они соответствовали новому порту, но это может быть лучшим / самым простым решением этой проблемы.

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