NAT-T穿越

NAT-T

定义

NAT-T,NAT Traversal,NAT 穿越,用于实现私网地址到公网地址虚拟专用网络的建立。

使用场景

在这里插入图片描述
一般使用出口的两个设备建立虚拟专用网络,但是如上图所示出口部署了防火墙用来进行安全防御,用来建立虚拟专用网络的路由器部署在防火墙以内,此时虚拟专用网络的两个出口地址分别为私有地址和公有地址。如果 PC 想要访问 R2 背后的私有网络的话,就需要建立加密隧道。

问题:
1、双方公私地址能否相互指定,或者怎样找到对方?
2、私网虚拟专用网络设备对数据进行加密,将端口信息加密了,NAT 设备是否有问题?
3、私网和公网虚拟专用网络设备是怎样检测出 NAT 环境,并插入 UDP 头部?

部署

在这里插入图片描述
R1:
1、定义第一阶段策略集
crypto isakmp policy 1
encryption 3des
authentication pre-share
group 2
hash sha
2、定义预共享密钥
crypto isakmp key 0 cisco address 100.1.34.4
3、定义第二阶段转换集
crypto ipsec transform-set I2ltrans esp-3des esp-sha-hmac
4、定义感兴趣流
ip access-list extended l2lacl
permit ip 192.168.12.0 0.0.0.255 192.168.45.0 0.0.0.255
5、定义映射图
crypto map l2lmap 1 ipsec-isakmp
set peer 100.1.34.4
set transform-set l2ltrans
match address l2lacl
6、应用于接口
interface f0/0
crypto map l2lmap

R1 将加密流发送至 R2,R2 进行 NAT 翻转。

在这里插入图片描述
协商的包仍然看不到任何的私有地址
在这里插入图片描述
目的端口号变为 4500 。

R1 和 R4 协商都是使用的端口号 500,在协商中互相告知所处的环境,将端口号变为 4500,保证数据流可以正常穿过 NAT 设备。

重新思考上文提出的问题:
1、双方公私地址能否相互指定,或者怎样找到对方?
边界 NAT 翻转。

2、私网虚拟专用网络设备对数据进行加密,将端口信息加密了,NAT 设备是否有问题?
需要将端口变为 4500。

3、私网和公网虚拟专用网络设备是怎样检测出 NAT 环境,并插入 UDP 头部?
R1 会把本地 ip 和本地端口号进行哈希 hash1,R2 的出口和 R4 的入口同样计算出哈希 hash2 和 hash4,三个哈希值在交互时会相互告知。当发现 hash1 和 hash4 不相同时,得知 R1 经过翻转,为了防止 ESP 加密包无法识别被 NAT 拒绝,就在原来的数据包中加入一个新的头部。

发布了37 篇原创文章 · 获赞 61 · 访问量 1600

猜你喜欢

转载自blog.csdn.net/qq_40644809/article/details/105397612
今日推荐