vpnc - 24 分钟后不断断开连接

vpnc - 24 分钟后不断断开连接

VPNC 不知为何在一段时间后总是断开连接。我尝试计时以查看需要多长时间,结果似乎每次都是 24 分钟后。

断开连接后,我无法连接互联网,因为我的 /etc/resolv.conf 仍然与连接到 vpnc 时相同。如果我尝试 vpnc-disconnect,它只会显示“未发现正在运行的 vpnc”。我必须关闭并启动 eth0,然后手动编辑 /etc/resolv.conf 以获得正确的网络连接。

我的设置如下:

IPSec gateway xx.xx.xx.xx
IPSec ID anonymized
IPSec secret anonymized
#IKE Authmode hybrid
Xauth username myUsername
DPD idle timeout (our side) 0

我也尝试过让 ping 持续运行。我也持续播放流媒体和音乐,但它仍然会断开连接。

在 Windows 上无需断开连接即可正常工作。

编辑。更多信息:我从 /var/log/syslog 中添加了断开连接时发生的情况的日志:

我先连接:

 Jul 24 14:03:09 cad-unix NetworkManager[1086]:    SCPlugin-Ifupdown: devices added 
 path: /sys/devices/virtual/net/tun0, iface: tun0)
 Jul 24 14:03:09 cad-unix NetworkManager[1086]:    SCPlugin-Ifupdown: device added 
 (path: /sys/devices/virtual/net/tun0, iface: tun0): no ifupdown configuration found.

然后我在 24 分钟后断开了连接:

 Jul 24 14:27:29 cad-unix avahi-daemon[1089]: Withdrawing workstation service for tun0.
 Jul 24 14:27:29 cad-unix NetworkManager[1086]:    SCPlugin-Ifupdown: devices removed 
 (path: /sys/devices/virtual/net/tun0, iface: tun0)

编辑:稍微调整了一下问题,以便于阅读。现在还指定问题每次发生在 24 分钟。

编辑:我正在运行的版本:vpnc 版本 0.5.3

编辑:编译 0.5.1 版本后,我现在在日志文件中收到另一个条目:vpnc[16364]: connection ceased by peer

我猜是最后一次编辑:我很绝望。欢迎提出任何建议。如果问题出在 Ubuntu 上,那么更换另一个 Linux 发行版也是一个选择。

答案1

有一个错误报告解决了这个问题,从 2010-10-28 开始,但不幸的是仍未解决。断开连接的时间似乎有些个别,尽管报告的时间仍然超过 24 分钟。

这篇文章指出了一个解决办法描述在这里,这需要重新编译vpnc。

如果你的问题与重新密钥有关,那么文章0.5.3 的密钥更新问题声称该错误是 0.5.3 版本中出现的新错误,在 0.5.1 版本中并不存在。

[编辑}

看来回到 0.5.1 对你不起作用。而且似乎 vpnc 断开连接在许多 Linux 发行版中都很常见。

我已经发现修复 0.5.x 以上版本 vpnc 断开连接问题,这表明也许需要回到 0.4.x。无论如何,本文建议的修复方法可能与您的情况无关,但您可以尝试:

毕竟,我们还必须在客户端(vpnc)关闭 DPD,我们可以通过两种方式实现:

  • 调用“vpnc”时添加“--dpd-idle 0”命令行开关
  • 更好的方法是将这一行添加到配置文件中:“DPD 空闲超时(我们这边)0”

更多信息:man vpnc

RedHat 支持也有类似的信息:Bug 484114 - VPN 每 5 分钟断开一次

您可以尝试使用 vpnc 0.4.x,但我开始怀疑问题出在您这边还是出在 vpn 服务器的某些设置上:24 分钟太精确了。

答案2

尝试将 NAT 遍历模式更改为 cisco-udp,这解决了我的问题

NAT Traversal Mode cisco-udp

我的完整配置如下

IPSec gateway VPNHOSTIP
IPSec ID SAMPLESHAREDUSER
IPSec secret SAMPLESHAREDKEY
Xauth username SAMPLEUSER
Xauth password SAMPLEUSERPASS
IKE Authmode psk
#IKE DH Group dh2 # this is the default
DNSUpdate no
DPD idle timeout (our side) 0
NAT Traversal Mode cisco-udp

到目前为止,20 小时后我的 VPN 连接仍在运行。

答案3

VPNC 项目主页没有提到这是一个已知问题,但我认为“phase2-rekeying”仍然不太稳定(基于已报告的错误)。另请注意

  • 第一阶段重新密钥丢失

0.5.3 补丁版本(最新SVN原始项目)发布 VPNC 于github包括:

我还建议使用手表保护器作为重新连接的最终解决方案https://github.com/dcantrell/vpncwatch/network如果非常需要自动模式并且远程端仍然会导致(与软件无关的)断开连接。

附言

由于 VPNC 是商业实现的逆向工程版本,因此远端新出现的版本变化导致的断开连接可能会重新出现,直到再次被发现和修复。

最后,还有一个使用本机客户端的选项(任何连接) 适用于 Linux。其中一个缺点是客户端配置能力(如 DNS 记录更新和无默认路由)受到极大限制。另一个缺点是,断开连接仍会发生,但这种情况很少见。

答案4

你可以看看这个--nat-keepalive选项,或者尝试一下--nat-keepalive 1200

有一次,这是一个已知错误,不确定是否已经修复。

相关内容