Linux端口转发神器rinetd
Linux下做地址NAT有很多种方法。比如haproxy、nginx的4层代理,linux自带的iptables等都能实现。haproxy、nginx就不说了,配置相对简单;iptables配置复杂,概念也比较多DNAT、SNAT、PREROUTING、POSTROUTING等等。其实,Linux下有一个叫rinetd的工具,安装简单,配置也不复杂。
下载,解压,编译安装
cd ~
wget http://www.boutell.com/rinetd/http/rinetd.tar.gz
tar -xvf rinetd.tar.gz
cd rinetd/
sed -i 's/65536/65535/g' rinetd.c
mkdir /usr/man/
make && make install
配置文件
vim /etc/rinetd.conf
0.0.0.0 80 192.16.1.1 80
配置文件格式很简单:[Source Address] [Source Port] [Destination Address] [Destination Port]
程序进程管理
- 启动
rinetd -c /etc/rinetd.conf
- 关闭
killall rinetd
- 检查进程和监听端口
ps -ef |grep rinetd
netstat -an|grep 80
netstat -tanulp|grep rinetd
OK,大功告成~