我们知道私有IP地址是不能在公网上进行路由的,现在用户需求是位于总公司的某一个VLAN想要和分部的某一个vlan进行直接的通信。 那么此时我们就通过 site-to-site ***来解决这个问题
配置 IPsec site-to-site *** 的几个重要步骤,我们以后的实验过程就按照这几个流程来做
1.配置 IKE 策略
定义IKE 的策略包括加密算法 hash 认证方式 等
2.定义认证标识
添加认证信息 如密码等
3.配置 IPsec transform
定义***流量中的数据包是受到怎样保护的
4.定义感兴趣流量
定义哪些流量需要通过***来进行传输,通过IPSEC来保护
5.创建 crypto map
将之前定义的ACL加密数据发往对端 以及把 ipsec transform 结合在 crypto 中
6. 将crypto map 应用到接口
配置过程如下:
1.配置 IKE
r1(config)#crypto ?
dynamic-map Specify a dynamic crypto map template
ipsec Configure IPSEC policy
isakmp Configure ISAKMP policy
key Long term key operations
map Enter a crypto map
r1(config)#crypto is
r1(config)#crypto isakmp po
r1(config)#crypto isakmp policy ?
<1-10000> Priority of protection suite
r1(config)#crypto isakmp policy 10 ?
<cr>
r1(config)#crypto isakmp policy 10
定义了 ISAKMP policy 10
r1(config-isakmp)#encryption 3
r1(config-isakmp)#authentication pre-share
r1(config-isakmp)#ha
r1(config-isakmp)#hash md5
r1(config-isakmp)#group 1
定义加密方式为 3des hash的算法为md5 认证方式为预共享密钥 加密算法 group1
2 定义认证标识
r1(config)#crypto isakmp key cisco address 23.1.1.1
因为之前的认证方式为 pre-share 所以此处要配置认证密码 以及认证邻居 也就是和谁进行密码协商
3.配置 ipsec transform
r1(config)#crypto ipsec transform-set mytest esp-3des esp-md5-hmac
配置了 transform-set 为 mytest 数据封装使用 esp-3des 使用 esp-md5-hmac 做hash计算
4.定义感兴趣流量
r1(config)#ip access-list extended ***
r1(config-ext-nacl)#permit ip 172.16.2.0 0.0.0.255 172.16.10.0 0.0.0.255
定义了感兴趣流量
5. 创建 crypto map
r1(config)#crypto map mytest_map 10 ipsec-isakmp
r1(config-crypto-map)#set transform-set mytest
r1(config-crypto-map)#set peer 23.1.1.1
r1(config-crypto-map)#match address ***
创建一个名为 mytest_map 的*** 序列号为10 指定对端的IP地址为23.1.1.1 调用 ipsec transform mytest 指定 访问控制列表 *** 为感兴趣流量
6.将 crypto map 应用到接口
r1(config)#int f0/1
r1(config-if)#crypto map mytest_map
*Jan 3 07:16:26.785: %CRYPTO-6-ISAKMP_ON_OFF: ISAKMP is ON
总部的路由器配置完成,下面我们要在分公司的边界路由器上进行配置
r2(config)#crypto isakmp policy 10
r2(config-isakmp)#encryption 3
r2(config-isakmp)#authentication p
r2(config-isakmp)#ha md5
r2(config-isakmp)#group 1
r2(config)#crypto isakmp key cisco address 12.1.1.1
r2(config)#crypto ipsec transform-set mytest esp-3des esp-md5-hmac
r2(config)#ip access-list extended ***
r2(config-ext-nacl)#permit ip 172.16.10.0 0.0.0.255 172.16.2.0 0.0.0.255
r2(config)#crypto map mytest_map 10 ipsec-isakmp
r2(config-crypto-map)#set transform-set mytest
r2(config-crypto-map)#set peer 12.1.1.1
r2(config-crypto-map)#match address ***
r2(config)#int f0/0
r2(config-if)#crypto map mytest_map
*Jan 3 07:16:26.785: %CRYPTO-6-ISAKMP_ON_OFF: ISAKMP is ON
site-to-site ***就配置完成,我们先看下此时我们的实验目的能否达到
我们发现 172.16.2.2 此时并不能和 172.16.10.2 进行通信
这是为什么呢?
在多数情况下我们不希望为穿越隧道的流量进行IP地址转换,因为做了NAT之后,内网访问外网时候内网的私有IP地址都被转化成了公网的IP地址,那么这样就无法访问对方的内网,所以我们就必须为穿越***隧道的想要通信的私网之间的流量建立豁免原则,绕过NAT 也就是说两端私网之间互访时候不进行NAT地址的转换
那么我们需要修改刚才NAT的访问控制列表
将两台路由器的NAT访问控制列表修改为
r1#show ip access-lists
Extended IP access list nat
deny ip 172.16.2.0 0.0.0.255 172.16.10.0 0.0.0.255
permit ip 172.16.1.0 0.0.0.255 any
permit ip 172.16.2.0 0.0.0.255 any
permit ip 172.16.3.0 0.0.0.255 any
将对端的NAT访问控制列表进行修改
r2#show ip access-lists
Extended IP access list nat
deny ip 172.16.10.0 0.0.0.255 172.16.2.0 0.0.0.255
permit ip 172.16.10.0 0.0.0.255 any
permit ip 172.16.20.0 0.0.0.255 any
成功建立NAT流量豁免
此时两端内网连通性
172.16.2.2 成功和对方 172.16.10.2 进行通信 实验成功