首页
/
协议原理
/

IPsec 与 IKEv2 入门:两次交换建立隧道,NAT 后面也能用

协议原理

IPsec 与 IKEv2 入门:两次交换建立隧道,NAT 后面也能用

IPsec 是一套协议,不是一个协议。IKE 负责协商密钥,ESP 负责封装数据。本文从 IKEv2 的两次交换讲起,说明 NAT 穿越、漫游和排错的关键点。

IPsec 与 IKEv2 入门:两次交换建立隧道,NAT 后面也能用 封面

IPsec 不是一个协议,而是一套协议的组合:IKE 负责身份认证和密钥协商,ESP 负责把数据包加密封装。这套架构在企业组网、手机系统自带 VPN 和路由器之间都很常见。理解它主要需要弄清三件事:协商怎么完成,NAT 后面怎么传,地址变了怎么办。

IPsec 由哪两部分组成

IKE 运行在 UDP 500 端口,用来交换密钥、验证对方身份、协商算法。ESP 是 IP 协议号 50 的独立协议,不属于 TCP 也不属于 UDP,负责真正的数据加密。两者分工明确:协商成功后,数据面完全由 ESP 承担。

IKEv2 建立会话的流程
IKEv2 建立会话的流程

传输模式和隧道模式有什么区别

传输模式只加密 IP 负载,原始 IP 头保留,适合两台主机之间的直连;隧道模式把整个原始 IP 包封装进新的 IP 包,站点互联和远程接入用的都是隧道模式。

IKEv2:两次交换建立会话

IKEv1 要分阶段一和阶段二两个阶段,阶段一建立 IKE SA,阶段二建立 IPsec SA,消息数很多且模式繁杂。IKEv2 把这个过程简化为两次交换、共 4 条消息:IKE_SA_INIT 协商算法并完成 Diffie-Hellman 密钥交换,IKE_AUTH 在加密信道里完成身份认证,并同时建立第一个 CHILD SA(即用于 ESP 的子关联)。

IKE_AUTH 支持哪些认证方式

常见的有数字证书、预共享密钥和 EAP。EAP 可以接用户名密码或双因素认证,这是远程接入场景里手机和笔记本系统自带客户端能直接连上的原因。

为什么 IKEv2 比 IKEv1 更适合移动设备

IKEv2 支持 MOBIKE(RFC 4555),设备从 Wi-Fi 切到蜂窝网络、地址发生变化时,可以在原有会话上更新端点地址,不需要重新协商。IKEv1 没有这项能力,地址一变就要重建会话。

NAT 穿越怎么工作

ESP 没有端口号,传统 NAT 设备无法对它做端口映射。解决方法是检测到 NAT 后,整个会话切到 UDP 4500 端口,把 ESP 封装在 UDP 里。检测靠双方在协商时交换 NAT_DETECTION 载荷,比对看到的地址和端口是否被改写。

IPsec 用到的端口与协议
IPsec 用到的端口与协议

IKEv1 与 IKEv2 对照

维度IKEv1IKEv2
建立会话两个阶段,消息较多两次交换,4 条消息
设备地址变化需要重建会话通过 MOBIKE 更新
用户认证需要扩展(XAUTH)原生支持 EAP
NAT 穿越依赖扩展内置

协商失败的常见原因

最常见的是防火墙只放行了 UDP 500,没有放行 UDP 4500,导致 NAT 后面的客户端协商成功但数据不通。其他原因包括两端提议不匹配(日志里出现 NO_PROPOSAL_CHOSEN)、证书过期或时钟偏差、身份标识不一致。排错时先看服务端日志里失败发生在 IKE_SA_INIT 还是 IKE_AUTH,就能区分是算法协商问题还是认证问题。

为什么协商成功了却没有数据

这通常是 ESP 或 UDP 4500 被中间设备丢弃,或者服务端没有开启 IP 转发和地址转换。分层排查的方法和其他隧道协议相同。

IPsec
IKEv2
ESP
NAT 穿越
VPN 协议

相关文章

链路笔记

链路笔记:分享网络与隐私工程的实践笔记,涵盖协议原理、加密与隐私、连接排错与性能调优。

© 2026 链路笔记