内网网段做源地址NAT转换后不生效,网络不通

发布时间:  2015-01-02 浏览次数:  349 下载次数:  0
问题描述
内网网段间做nat转换,对172.16.64.0网段做源地址NAT转换后不生效

告警信息
处理过程
怀疑感兴趣流没有匹配到nat
查看配置:
acl number 2001
rule 5 permit source 172.16.64.0   0.0.16.255
rule 10 deny
#
nat address-group 1 10.1.1.251 10.1.1.251
#
interface Vlanif4
ip address 10.1.1.1 255.255.255.0
nat outbound 2001 address-group 1
#
ip pool 1528
gateway-list 172.16.68.1
network 172.16.68.0 mask 255.255.255.240    //网络中用的172.16.68.0的网段做的测试
dns-list 10.1.1.13
经过反掩码计算机计算,发现数据流没有匹配到nat:

把通配符修改为:0.0.15.255之后就能匹配到172.16.68.0的网段了:

修改了通配符以后,数据匹配到nat,成功
根因
通配符配置错误,导致数据流没有匹配到nat
解决方案
把acl 2001中的rule 5 的通配符改为:
acl number 2001
rule 5 permit source 172.16.64.0   0.0.15.255
建议与总结
子网掩码:是一种用来指明一个IP地址的哪些位标识的是主机所在的子网以及哪些位标识的是主机的未掩码。“1”表示匹配;“0”表示不关心
反掩码(也称通配符)则恰好与子网掩码相反,“1”表示不关心,即任意匹配;“0”表示全匹配
比如这个地方的ACl  2001中的通配符就可以很简单的计算出来
网段:172.16.64.0    0.0.16.255
网段172.16.64.0表示为:10101100.00010000.01000000.00000000
通配符0.0.16.255表示为:00000000.0000000.00010000.11111111
把两个做匹配,那么172.16是全匹配,最后一位全不匹配,就剩下第三位匹配了
01000000  (64)
00010000  (反掩码) 第四位为1,表示不关心,就有两种情况,匹配为1或者为0
___________________

01000000   (64)
01010000   (80)
同理可以计算出通配符为0.0.15.255时匹配的网段

END