请帮忙!
我已在带有 Windows 客户端的服务器 2012 上配置并运行 OpenVPN。重启后,我无法再 ping 10.8.0.1 - 无论是在客户端还是在服务器上。
配置不太可能被更改。客户端的 IP 可能已更改。我认为它们以前是 .4 和 .8(如 ipp.txt 中所示)。现在它们是 .6 和 .10,但我无法恢复它们。当一切正常时,它们可能确实是 .6 和 .10。
与我所知道有效的旧保存日志文件相比,服务器日志文件上可能还有一件事不同:
Thu Aug 11 15:14:22 2016 C:\WINDOWS\system32\route.exe ADD 10.8.0.0 MASK 255.255.255.0 10.8.0.2
Thu Aug 11 15:14:22 2016 Warning: route gateway is not reachable on any active network adapters: 10.8.0.2
Thu Aug 11 15:14:22 2016 Route addition via IPAPI failed [adaptive]
Thu Aug 11 15:14:22 2016 Route addition fallback to route.exe
OK!
以前是这样的:
Fri May 27 18:16:54 2016 C:\WINDOWS\system32\route.exe ADD 10.8.0.0 MASK 255.255.255.0 10.8.0.2
Fri May 27 18:16:54 2016 ROUTE: CreateIpForwardEntry succeeded with dwForwardMetric1=30 and dwForwardType=4
Fri May 27 18:16:54 2016 Route addition via IPAPI succeeded [adaptive]
不过,根据 ,该路线是存在的route print
。
正如我所说,我不能完全确定这些线索是否与此有关。
谢谢你!
编辑:
我之前从来没有在我的配置中出现过这种情况:
route-method exe
route-delay 2
但我按照@corppadre的建议尝试了一下。日志现在显示
Thu Aug 11 15:56:48 2016 C:\WINDOWS\system32\route.exe ADD 10.8.0.0 MASK 255.255.255.0 10.8.0.2
OK!
但还是没有ping通。
编辑 2-使用 Wireshark 进行实验
在 ping 的同时,wireshark 会在客户端和服务器、VPN 适配器以及 LAN/互联网适配器上进行监听。
客户端 ping 10.8.0.1。
客户端 VPN 适配器上的 ICMP 数据包。无响应。
客户端 LAN 适配器上的 UPD 数据包。正在获取响应。
服务器 LAN 适配器上的 UPD 数据包。正在发送响应。
服务器 VPN 适配器上没有数据包。
服务器 ping 10.8.0.6 和 10.8.0.1。
我认为服务器 LAN 适配器上只有控制数据包。无论如何都会发送这些数据包,并且当 ping 数据包被 UDP 包装时,它们的大小往往为 101 字节。
服务器 VPN 适配器上没有任何内容。永远没有。线路平坦。
编辑3
找到了如何将 Wireshark 调整为 OpenVPN 数据包的方法。这些 UDP 数据包变成了 P_DATA_V1 类型。控制数据包似乎被忽略了。
答案1
以下是解决 Martin 提到的问题的步骤。
- 备份 C:\Program Files\OpenVPN\config
- 从添加/删除程序中卸载 tap 适配器和 openvpn
- 重启计算机
- 下载并安装最新的 OpenVpn 包(openvpn-install-2.4.7-I607-Win7.exe)
- 将备份配置复制到 C:\Program Files\OpenVPN\config
- 启动OpenVpnService服务并改为自动启动。
- 检查 C:\Program Files\OpenVPN\log\server.log
Successful ARP Flush on interface [12] {36785BD5-BF1D-4430-90EA-1E32927ED68F}
C:\Windows\system32\route.exe ADD 10.8.0.0 MASK 255.255.255.0 10.8.0.2
ROUTE: CreateIpForwardEntry succeeded with dwForwardMetric1=10 and dwForwardType=4
Route addition via IPAPI succeeded [adaptive]
- 使用 OpenVPN 客户端连接。
希望有所帮助。
问候,
安迪。
答案2
将以下内容添加到配置(ovpn)文件末尾:
route-method exe route-delay 2
如果失败,请尝试通常的 Windows 网络方法:
netsh dump netsh winsock reset netsh int ip reset log.txt ipconfig /flushdns
答案3
tl;dr; 服务器上的网关 TAP 适配器很重要。
啊。
C:\Program Files (x86)\OpenVPN\bin>tapinstall.exe remove tap0901
我是否重新启动了服务器和客户端?
我当然做了。
我是否在服务器和客户端上卸载/重新安装了 OpenVPN?
初级。
直到现在我才做的是删除我的 TAP 适配器,然后再重新安装。似乎不知何故我在某个时候丢失了服务器 TAP 适配器上的正确配置。我不知道怎么回事,也不知道具体是哪一部分。但就是这样。
上述操作就可以实现这一点。
然而...
再次重启后,我又回到了原点。然后我开始思考,到底是什么配置出了问题?
这让我找到我的 TAP 适配器,输入属性和 IPV4 属性。单击高级并添加网关,即执行 时显示的网关route print
,在我的情况下为 10.8.0.2。
因此,请先尝试一下。