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

Переслать 192.168.1.x на 95.211.x.x

Я хочу перенаправить внутренний IP-адрес на внешний.

Итак, вот что я делаю:

echo 1 > /proc/sys/net/ipv4/ip_forward

Затем использую iptables:

iptables -t nat -A PREROUTING -s 192.168.1.x  -j DNAT --to-destination 95.211.y.z
iptables -t nat -A POSTROUTING -j MASQUERADE

После этого я ожидал достичь сервера по адресу 95.211.y.z, когда пингую 192.168.1.x. Другими словами, я бы ожидал, что весь трафик, направленный на внутренний IP-адрес, будет транслироваться на этот внешний IP-адрес, но этого не происходит.

Где я не прав?

Я предполагаю, что вы имеете в виду, что хотите иметь возможность связаться с хостом в WAN с хостов в вашей LAN, используя адрес в частном IP-пространстве. Если это неверно, то этот ответ может быть бесполезен.

Вам необходимо сопоставить трафик, поступающий на интерфейс LAN, с пунктом назначения, установленным на частный адрес, который вы хотите переназначить (192.168.1.5). Вам также нужно только MASQUERADE трафик, выходящий по интерфейсу WAN.

iptables -t nat -A PREROUTING -i ethLAN -d 192.168.1.5 -j DNAT --to-destination 95.211.1.1
iptables -t nat -A POSTROUTING -o ethWAN -j MASQUERADE

Ваша главная ошибка в том, что -s должно было -d, но вы также должны указать интерфейсы. Вам также необходимо убедиться, что выбранный вами адрес частного пространства не находится в той же подсети, что и любая сеть в вашей локальной сети. Это необходимо, потому что, если вы используете адрес в той же подсети, исходный хост будет отправлять запросы ARP, а не отправлять пакет по маршруту по умолчанию. Никто не ответит на запросы ARP, и путь, который вы пытаетесь создать, не будет работать.

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

Не забудьте также разрешить ответ от целевого сервера вашему клиенту / сети.

http://www.mad-hacking.net/documentation/linux/security/iptables/nat.xml