先看一下实验环境:
1、R1、R2分别模拟两个分支机构的对外设备
2、ASA5、ASA6上,Gi 0/0都是outside端,Gi 0/1都是inside端
3、右边ASA5上连接R4的Gi 0/2接口是DMZ端,在本次实验中暂时没有用到
4、用一个R3设备来模拟传输骨干网
于是,我添加了R7、R8分别作为PC
在R7、R8、R3上配置SSH功能及SSH Logging event,这样就可以查看源地址有没有被转换了。
R1上有一个Loopback 0地址:10.112.101.1/32
R2上有一个Loopback 0地址:10.118.101.1/32
这俩Loopback 0地址要作为Tunnel Source建立DMVPN
R1的Loopback 0地址,经过ASA5以后,被转换为10.22.101.1,再经过ASA6被转换为10.119.1.1
R2的Loopback 0地址,经过ASA6以后,被转换为10.22.102.1,再经过ASA5被转换为10.113.1.1
于是
R1的Tunnel Source是自己的真实地址10.112.101.1
R1的Tunnel Destination是经两次转换后的10.113.1.1
R2的Tunnel Source是自己的真实地址10.118.101.1
R2的Tunnel Destination是经两次转换后的10.119.1.1
认为静态NAT一定就是会双向转换,所以犯了致命的错误!
先看看最开始的配置吧:
ASA5上
从outside方向进来的源地址10.112.101.1,转换后成为10.22.101.1
从inside方向进来的源地址10.22.102.1(该地址由R8的10.118.101.1转换而来),转换到Outside方向的接口上成为10.113.1.1
从inside方向,10.3.3.3(在R3上),转换为10.113.1.3
ASA6上
从outside方向进来的源地址10.118.101.1,转换后成为10.22.102.1
从inside方向进来的源地址,10.22.101.1(该地址由R7的10.112.101.1转换来),再到outside方向的接口上成为10.119.1.1
从inside方向,10.3.3.3(R3上),转换为10.119.1.3
为什么呢?这是因为新版Cisco ASA处理NAT的时候,把源和目标地址转换分开了来处理的。
于是,这个NAT命令应该这么写:
R2作为Hub,R1作为Spoke
于是,DMVPN成功建立了哦!!!
不管那么多了,我要去好好吃个午饭