一、测试拓扑图
二、路由分析
①R2下的192.168.2.0网段要与R3下的172.17.3.1网段通信,在R2和R3上要有彼此之间的路由
R2:ip route 172.17.3.0 255.255.255.0 10.0.12.1
R3:ip route 192.168.2.0 255.255.255.0 10.0.13.1
②R2的公网地址要与R3的公网地址通信,需要的路由配置如下
R2:ip route 10.0.13.3 255.255.255.255 10.0.12.1
R3:ip route 10.0.12.2 255.255.255.255 10.0.13.1
三、VPN配置
①第一阶段配置
第一阶段主要用于IKE的协商
crypto isakmp enable
crypto isakmp policy 10
encr 3des //IKE数据加密算法使用3DES,默认为DES
hash md5 //IKE数据包完整性校验的散列算法使用MD5,默认SHA-1
authentication pre-share //使用预共享密匙认证
group 24 //DH交换使用group2,默认group1
配置预共享密匙
crypto isakmp key testvpn address 10.0.13.3
②第二阶段配置
定义感兴趣流:
R2:
ip access-list extended vpn
permit ip 192.168.2.0 0.0.0.255 172.17.3.0 0.0.0.255
R3:
ip access-list extended vpn
permit ip 172.17.3.0 0.0.0.255 192.168.2.0 0.0.0.255
配置IPSEC策略:
crypto ipsec transform-set tran esp-des esp-md5-hmac
配置crypto map(用于关联之前的VPN配置):
R2:
crypto map vpn 10 ipsec-isakmp
set peer 10.0.13.3
set transform-set tran
set pfs group24
match address vpn
R3:
crypto map vpn 10 ipsec-isakmp
set peer 10.0.12.2
set transform-set tran
set pfs group24
match address vpn
接口调用crypto map:
R2:
interface Ethernet0/0
crypto map vpn
R3:
interface Ethernet0/1
crypto map vpn
四、连通性测试
R2下的PC1 ping R3下的PC2网络正常:
五、数据转发分析
PC1ping PC2:源192.168.2.1,目的172.17.3.1,由于是不同网段,数据包发送给网关处理。
R2收到数据包,查看目的地址路由
R2查找路由表,到达172.17.3.1的数据包要从自己的0/0接口转发出去,于是路由器尝试把数据包从自己的0/0接口转发出去,此时匹配到了crypto map定义的感兴趣流
因此,触发了路由器的加密行为,加密产生新的数据包:源10.0.12.2,目的10.0.13.3,导致路由器根据目的地址重新查找到达10.0.13.3的路由表
还是从自己的0/0接口转发,此次转发并没有匹配到crypto map的感兴趣流,因此能顺利转发到ISP路由器上。而ISP路由器有R3的路由,所以能把数据正确转发到R3。