WiFi Direct和VPN

时间:2017-11-14 17:32:20

标签: windows uwp network-programming

我有一个通过WiFi直接连接控制摄像头的应用程序。它通过使用NetworkAdapter.NetworkReport.AvailableNetworks枚举可用网络然后调用NetworkAdapter.ConnectAsync进行连接来连接到摄像机。 这适用于大多数系统。但是,在某些系统上,似乎与已安装的VPN存在冲突。如果系统上安装了VPN,则有时在连接网络后,无法正确路由WiFi直连设备上的特定IP地址。 (请求始终是此设备上的IP地址)。这些请求似乎被VPN错误地路由,无法解决。真奇怪的是,这有时只会发生。我可以连续五次发出相同的请求,其中4个可能会失败,但一个成功。

问题 - 如何暂时禁用VPN,或者至少阻止它干扰此特定连接请求的路由?

NetworkAdapter类似乎没有关于处理路由或VPN的任何内容。 我查看了VPN名称空间 https://docs.microsoft.com/en-us/uwp/api/windows.networking.vpn.vpndomainnameinfo 但这似乎主要是关于在设备上设置VPN并需要特殊的商店权限才能使用。 WiFiDirectDevice类似乎是关于设置与主机设备的WiFiDirect连接,而不是连接到其他设备。

1 个答案:

答案 0 :(得分:0)

首先想看看这里是否存在VPN路由冲突。您可以通过从命令提示符运行以下命令来执行此操作

route print -4

这将以

之类的格式打印出路线
Interface List
 23...ee 15 36 22 ea 9b ......Hyper-V Virtual Ethernet Adapter #2
  2...ee 15 36 41 e5 b6 ......Hyper-V Virtual Ethernet Adapter
 52...........................MSIT AutoVPN
 17...b6 ae 2b c4 41 b4 ......Microsoft Wi-Fi Direct Virtual Adapter
 11...b6 ae 2b c4 44 b4 ......Microsoft Wi-Fi Direct Virtual Adapter #3
 14...b4 ae 2b c4 40 b5 ......Marvell AVASTAR Wireless-AC Network Controller
  9...b4 ae 2b c4 40 b6 ......Bluetooth Device (Personal Area Network)
  1...........................Software Loopback Interface 1
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0      192.168.0.1    192.168.0.100     35

查找标记到VPN接口的路由,看它是否位于您尝试访问的路由中。然后,您可以使用route.exe Add命令为您尝试连接的IP地址

添加更具体的路由