Posts Tagged"NAT"

20050422

利用iptables做端口映射

Author:  WinkCategories:  Linux, NetworksNo Comments »
Tags:  , ,

最近想在家调试公司一台机器上的JSP文件并预览到效果。因为那台机器IP为192.168.1.15,JSP端口为8008,公司的Linux服务器内网eth1的IP为192.168.1.1,服务器对外用eth0链接ADSL,即ppp0,并且已经在服务器上做了DDNS,所以需要在服务器上做端口映射。

#iptables -t nat -A PREROUTING -p tcp -m tcp --dport 8008 -j DNAT --to-destination 192.168.1.15:8008

还有一种是利用ppp0,不知道什么区别,待研究

#iptables -t nat -A PREROUTING -i $PPPIF -p tcp --dport 8008 -j DNAT --to-destination 192.168.1.15:8008

其中,$PPPIF代表ppp0,是ADSL拨号成功后的设备名。

上面即将tcp8008端口的包直接转发到IP为192.168.1.15这台电脑的相同端口上。

#iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -d 192.168.1.15 -p tcp -m tcp --dport 881 -j SNAT --to-source 192.168.1.1

返回时数据源来自同一子网,所以将其源地址更改为192.168.1.1,从eth0发出,并在连接跟踪表中查出数据源从ppp0进来的,又由ppp0将此数据发出。

映射udp端口与tcp类似。

之后保存:

#/etc/rc.d/init.d/iptables save
#/etc/rc.d/init.d/iptables restart

同样适合为子网客户机上eMule之类的做端口映射以令其成为HighID。

Back to Page Top