Dead Peer Detection

在Libreswan一开始设置Tunnel时,最后有三个DPD相关的选项:

image-20240609131343110

本节将介绍它们。

Dead Peer Detection

DPD是一种检查IPsec VPN存活的方法,VPN两侧的角色(VGW, CGW)在IKE(Internet Key Exchange)阶段来进行DPD初始化设置

如果配置了DPD,则AWS侧会每隔10s发送一个DPD(R-U-THERE)信息给CGW,等待R-U-THERE-ACK。如果连续三个请求都没有回应,则标志着timeout:

image-20240609131433408

我们看到txt中三个参数的默认值为:

	dpddelay=10
	dpdtimeout=30
	dpdaction=restart_by_peer

这个timeout也可以设置为更高的值。发生失效对端检测 (DPD) 超时后采取的操作可以指定:

  • Clear:当发生 DPD 超时时结束 IKE 会话(停止隧道并清除路由)
  • None:当发生 DPD 超时时不采取任何操作
  • Restart:当发生 DPD 超时时重新启动 IKE 会话

如果设置了两条Tunnel,则发生DPD时会自动切换到另一条

VPN Connection的高可用

CGW有时难免会出故障或维护,如果想提升VPN Connection的高可用,一个实践是创建两个CGW,这样即使一台坏了,另一个还能继续用:

image-20240609150601761