【思科VPN】IPsec VPN基本部署

实验拓扑:

 

实验目的:如图,R1,R3分别为甲公司下2个子公司的出口路由器,R2为运营商路由器(公网)。通过部署IPsec VPN使子公司A和子公司B下的内网可以互通。

R2作为公网上的路由器,不可能获知公司内网的IP地址,这时候需要部署一条“隧道”,保证子公司之间的私网可以互相通信,不仅可以加快传输效率,还可以保证网络的安全性,这就是VPN部署的目的。

 

实验步骤:

  1. 进行基本配置,通过环回口来模拟内网地址。

R1

R1#conf t
R1(config)#int f0/0
R1(config-if)#ip add 12.0.0.1 255.255.255.0
R1(config-if)#no sh


R1(config-if)#int l0
R1(config-if)#ip add 192.168.1.1 255.255.255.0
R1(config-if)#no sh

R1(config-if)#ex


R1(config)#ip route 0.0.0.0 0.0.0.0 12.0.0.2

 

R2

R2#conf t
R2(config)#int f0/1
R2(config-if)#ip add 12.0.0.2 255.255.255.0
R2(config-if)#no sh


R2(config-if)#int f0/0
R2(config-if)#ip add 23.0.0.2 255.255.255.0
R2(config-if)#no sh

 

R3

R3#conf t
R3(config)#int f0/1
R3(config-if)#ip add 23.0.0.3 255.255.255.0
R3(config-if)#no sh

R3(config-if)#int l0
R3(config-if)#ip add 192.168.3.1 255.255.255.0
R3(config-if)#no sh


R3(config-if)#ex
R3(config)#ip route 0.0.0.0 0.0.0.0 23.0.0.2

 

2.进行IPsec 配置

R1

首先定义一条ACL,用于匹配VPN路由

R1(config)#access-list 101 permit ip 192.168.1.0 0.0.0.255 192.168.3.0 0.0.0.255  

  
R1(config)#crypto isakmp policy                         //配置安全策略,数字表示优先级


R1(config-isakmp)# encr 3des                            //告诉对端使用的对称加密算法          

                                  
R1(config-isakmp)# hash md5                           //hash算法

                                   
R1(config-isakmp)# authentication pre-share              //认证算法

                    
R1(config-isakmp)# group 2                                   //DH组                 

R1(config-isakmp)# lifetime 60                                //生存周期

 

R1(config-isakmp)#crypto isakmp key benet address 23.0.0.3        //预共享密码设置为benet,地址为

                                                                                                     对端R3路由器地址        


 

 

R1(config)#crypto ipsec transform-set bset esp-3des esp-sha-hmac                   //配置传输集beset,设

                                                                                                                        置对数据的加密方式

 

R1(cfg-crypto-trans)#crypto map bmap 10 ipsec-isakmp            //定义crypto map调用感兴趣流量并且设

                                                                                              置传输集。

R1(config-crypto-map)# set peer 23.0.0.3                             //指定对端IP


R1(config-crypto-map)# set transform-set bset                   //调用传输集beset 


R1(config-crypto-map)# match address 101                    //调用ACL列表101 

 

如上,R1的基本配置已经完成,接着需要将配置应用在外网口上。

 

R1(config)#int f0/0
R1(config-if)#duplex auto
R1(config-if)#speed auto
R1(config-if)#crypto map bmap                      //应用刚才设置的map bmap

 


 

 

 

R3上也做一样的配置,只是要将对端的IP设置为R1的外网口

 

R3(config)#access-list 101 permit ip 192.168.3.0 0.0.0.255 192.168.1.0 0.0.0.255  

    
R3(config)#crypto isakmp policy 1


R3(config-isakmp)# encr 3des


R3(config-isakmp)# hash md5

R3(config-isakmp)# authentication pre-share


R3(config-isakmp)# group 2

 

R3(config-isakmp)# lifetime 60                               


R3(config-isakmp)#crypto isakmp key benet address 12.0.0.1

R3(config)#crypto ipsec transform-set bset esp-3des esp-sha-hmac

R3(cfg-crypto-trans)#crypto map bmap 10 ipsec-isakmp

R3(config-crypto-map)# set peer 12.0.0.1


R3(config-crypto-map)# set transform-set bset


R3(config-crypto-map)# match address 101
R3(config-crypto-map)#ex


R3(config)#int f0/1
R3(config-if)#duplex auto
R3(config-if)#speed auto
R3(config-if)#crypto map

bmap

 

IPsec VPN已经部署完毕,下面可以做测试了

 

R1#ping 192.168.3.1 source 192.168.1.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.3.1, timeout is 2 seconds:
Packet sent with a source address of 192.168.1.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 36/52/68 ms

已经通了。

 

有人说,这样就可以结束了吧?

但是忽略了一个问题,公司内网的员工部署了这个VPN,会与原先部署的NAT冲突。

原先的NAT应该是这样部署的

R1(config)#access-list 1 permit ip 192.168.1.0 0.0.0.255

 

R1(config)#int l0
R1(config-if)#ip nat inside

R1(config-if)#int f0/0
R1(config-if)#ip nat outside
R1(config-if)#ex
R1(config)#ip nat inside source list 1 int f0/0 overload

这样一来,公司内网IP在出口路由器上会被转化成外网口地址12.0.0.1/24 ,这样就与IPsec VPN的设置(ACL101)冲突了。

 

R1#p 192.168.3.1 source 192.168.1.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.3.1, timeout is 2 seconds:
Packet sent with a source address of 192.168.1.1
UUUUU
Success rate is 0 percent (0/5)

不可达。

 

 

这时候需要对access-list 1做修改:

 

R1(config)#access-list 102 deny ip 192.168.1.0 0.0.0.255 192.168.3.0 0.0.0.255        
R1(config)#access-list 102 permit ip 192.168.1.0 0.0.0.255 any 

R1(config)#ip nat inside source list 102 int f0/0 overload

 

这样,子公司A内网192.168.1.0/24网段访问子公司B192.168.3.0/24的网段就不会被NAT了

 

R1#p 12.0.0.2 source 192.168.1.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 12.0.0.2, timeout is 2 seconds:
Packet sent with a source address of 192.168.1.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 36/47/60 ms

 

R1#ping 192.168.3.1 source 192.168.1.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.3.1, timeout is 2 seconds:
Packet sent with a source address of 192.168.1.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 36/52/68 ms

没问题了,实验结束

 

 

 

 

本文出自 “NE之路” 博客,请务必保留此出处http://332162926.blog.51cto.com/8831013/1571371

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。