天天看點

利用iptables端口轉發

A 機器

網卡1 外網 外網IP

網卡2 内網 内網IP1

B 機器

網卡1 内網 内網IP2

如果想把公網端口P1 映射為内網B機器端口P2

A機器:

vi /etc/sysctl.conf

net.ipv4.ip_forward=1

sysctl -p

iptables -t nat -A PREROUTING -d [A公網位址] -p tcp -m tcp --dport [公網端口] -j DNAT --to-destination [B内網IP]:[B内網端口]

iptables -t nat -A POSTROUTING -d [B内網IP] -p tcp -m tcp --dport [B内網端口] -j SNAT --to-source [A内網位址]

iptables -A FORWARD -o [A内網網卡] -d [B内網IP] -p tcp --dport [B内網端口] -j ACCEPT

iptables -A FORWARD -i [A内網網卡] -s [B内網IP] -p tcp –sport [B内網端口] -j ACCEPT

iptables-save >/etc/iptables

在rc.local中加入

iptables-restore </etc/iptables

實作重新開機後自動加載