功能需求:有5个大地址,实现NAT的时候要求建立一个地址池;要将www,ftp服务及一些端口,如:3389映射到内网。
硬件配置:服务器 eth0接外网,绑定5个大IP(118.22.66.146-150);eth1接内网,地址:116.116.116.252
下面是完整脚本及注解(红字)。
echo "1">/proc/sys/net/ipv4/ip_forward
iptables -F
iptables -t nat -F
modprobe ip_nat_ftp 要映射FTP必需加裁此模块
iptables -t nat -A PREROUTING -d 118.22.66.150 -p tcp --dport 80 -j DNAT --to 116.116.116.99:80 将www商品映射到内网
iptables -t nat -A POSTROUTING -d 116.116.116.99 -p tcp --dport 80 -j SNAT --to 118.22.66.150 为www服务流建立回路,此处要注意,因我们是建立了一个NAT地址池,所以必需加此回路,且要指到提供服务的外网地址上。若不建立地址池,此条回路指到内网IP即可!
iptables -t nat -A PREROUTING -d 118.22.66.150 -p tcp --dport 3389 -j DNAT --to 116.116.116.99:3389
iptables -t nat -A POSTROUTING -d 116.116.116.99 -p tcp --dport 3389 -j SNAT --to 118.22.66.150
为FTP的port模式开放端口映射
iptables -t nat -A PREROUTING -d 118.22.66.150 -p tcp --dport 21 -j DNAT --to 116.116.116.99:21
iptables -t nat -A POSTROUTING -d 116.116.116.99 -p tcp --dport 21 -j SNAT --to 118.22.66.150
iptables -t nat -A PREROUTING -d 118.22.66.150 -p tcp --dport 20 -j DNAT --to 116.116.116.99:20
iptables -t nat -A POSTROUTING -d 116.116.116.99 -p tcp --dport 20 -j SNAT --to 118.22.66.150
端口重定向例子
iptables -t nat -A PREROUTING -d 118.22.66.150 -p tcp --dport 3312 -j DNAT --to 116.116.116.12:3389
iptables -t nat -A POSTROUTING -d 116.116.116.12 -p tcp --dport 3389 -j SNAT --to 118.22.66.150
NAT代理上网,使用外网地址池
iptables -t nat -A POSTROUTING -j SNAT --to 118.22.66.146-118.22.66.150
另:linux(ubuntu)下一个网卡绑定多个IP的方法。
编辑 /etc/netwrok/interface 如下设定
auto eth0
iface eth0 inet static
address 118.22.66.146
netmask 255.255.255.248
gateway 221.11.55.145
auto eth0:0
iface eth0:0 inet static
address 118.22.66.147
netmask 255.255.255.248
gateway 221.11.55.145
auto eth0:1
iface eth0:1 inet static
address 118.22.66.148
netmask 255.255.255.248
gateway 221.11.55.145
auto eth0:2
iface eth0:2 inet static
address 118.22.66.149
netmask 255.255.255.248
gateway 221.11.55.145
auto eth0:3
iface eth0:3 inet static
address 118.22.66.150
netmask 255.255.255.248
gateway 221.11.55.145
阅读(944) | 评论(0) | 转发(0) |