LINUX下用iptables做端口映射.

LINUX下用 iptables做端口映射.    [ 2005-12-22 4:32:12 PM | Author: soul | 
From: Original ]  
这几天需要用到一个端口映射..
A(某包从XXXX端口发出) ---> 服务器A(转成YYYY端口发送到) ---> 服务器B
服务器B(由YYYY端口反回封包) ---> 服务器A(由XXXX端口反回封包) ---> A

这种情况下可以 利用linux的iptables实现.

具体代码如下:

echo "1" > /proc/sys/net/ipv4/ip_forward <--这命令是开启数据转发
iptables -t nat -A PREROUTING -d 服务器A地址 -p tcp --dport XXXX端口 -j 
DNAT --t
o 服务器B地址:YYYY端口
iptables -t nat -A POSTROUTING -d 服务器B地址 -p tcp --dport YYYY端口 -j 
SNAT --
to 服务器A地址

够清晰了吧? 
之前搞了一晚上..明明命令是对的...原来是数据转发没开启..-.- 直接昏迷掉.难怪老
是不生效....

三个命令直接打进去为直接在内存执行转发.重新启动系统就没了.

要开机执行转发的话
请 vi /etc/rc.d/rc.local 文件添加上命令

或者在 /etc/rc.d/ 目录下写一个 rc.iptables 的脚本.
然后在 rc.local 里面添加. 开机执行命令即可.
 

你可能感兴趣的:(LINUX下用iptables做端口映射.)