Я хочу видеть мои размещенные страницы, используя мой публичный адрес изнутри и вне моей сети, но пока я могу только снаружи.

Дело в том, что я недавно сменил провайдера, и мне принесли ZTE-F660. У него есть возможности маршрутизации, но я использую Cisco E3200 (работает томат) в качестве маршрутизатора, где я управляю своей сетью. ZTE-F660 имеет ограниченные функциональные возможности, поэтому я перенаправляю все на E3200 и управляю им оттуда.

Похоже, в моем предыдущем модеме ISP была включена петля NAT, но пока ZTE-F660 не поддерживает его. Все же E3200 делает.

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

Если я запускаю iptables -n -L -v -t nat, я получаю:

 Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)   pkts bytes
 target     prot opt in     out     source               destination   

     0     0 SNAT       all  --  *      vlan2   0.0.0.0/0            0.0.0.0/0           to:192.168.0.10  
     0     0 SNAT       all  --  *      br0     192.168.2.0/24       192.168.2.0/24      to:192.168.2.1

192,168. 0.10 - это IP-адрес маршрутизатора E3200, назначенный модемом ZTE-F660, а 192.168. 2.1 - IP-адрес маршрутизатора E3200, назначенный для домашней сети.

Если я набираю http://192.168.0.10, я получаю ответ, получаемый при наборе моего публичного IP-адреса из-за пределов сети.

Я уверен, что что-то упускаю или не понимаю.

Любая помощь или понимание будет принята с благодарностью.

1 ответ1

0

Вы можете добавить петлевой NAT к маршрутизатору Cisco, чтобы при переходе к общему адресу он никогда не доходил до ZTE:

iptables -t nat -A PREROUTING  -i br0 -s 192.168.2.0/24 -d <static ip> -p tcp --dport 80 -j DNAT --to-destination 192.168.2.x

Это предварительная маршрутизация, поэтому первый шаг. Если указано, что если источник из внутренней сети идет на статический IP-адрес вашего сервера через порт 80, то сделайте IP-адрес назначения внутренним IP-адресом сервера.

Поскольку это предварительная маршрутизация, далее происходит маршрутизация - он увидит, что IP-адрес назначения является внутренней сетью, и направит пакет обратно из br0.

Альтернативный подход заключается в внутренней установке DNS-сервера. Затем вы можете иметь DNS-имя для вашего сервера, которое разрешается в публичный адрес, когда внешний, но разрешается во внутренний адрес, когда внутренний. Тогда вам не понадобится NAT.

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