重协商定时器是什么
IPsec SA 不是永久的:生存期(lifetime)到期或流量达到阈值就触发重协商(rekey),生成新的 SPI 与密钥。这里有两套定时器——阶段一 IKE SA 的生存期与阶段二 IPsec SA 的生存期,两者的默认值和触发后果不同。时间太短会不断重协商,广域网高时延下容易撞上重协商窗口;时间太长则同一把密钥保护的数据量过大,暴露窗口变长。调优的正确做法是先看 SA 的实际剩余时间与重协商日志,而不是直接改配置数字。
基本信息
| 时间维度 | crypto ... lifetime seconds,常用 3600 秒量级 |
|---|---|
| 流量维度 | lifetime kilobytes,按链路吞吐与业务量评估 |
| 阶段一 | IKE SA 生存期,Cisco 默认常为 86400 秒 |
| 阶段二 | IPsec SA 生存期,Cisco 默认常为 3600 秒 |
| 触发顺序 | 先到者触发,重协商是软切换不中断业务 |
| 观察点 | show crypto ipsec sa 中的 remaining 与重协商日志 |
典型使用场景
- 高吞吐专线:流量维度先到,实际重协商频率远高于时间预期
- 弱网或长时延链路:重协商报文丢失会拉长切换时间,需评估生存期
- 合规要求密钥轮换周期:把生存期作为可审计的配置项固定下来
- 排障时段:对照 SA 剩余时间与丢包时间点,判断是否重协商引发抖动
- 对接第三方设备:两端生存期不一致时取协商结果,需确认谁先到
配置与观察
配置与观察
# 阶段二生存期:时间与流量双维度
crypto ipsec security-association lifetime seconds 3600
crypto ipsec security-association lifetime kilobytes 4608000
# 阶段一生存期
crypto isakmp policy 10
lifetime 86400
! 查看实际剩余时间与重协商计数
show crypto ipsec sa | include remaining|pkts|rekey
! 华为侧对应查看
! display ipsec sa | include remaining|lifetime参数影响对照
| 参数 | 调小的后果 | 调大的后果 |
|---|---|---|
| seconds | 协商次数增多,抖动风险上升 | 密钥使用时间变长,暴露窗口扩大 |
| kilobytes | 大流量下频繁重协商 | 单密钥保护数据量过大 |
| 阶段一生存期 | 密钥推导频繁 | 一次协商长期有效 |
| 两端不一致 | 以协商结果为准,可能非预期 | 需显式对齐参数表 |
重协商是正常机制而非故障:表现为 SA 的 SPI 与剩余时间刷新,业务通常不中断;只有重协商报文在弱网上丢失时才会出现短暂丢包。
把生存期调得很长以减少协商,等于长期用同一密钥保护全部流量;流量维度阈值也要一并评估,不能只看时间。