Настройка OpenWRT DDNS - невозможно получить доступ извне локальной сети

686
tonyAndr

Я пытаюсь получить доступ к моей локальной сети из Интернета. Моя настройка: ISP-модем adsl с подключением к Интернету, встроенное ПО по умолчанию (192.168.1.1) Маршрутизатор TP-Link OpenWRT Wifi за модемом ISP для общего доступа к Интернету (192.168.2.1) Мой компьютер с MAMP подключен к Wi-Fi TP-Link (динамический локальный IP, давайте скажем 192.168.1.158)

У меня есть доменное имя от провайдера FreeDNS mywebsite.mooo.com и сценарии ddns, установленные в openwrt.

config ddns 'global' option date_format '%F %R' option log_lines '250' option allow_local_ip '0'  config service 'myddns_ipv4' option username 'your_username' option interface 'wan' option ip_source 'web' option ip_url 'http://ip.changeip.com' option enabled '1' option service_name 'freedns.afraid.org' option domain 'mywebsite.mooo.com' option password 'http://sync.afraid.org/u/my_key/' option use_syslog '2' option use_logfile '1' 

Он работает нормально, когда я нахожусь в этой локальной сети - я могу получить доступ к веб-интерфейсу моего модема ISP. Проблема в том, что он не работает снаружи локальной сети.

Я пытался настроить переадресацию портов на TP-LINK, например так:

config redirect option target 'DNAT' option src 'wan' option dest 'lan' option proto 'tcp udp' option src_dport '81' option dest_port '81' option name 'local-web-81' option dest_ip '192.168.2.144' 

Этот IP 192.168.2.144 был предложен в интерфейсе LUCI, это мой настольный ПК с MAMP. Также я пытался изменить его вручную на 192.168.1.158 (тот же компьютер в основной сети) и все равно ничего не дал. Даже из локальной сети я не могу получить доступ к своему MAMP, используя доменное имя с портом «mywebsite.mooo.com:81/».

Итак, у меня есть 2 вопроса:

  1. как правильно перенаправить этот конкретный адрес «mywebsite.mooo.com» на любой настраиваемый LAN IP-порт (192.168.1.158:81 в моем случае), я не хочу, чтобы он указывал на веб-интерфейс модема
  2. как включить доступ к нему из интернета? Нужно ли мне также изменять настройки на модеме ISP (проблема в том, что у меня еще нет логина / пароля для входа в веб-интерфейс, но я их запросил и надеюсь получить в итоге)?

РЕДАКТИРОВАТЬ: сетевая конфигурация от маршрутизатора OpenWRT

config interface 'loopback' option ifname 'lo' option proto 'static' option ipaddr '127.0.0.1' option netmask '255.0.0.0'  config globals 'globals' option ula_prefix 'fda5:9a54:873f::/48'  config interface 'lan' option ifname 'eth0' option force_link '1' option type 'bridge' option proto 'static' option netmask '255.255.255.0' option ip6assign '60' option ipaddr '192.168.2.1'  config interface 'wan' option ifname 'eth1' option proto 'dhcp' option macaddr '15:AA:69:44:B2:17' option type 'bridge'  config interface 'wan6' option ifname 'eth1' option proto 'dhcpv6' option macaddr '15:AA:69:44:B2:17'  config switch option name 'switch0' option reset '1' option enable_vlan '1'  config switch_vlan option device 'switch0' option vlan '1' option ports '0 1 2 3 4' 

РЕДАКТИРОВАТЬ 2:

Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 br-wan 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 br-wan 192.168.1.1 0.0.0.0 255.255.255.255 UH 0 0 0 br-wan 192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 br-lan 
2
Вы уверены, что ADS-модем вашего провайдера действительно модем, а не маршрутизатор? Наличие 192.168.1.x и 192.168.2.x в OpenWRT будет означать, что у вас есть маршрутизатор. Вам также необходимо настроить переадресацию портов на этом маршрутизаторе. Чтобы проверить, какой шлюз по умолчанию в вашем OpenWRT? (`ip r | grep ^ default`) RalfFriedl 6 лет назад 0
Да, это маршрутизатор adsl, но, поскольку у меня нет доступа к его интерфейсу администратора, и я предпочитаю использовать openwrt (который не поддерживает adsl) - у меня есть дополнительный Wi-Fi-маршрутизатор. Извините, idk, как использовать эту команду, SSH говорит, что «ip» не найден. Я отредактировал свой вопрос и добавил сетевой cfg со второго маршрутизатора. tonyAndr 6 лет назад 0
Если ваш OpenWRT не знает команду `ip`, используйте` route -n`. Должна быть запись с `0.0.0.0`. RalfFriedl 6 лет назад 0
их несколько, см. РЕДАКТИРОВАТЬ 2 tonyAndr 6 лет назад 0
Первая строка с `0.0.0.0` в начале - это важная строка. Как видите, целью является `192.168.1.1`, частный адрес. И кто бы это ни отрицал, я был прав, предполагая, что это маршрутизатор, а не просто модем. Поэтому, если вы не можете организовать переадресацию портов на модеме / маршрутизаторе, вы не сможете принимать соединения извне. RalfFriedl 6 лет назад 0
Хорошо, нужно дождаться ответа провайдера. Я не был уверен, в чем проблема, но подозревал то же самое, что вы предложили. Спасибо вам, обновлю эту тему, как только они ответят мне (кстати, это не мое отрицательное мнение). tonyAndr 6 лет назад 0
Давайте [продолжим это обсуждение в чате] (https://chat.stackexchange.com/rooms/81930/discussion-between-tonyandr-and-ralffriedl). tonyAndr 6 лет назад 0

1 ответ на вопрос

0
tonyAndr

Как сказал RalfFriendl, мой первый модем adsl был на самом деле маршрутизатором, и мне нужно было также настроить переадресацию портов на нем.

Спасибо за помощь.