CISCO 在NAT下做IPsec VPN常见的问题及配置实例详解

网友投稿 1039 2022-10-29


CISCO 在NAT下做IPsec VPN常见的问题及配置实例详解

前言:

×××作为一项成熟的技术,广泛应用于组织总部和分支机构之间的组网互联,其利用组织已有的互联网出口,虚拟出一条“专线”,将组织的分支机构和总部连接起来,组成一个大的局域网。IPSEC引进了完整的安全机制,包括加密、认证和数据防篡改功能。

IPsec的协商分为两个阶段:

第一阶段:验证对方,协商出IKE SA ,保护第二阶段IPSEC Sa协商过程

第二阶段:保护具体的数据流

拓扑如下:

(测试结果用红色字体展现)

在这种情况下,不做NAT的时候,×××可以正常使用,两边的私网是不能访问互联网的。

那么在做了NAT之后,私网可以访问互联网了,但是 ××× 却不能通信了。那么要怎么解决呢?

×××的配置这里就不再做过多的说明了,之前写的博客里面有做详细的配置讲解。要看的小伙伴们可以查看 ×××的联通性

CQ#ping 2.2.2.2 so lo 0

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 2.2.2.2, timeout is 2 seconds:

Packet sent with a source address of 1.1.1.1

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 36/61/80 ms

CQ#

是可以通的哦!

测试与互联网的连通性

CQ#ping 202.1.1.1

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 202.1.1.1, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 16/24/44 ms

CQ#ping 202.1.1.1 so lo 0

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 202.1.1.1, timeout is 2 seconds:

Packet sent with a source address of 1.1.1.1

.....

Success rate is 0 percent (0/5)

CQ#

可以看出,私网是不能ping通互联网的哈!

做NAT的配置

CQ(config)#ip access-list extended pat

CQ(config-ext-nacl)#permit ip 1.1.1.0 0.0.0.255 any   //允许网段1.1.1.0访问所有的网段。因为互联网上的地址很多,不可能一个个的配置。

CQ(config)#ip nat inside source list pat interface f0/0 overload  //做基于接口的pat

CQ(config)#int f0/0

CQ(config-if)#ip nat outside

CQ(config-if)#int lo 0

CQ(config-if)#ip nat inside

//应用到接口,那么NAT已经做完了,下面来测试一下结果

CQ#ping 202.1.1.1 so lo 0

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 202.1.1.1, timeout is 2 seconds:

Packet sent with a source address of 1.1.1.1

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 8/13/24 ms

CQ#

测试×××

CQ#ping 2.2.2.2 so lo 0

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 2.2.2.2, timeout is 2 seconds:

Packet sent with a source address of 1.1.1.1

UUUUU

Success rate is 0 percent (0/5)

CQ#

可以看得出,显示的是不可达。为什么会这样呢?

我们来查看一下ACL

CQ#sh ip access-lists

Extended IP access list pat

10 permit ip 1.1.1.0 0.0.0.255 any (8 matches)

Extended IP access list vpn

10 permit ip 1.1.1.0 0.0.0.255 2.2.2.0 0.0.0.255 (20 matches)

CQ#

有两个ACL,一个是×××的,一个是NAT的

其实,cisco路由器上的ACL是有优先级的,那么在cisco中,认为NAT的规则要优先于map的规则。

那么在这种情况下就会出现一个很有趣的现象

一开始 1.1.1.0 的网段进入路由器,匹配的显示名为pat的策略,而这条策略是做NAT转换的,转换了之后,互联网上不存在私网 2.2.2.0 的地址,所以就会显示不可达。实际上,因为策略 pat 已经匹配了这股流量,那么 vpn 就不会再匹配了。

那要怎么解决呢?

其实我们可以根据他的规则做出相应的改变,我们可以在规则 pat 剔除去往 2.2.2.0 的流量(×××流量),从而让 vpn 的策略匹配这股流量。

配置如下:

CQ(config)#ip access-list extended pat

CQ(config-ext-nacl)#5 deny ip 1.1.1.0 0.0.0.255 2.2.2.0 0.0.0.255  //定义的序号为5 序号要在 10 permit ip 1.1.1.0 0.0.0.255 any 的前面,因为acl是从上往下匹配的

这样的话,在pat这条策略里面,就不会去匹配vpn的流量了,转而让vpn的策略匹配

测试结果:

CQ#ping 2.2.2.2 so lo 0

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 2.2.2.2, timeout is 2 seconds:

Packet sent with a source address of 1.1.1.1

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 16/32/44 ms

CQ#ping 202.1.1.1 so lo 0

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 202.1.1.1, timeout is 2 seconds:

Packet sent with a source address of 1.1.1.1

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 4/24/44 ms

CQ#

这样问题就解决了。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Inter地址及地址解析
下一篇:webservice接口测试(webservice接口测试用例范文)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~