LINUX.ORG.RU
ФорумAdmin

iptables, nat


0

0

Надо с внешнего адреса шлюза прокинуть в локалку порт. Вроде правильно делаю - не работает :(

-A PREROUTING -t nat -p tcp --dport 80 -j DNAT --to-destination $lan_ip

-A FORWARD -d $lan_ip -j ACCEPT

-A POSTROUTING -t nat -s $lan_ip -j SNAT --to-source $wan_ip

пропускать существующие соединения тоже есть...

последнее правило не нужно. плюс убедись, что ip_forwarding включен.

cat /proc/sys/net/ipv4/ip_forward

должен отдавать еденицу. если нет - сделай

sysctl -w net.ipv4.ip_forward=1

sidor ★★
()

-A PREROUTING -t nat -p tcp --dport 80 -j DNAT --to-destination $lan_ip:80
-A POSTROUTING -t nat -s $lan_ip --sport 80 -j SNAT --to-source $wan_ip:80

PS Хоть рекартинг портов обычно не происходит, но лучше перестраховаться.
PPS проверьте проверьте уепочки INPUT и OUTPUT

tux2002
()
Ответ на: комментарий от sidor

> последнее правило не нужно

Нужно. Там NAT наружу с кучи адресов и персонально по каждому адресу.

paramonov
() автор топика

> пропускать существующие соединения тоже есть...

точно?

покажи как
iptables -L -v -n
iptables t nat -L -v -n

chocholl ★★
()

Блин, вот я дерево... Нужно было FORWARD, DNAT на внутренний и SNAT на адрес самого шлюза. Остальное iptables в обратную сторону сам "разворачивает".

paramonov
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.