Windows VPN 总是在 < 3 分钟后断开连接,仅与我的网络断开连接

hem*_*emp 13 windows-server-2003 vpn

首先,这个问题已经存在了将近两年。在 serverfault 诞生之前,我几乎放弃了解决它——但现在,希望重生了!

我在远程办公室设置了一台 Windows 2003 服务器作为域控制器和 VPN 服务器。我能够从我尝试过的每个 Windows 客户端(包括 XP、Vista 和 Windows 7)从至少五个不同的网络(公司和家庭、域和非)连接到 VPN 并通过 VPN 正常工作。从他们所有人。

但是,每当我从客户端连接上我的家庭网络,连接中断3分钟或更少后(默默)。片刻之后,它最终会告诉我连接已断开并尝试重拨/重新连接(如果我以这种方式配置了客户端。)如果我重新连接,连接将重新建立并显示正常工作,但再次将无声地下降,这次是在一个看似更短的时间段之后。

这些不是间歇性下降。它每次都以完全相同的方式发生。唯一的变量是连接存活的时间。

我发送什么类型的流量并不重要。我可以无所事事,发送连续的 ping、RDP、传输文件,所有这些都一次 - 没有区别。结果总是一样的。接通了几分钟,然后无声无息的死亡。

由于我怀疑有人遇到过这种确切情况,因此我可以采取哪些步骤来对我的隐蔽 VPN 进行故障排除?


附加背景

在这两年的时间里,我更换了 ISP(两端),添加了一个新的域控制器(我的网络),并更换了路由器(两个网络)。这些都没有任何影响。

该问题可以在多台 PC 上重现,使用不同的操作系统,但只能从我的网络中重现。

我通过在非 Windows 设备上进行测试验证了该行为与客户端无关。我在 iPhone 上配置了 VPN,并通过我的网络通过 wifi 连接。使用名为 Scany 的应用程序,我连续 ping 服务器,直到连接在大约 2 分钟后断开 - 我在 Windows 客户端上看到的相同行为。之后,我在 AT&Ts 3G 上禁用了 wifi 和 VPN,并连续 ping 了 11 分钟没有丢失请求。该测试充分地将问题与我的网络隔离开来。

两年间唯一一致的组件是我的域控制器,它处理 WINS 并充当入站连接的 VPN 服务器。但是,出站流量不应通过我的 DC 路由,它会直接到达防火墙/路由器,后者直接连接到我的电缆调制解调器。

更多笔记

有人要求我在建立 VPN 连接时验证我的路由不是时髦的。我看了一下,没有发现任何明显的错误,但是我在路由配置方面的经验非常有限,所以我发布了数据。

我的 LAN 的 C 类范围是 192.168.1.255,远程 LAN 的 C 类范围是 192.168.10.255。我还屏蔽了 VPN 服务器的公共 IP (74.93.XXX.XXX)。

>route print (VPN Disconnected)
===========================================================================
Interface List
 17...00 ff 10 80 57 0c ......Juniper Network Connect Virtual Adapter
 11...00 23 ae e6 bb 49 ......Realtek RTL8168C(P)/8111C(P) Family PCI-E Gigabit
Ethernet NIC (NDIS 6.20)
  1...........................Software Loopback Interface 1
 12...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
 13...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
 16...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0      192.168.1.1     192.168.1.24     10
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
      192.168.1.0    255.255.255.0         On-link      192.168.1.24    266
     192.168.1.24  255.255.255.255         On-link      192.168.1.24    266
    192.168.1.255  255.255.255.255         On-link      192.168.1.24    266
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link      192.168.1.24    266
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link      192.168.1.24    266
===========================================================================
Persistent Routes:
  None


>route print (VPN Connected)
===========================================================================
Interface List
 25...........................VPN Test
 17...00 ff 10 80 57 0c ......Juniper Network Connect Virtual Adapter
 11...00 23 ae e6 bb 49 ......Realtek RTL8168C(P)/8111C(P) Family PCI-E Gigabit
Ethernet NIC (NDIS 6.20)
  1...........................Software Loopback Interface 1
 12...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter
 13...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
 16...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0      192.168.1.1     192.168.1.24     10
    74.93.XXX.XXX  255.255.255.255      192.168.1.1     192.168.1.24     11
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
      192.168.1.0    255.255.255.0         On-link      192.168.1.24    266
     192.168.1.24  255.255.255.255         On-link      192.168.1.24    266
    192.168.1.255  255.255.255.255         On-link      192.168.1.24    266
     192.168.10.0    255.255.255.0   192.168.10.134   192.168.10.134     11
   192.168.10.134  255.255.255.255         On-link    192.168.10.134    266
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link      192.168.1.24    266
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link      192.168.1.24    266
  255.255.255.255  255.255.255.255         On-link    192.168.10.134    266
===========================================================================
Persistent Routes:
  None
Run Code Online (Sandbox Code Playgroud)

hem*_*emp 8

非常感谢@Warner 和@William 的建议。最终是威廉的回答让我做出了最终的决定。对于任何来寻找的人来说,这就是交易。

经过大量尝试隔离问题的混乱之后,我终于按照威廉的建议做了并提取了我的防火墙日志。没想到会发现什么有趣的东西,当我看到这一行时,我很惊讶:

PPTP ALG 拒绝了从 xxxx 到 xxxx 的数据包:1723

知道 PPTP 是此 VPN 的配置方式,我对错误进行了一些搜索。事实证明,其他人看到了。具体来说,使用我的确切路由器D-Link DIR-655 的人。

事实证明,解决方案很简单。

在路由器的 Web 管理界面中,访问高级选项卡并单击左侧菜单中的防火墙设置。在标有“应用程序级别网关(ALG)配置”的部分中,取消选中 PPTP 框(如果您的 VPN 使用该协议,也可以取消选中 IPsec。)单击“保存设置”并告诉路由器重新启动。瞧!

不幸的是,禁用这些 ALG 选项意味着某些高级路由功能将无法使用。例如,PPTP 支持旨在允许多个 NAT 客户端同时通过隧道连接到同一 VPN 服务器。如果该框被清除,这可能不起作用。但是,如果像我你的VPN当框都没有真正的工作检查,你可能不介意。

我仍然不清楚为什么我似乎记得以前在一个完全不同的路由器上遇到过这个问题,但我很高兴它仍然可以工作。