linux内核NAT配置介绍
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
linux内核NAT配置介绍
1.开启ipv4转发
方法1:把etc/sysctl.conf中的net.ipv4.ip.forward=0后面的0改为1(长期有效)
方法2:输入:echo1>/proc/sys/net/ipv4/ip_forward(短期有效,重启后需重新配置)
2.配置nat表(假设要在接口eth0上开启SNAT功能,eth0的ip 为192.168.1.34)
2.1匹配源ip
iptables-t nat-A POSTROUTING-s192.168.10.54-o eth0-j SNAT--to192.168.1.34
功能:匹配eth0接口上源ip为192.168.10.54的报文,对其进行nat映射,将源ip替换为192.168.1.34
2.2匹配源网段
iptables-t nat-A POSTROUTING-s192.168.10.54/24-o eth0-j SNAT--to192.168.1.34功能:匹配eth0接口上源网段192.168.10.54/24的报文,对其进行nat映射,将源ip替换为192.168.1.34
2.3匹配源端口
iptables-t nat-A POSTROUTING-p udp--dport53-o eth0-j SNAT--to192.168.1.34
功能:匹配eth0接口上目的端口为53的udp报文,对其进行nat映射,将源ip替换为192.168.1.34
iptables-t nat-A POSTROUTING-p tcp--dport53-o eth0-j SNAT--to192.168.1.34
功能:匹配eth0接口上目的端口为53的tcp报文,对其进行nat 映射,将源ip替换为192.168.1.34
2.4匹配源端口+源ip
iptables-t nat-A POSTROUTING-s192.168.10.54-p udp--
dport53-o eth0-j SNAT--to 192.168.1.34
功能:匹配eth0接口上目的端口为53、源ip为192.168.10.54的udp报文,对其进行nat 映射,将源ip替换为192.168.1.34 iptables-t nat-A POSTROUTING-s192.168.10.54-p tcp--dport53-o eth0-j SNAT--to 192.168.1.34
功能:匹配eth0接口上目的端口为53、源ip为192.168.10.54的tcp报文,对其进行nat 映射,将源ip替换为192.168.1.34
2.5匹配DNAT
iptables-t nat-A PREROUTING-i eth1-d!192.168.100.1-p udp--dport!53-j DNAT--to 192.168.100.1
功能:将目的ip不是192.168.100.1且目的端口不是53的报文做NAT,目的ip替换为192.168.100.1
3.查看nat规则
iptables-t nat-L
4.删除nat规则
4.1删除一条nat规则
iptables-t nat-D POSTROUTING-s192.168.1.54-o eth0-j SNAT--to192.168.1.34
4.2删除所有nat规则
iptables-t nat-F
5.NAT表说明
nat表的三个链:
1.PREROUTING:定义进行DNAT的规则,因为路由器进行路由时只检查数据包的目的ip 地址,所以为了使数据包得以正确路由,我们必须在路由之前就进行DNAT;
2.POSTROUTING:定义进行SNAT的规则,系统在决定了数据包的路由以后在执行该链中的规则。
3.OUTPUT:定义对本地产生的数据包的DNAT规则。