В исходной прошивке моего роутера у меня была определена переадресация портов с порта 80 на сервер в локальной сети, который я использовал вместе с внешней службой динамического DNS.
Сейчас я обновился до DD-WRT и, увы, переадресация портов работает только для запросов на внешний IP из- за пределов локальной сети. Изнутри локальной сети я могу получить доступ к серверу только по его внутреннему IP.
Как я могу сделать так, чтобы внешний IP-адрес (и, следовательно, имя домена, подключенное к динамическому внешнему IP-адресу) был правильно доступен и изнутри локальной сети?
Я предпочитаю узнать, как этого добиться с помощью стандартных определений DD-WRT, но использование, например, iptables не исключено.
В духе ответа UrEl: самонастраивающийся
iptables
скрипт, который можно просто скопировать без дополнительной адаптации, можно найти на форуме DD-WRT :Как отметил Джаретт, это должно использоваться как сценарий брандмауэра, а не как сценарий запуска.
источник
Попробуйте отключить «Фильтровать перенаправление WAN NAT» на вкладке «Безопасность»> «Брандмауэр». Из описания справки:
источник
Похоже, ваша настоящая проблема в том, что вам нужно два просмотра записи DNS A. Внешне ваш динамический днс указывает на публичный IP-адрес вашей сети, который перенаправляет порт 80 на локальный хост. Все, что вам нужно сделать, это добавить запись в dnsmasq с записью A, указывающей такое же полное доменное имя на ip локального хоста для ваших локальных хостов. Вы можете сделать это, добавив следующее на странице «Сервисы» / «Дополнительные параметры dnsmasq»:
просто замените xx на локальный ip, а имя домена на ваше доменное имя. Не забудьте добавить конечную точку, иначе она добавит к вам имя вашего локального домена.
источник