IKEv2 的交换流程
IKEv2 的交互比 IKEv1 更规整:IKE_SA_INIT 协商算法并交换 DH 与随机数;IKE_AUTH 完成身份认证并建立第一个子 SA;之后用 CREATE_CHILD_SA 新增或重协商子 SA,用 INFORMATIONAL 做删除与保活等维护。整个建立过程通常两轮往返即可完成。
基本信息
| IKE_SA_INIT | 协商加密套件,交换 DH 与随机数 |
|---|---|
| IKE_AUTH | 身份认证,并建立首个子 SA |
| CREATE_CHILD_SA | 新增或重协商子 SA |
| INFORMATIONAL | 删除子 SA、保活等维护动作 |
| 效率特点 | 通常两轮往返完成建立,报文更精简 |
典型使用场景
- 排障协商失败:按交换阶段区分是参数问题还是认证问题
- 跨厂商对接:用阶段描述沟通,比状态字符串更清晰
- 抓包分析:识别交换类型,快速判断卡在哪一步
- 割接验收:确认子 SA 已建立且计数在增长
- 安全评审:核对认证方式与算法提案
协商观察
协商观察
# Cisco 侧
# show crypto ikev2 sa | include STATUS
# debug crypto ikev2 packet
# debug crypto ikev2 protocol
!
# 华为侧按版本使用对应命令:
# display ike sa
# 注意:调试输出量大,需限定范围并及时关闭交换类型
| 阶段 | 主要作用 | 失败时的常见含义 |
|---|---|---|
| IKE_SA_INIT | 协商算法与 DH | 算法提案无交集 |
| IKE_AUTH | 认证并建立首个子 SA | 身份或凭据不匹配 |
| CREATE_CHILD_SA | 子 SA 增删与重协商 | 策略或选择符不一致 |
| INFORMATIONAL | 维护与保活 | 对端无响应或链路已断 |
IKE_SA 与 IPsec SA 是两回事:一个 IKE_SA 可以承载多对子 SA,把两者混为一谈容易让排查方向出错。
抓包配合状态命令效率最高:交换类型能直接指出卡在哪一步,再去核对两端对应配置,比盲查快得多。
调试输出量很大:限定范围并及时关闭,避免控制面压力上升影响正常业务。
两轮往返意味着失败点相对集中:IKE_SA_INIT 失败多为参数不匹配,IKE_AUTH 失败多为认证问题,先区分再排查。
子 SA 的增删通常由业务或策略变更触发:观察其出现时机,可以判断是流量变化还是配置改动引起的。
把交换类型与配置项对应起来看更高效:初始化阶段对应算法与 DH 组,认证阶段对应身份与凭据,子 SA 阶段对应选择符与策略。