Iptables

将本机80端口的请求转发到8080端口
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
如果需要本机也可以访问,则需要配置OUTPUT链:
iptables -t nat -A OUTPUT -p tcp -d 127.0.0.1 --dport 80 -j REDIRECT --to-ports 8080
两机之间的端口转发
将本机的81端口的请求全部转发到192.168.1.1:80
首先要启用ipv4的转发功能:
echo 1 > /proc/sys/net/ipv4/ip_forward
或者是修改/etc/sysctl.conf (via)以便重启后也会启用转发,然后设定iptables(via):
iptables -t nat -A PREROUTING -p tcp --dport 81 -j DNAT --to 192.168.1.1:80
iptables -t nat -A POSTROUTING -j MASQUERADE
如果开启了防火墙功能,注意要将80和81两个端口都打开。
10.23.3.129上设置对10.21.1.91 443端口的转发脚本:
#!/bin/sh
/sbin/iptables -t nat -F
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to 10.21.1.91:443
/sbin/iptables -t nat -A POSTROUTING -j MASQUERADE
/sbin/iptables -t nat -L -n