我已经成功在 Linux 2.6 上用 iPhone 和 OpenSWAN 配置了 VPN。但是,当断开 iPhone 连接并重新连接时,它会超时。
我发现:
1) 当您断开 iPhone 与 VPN 的连接时,没有数据包被发送。
2)重新连接时,pluto 会拾取旧的套接字并尝试使用该状态机。然后失败,iPhone 会重新传输直到超时。
我在 git 中使用最新版本,包括 #1204 补丁。我在日志中看到了 NAT-T 补丁调试行。但仍然没有 cookie。
帮助?
答案1
听起来你已经基本搞定了。我猜你需要将这个添加到你的 IPsec 配置中:
# Apple iOS doesn't send delete notify so we need dead peer
# detection to detect vanishing clients
dpddelay=10
dpdtimeout=90
dpdaction=clear
基本上,当您与 iPhone/iPad 断开连接时,它不会发送 DELETE 信号,因此隧道只是停留在那里(例如,直到您重新启动 ipsec 服务)。上面的这些选项表示,如果他们在 90 秒内没有收到设备的消息,则关闭并清理它。您显然可以根据需要调整数字。