iptables可以对流量进行管控。所以也可以当做一个路由器来使用。
#!/bin/bash
###应用环境,外网访问内网的服务器,外网访问NAT服务器,nat服务器通过iptables转发请求包
####通过PREROUTING链将目标地址转为服务器地址,通过POSTROUTING将源地址转为内网地址,
####使其可以在内网中进行流通。
net1="ens33"
#内网网卡
net2="ens37"
#外网网卡
addr1="10.9.27.199"
#外网地址
addr2="192.168.98.128"
#内网地址
port="8888"
#外网访问端口
server="192.168.98.129"
#内网后端服务器地址
port_server="80"
#内网后端服务器端口
echo "1" > /proc/sys/net/ipv4/ip_forward
systemctl stop firewalld
setenforce 0
iptables -t nat -A PREROUTING -i $net2 -d $addr1 -p tcp --dport $port -j DNAT --to $server:$port_server
iptables -t nat -A POSTROUTING -o $net1 -d $server -p tcp --dport $port_server -j SNAT --to $addr2