【转】IPSec 的两种工作模式及其报文封装格式

隧道(tunnel)模式:隧道模式保护所有 IP 数据并封装新的 IP 头部,不使用原始 IP 头部进行路由。在 IPSec 头部前加入新的 IP 头部,源目为 IPSec peer 地址。并允许 RFC 1918(私有地址)规定的地址参与 VPN 穿越互联网。

AH Tunnel mode
AH Tunnel mode
ESP Tunnel mode
ESP Tunnel mode

传输(transport)模式:传输模式保护原始 IP 头部后面的数据,在原始 IP 头和 payload 间插入 IPSec 头部(ESP 或 AH)。典型应用为端到端的会话,并且要求原始 IP 头部全局可路由。

AH Transport mode
AH Transport mode
ESP Transport mode
ESP Transport mode

两者的区别在于 IP 数据报的 ESP 负载部分的内容不同。在隧道模式中,整个 IP 数据报都在 ESP 负载中进行封装和加密。当这完成以后,真正的 IP 源地址和目的地址都可以被隐藏为 Internet 发送的普通数据。这种模式的一种典型用法就是在防火墙-防火墙之间通过虚拟专用网的连接时进行的主机或拓扑隐藏。在传输模式中,只有更高层协议帧(TCP、UDP、ICMP 等)被放到加密后的 IP 数据报的 ESP 负载部分。在这种模式中,源和目的 IP 地址以及所有的 IP 包头域都是不加密发送的。

简单的说,加密点不等于通信点的时候就是 tunnel 模式,如果加密点等于通信点的话就是传输模式。但是要注意,默认情况下都是 tunnel 模式的需要你更改一下,这个你在 show crypto ipsec sa 中可以看到,因为传输模式比 tunnel 模式少了一个头,这样提供了更大的负载空间,所以尽量使用传输模式。

Transport 是两台电脑直接通过 IPSec VPN 连接的时候用的,tunnel 是只要一端采用网关的话就需要用 Tunnel 隧道模式。因为如果采用 Transport 连接一端是网关的时候,网关有 NAT 功能,会将地址变换,而传输是只识别原 IP 的,这样就会被直接丢弃掉。而 Tunnel 隧道模式则是直接建立隧道用于两端的通讯,不会出现被抛弃的情况。

在 tunnel 和 transport 模式下的数据封装形式如下图所示,图中 data 为原 IP 报文。

IPSec的两种工作模式及其报文封装格式
IPSec的两种工作模式及其报文封装格式
打赏作者
这里是 “ CCIE 工程师社区 ” 官方的捐款通道,您是否可以考虑请我们喝杯咖啡呢?

您的支持将鼓励我们继续创作!

[微信] 扫描二维码打赏

[支付宝] 扫描二维码打赏

Was this article helpful?

Related Articles

Leave A Comment?

This site uses Akismet to reduce spam. Learn how your comment data is processed.