天天看點

linux收到對方端口的資料再轉發出去,linux下使用rinetd來實作端口轉發

windows下的端口轉發一般用的是自帶的nat和porttunnel、portmap

linux下端口轉發映射的程式叫rinetd,啟動方法rinetd -c /etc/rinetd.conf  ,pkill rinetd  關閉程序

把1.1.1.1的11端口映射到2.2.2.2的3389端口,配置檔案如下

[[email protected] iso]# cat   /etc/rinetd.conf

1.1.1.1 11 2.2.2.1 3389

1.1.1.1 12 2.2.2.2 3389

1.1.1.1 13 2.2.2.3 22

1.1.1.1 14 2.2.2.4 80

allow *.*.*.*

logfile /var/log/rinetd.log

啟動程式

pkill rinetd  ##關閉程序

rinetd -c /etc/rinetd.conf  ##啟動轉發

把這條指令加到/etc/rc.local裡面就可以開機自動運作

檢視狀态

netstat -antup

如果想用iptables實作的話,可以用一下指令。

WAN_IP=”202.106.0.20″

iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 2533 -j DNAT –to 192.168.1.88:80

iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.88 -p tcp –sport 80 -j SNAT –to $WAN_IP:2533

第一句定義一個變量

第二句實作對端口為2533的請求轉發到192.168.1.88的80端口

第三句修改從etho輸出的源位址為192.168.1.88,端口為80的資料包的源位址為本機的2533端口,以便對方收到

資料包之後能正确傳回。

以上所述就是本文的全部内容了,希望大家能夠喜歡。