NAT表的应用
filter表的核心功能:主机防护墙
nat表的核心功能:IP及端口的映射转换
1、共享上网
2、端口映射
共享上网
模式
网关B:
eth2 10.0.0.51 配上级网关 10.0.0.2
eth3 172.16.1.51 不配网关
服务器C(局域网内部主机):
eth3 172.16.1.52 网关 172.16.1.51
步骤
(1)服务器C只留一个网卡,使用ipdown命令来禁用多余的网卡:
ipdown eth0
使用route命令将服务器C默认网关设置为 172.16.1.51:
route del default gw 172.16.1.8
route add default gw 172.16.1.51
现在服务器C是不能上网的,可以ping 203.81.19.1测试。
(2)准备工作:
1)内核文件/etc/sysctl.conf里开启转发功能。
在服务器网关B 机器.上开启路由转发功能。编辑/etc/sysctl.conf 修改内容为net.ipv4.ip_ forward = 1,然后执行sysctl -p使修改生效。
2)iptables 的filter 表的FORWARD链允许转发
Chain FORWARD (policy ACCEPT)
3)不要filter防火墙功能,共享上网,因此,最好暂时停掉防火墙测试/etc/init.d/iptables
stop.|
(3)实际处理的局域网共享.上网NAT命令
linux网关B:
局域网共享的两条命令方法:
方法1:适合于有固定外网地址的:
iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -o eth0 i SNAT - to-source 10.0.0.51
(1)-s 172.16.1.0/24 办公室或IDC内网网段。
(2)-0 eth0为网关的外网卡接口。
(3)-j SNAT -to-source 10.0.0.51 是网关外网卡IP地址。
方法2:适合变化外网地址(ADSL) :
iptables -t nat -A POSTROUTING -s 172. 16.1.0/24 -j MASQUERADE #伪装。
为什么用POSTROUTING?
企业共享_上网: .
1、办公网共享上网(网关要有外网IP, 否则用路由(zebra) )。
2、IDC内网机器.上网。
(3)企业上网到底需要不需要linux网关?
解答:
1)如果有企业路由器的情况下,可以不需要上网网关。使用网关只是解决路由器无法解决的需求。(例如:上网行为,IP及端口的映射,网关杀毒)
2) IDC机房,大厦有固定外网IP的宽带,直接用网关解决上网及控制问题。
端口映射
浏览器里访问10. 0. 0. 5:9000 —》 172. 16. 1. 52:80
使用:NAT PREROUTING
iptables -t nat -A PREROUTING -d 10. 0.0.51 -p tcp --dport 9000 -j
DNAT -- to-destination 172. 16. 1. 52:80
企业应用场景:
1)把访问外网IP及端口的请求映射到内网某个服务器及端口(企业内部)。
2)硬件防火墙,把访问LVS/nginx外网VIP及80端口的请求映射到IDC负载均衡
服务器内部IP及端口上(IDC 机房的操作)。
ip映射
实现外网ip和内网ip的一对一映射
企业内部局域网生产映射案例:实现外部IP 124.42.34.112 一对一映射到内部server
10.0.0.8
网关Ip:eth0:124.42.60.109 eth1:10.0.0.254
首先在路由网关.上绑定VIP 124.42.34.112, 可以是别名或辅助IP的方式。
-A POSTROUTING -s 10.0.0.0/255.255.240.0 -d 124.42.34.112 j SNAT --to-source
10.0.0.254
-A PREROUTING -d 124.42.34.112 -j DNAT --to-destination 10.0.0.8
-A POSTROUTING -s 10.0.0.8 -o eth0 -j SNAT --to-source 124.42.34.112
映射多个外网IP上网:
问题:
1、2000人被封
2、可用65535端口资源有限
iptables -t nat -A POSTROUTING -s 10.0.1.0/255.255.240.0 -o eth0 -j SNAT --to-source 124.42.60.11-124.42.60.16
iptables -t nat -A POSTROUTING -s 172.16.1.0/255.255.255.0 -o eth0 -j SNAT --to-source 124.42.60.103-124.42.60. 106
#iptables -t nat -A POSTROUTING -s 192.168.1.0/22 -o eth0 -j SNAT --to-source
10.0.0.241-10.0.0.249
问题:
1、2000人被封
2、可用65535端口资源有限
总结
iptables常用企业案例:
1、linux 主机防火墙(表:FILTER链: INPUT) 。
2、局域网机器共享上网(表: NAT链: POSTROUTING)
iptables -t nat -A POSTROUTING -S 192.168.1.0/24 -0 eth0 d SNAT - to source 10.0.0.7
3、外部地址和端口,映射为内部地址和端口(表: NAT链: PREROUTING)
iptables -t nat -A PREROUTING -d 10.0.0.7 -P tcp --dport 80 j DNAT --to-destination
192.168.1.8:9000