微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Windows中检测VPN连接?

有没有办法检测我是否使用C中的标准Windows API连接到VPN?

基本上我有一个客户端必须与服务器同步,但只有VPN连接。 这可能是一个标准的Windows VPN客户端或思杰。

RAS在这里有帮助吗?

谢谢,代码表示感谢。

无root权限实现共享内存

如何在读取之前刷新串口?

系统调用返回值和errno

Longjmp出信号处理程序?

如何检索USB设备接口GUID?

编辑:使其更清晰。

这是一个客户端,将运行在我们的客户的计算机上,他们设置VPN和服务器,但他们想要的。 所以我想知道如果Windows保持一个设置的地方,我可以通过API或registry或WMI或任何可以告诉我VPN的东西读取:否或是,如果是的信息。

gdborig.exe在debuggingQT 5.8和在Windows中打开QFileDialog时随机崩溃

编程读取文件,并用pipe道发送给父进程

给定x,y点,如何得到一个不存在于前景窗口上的控件的窗口句柄?

使用grep / find组合来查找函数或结构的用法

QTCreator g ++。exe:致命错误:无input文件(Windows)

有了VPN,我怀疑你能够访问那些不存在的资源。 所以你可以PING测试VPN网络上的服务器。 ICMP是ping的协议。

这里是一些例子: http : //www.alhem.net/project/ex10/index.html

如果您使用VPN,您的IP空间应该不同 – 如果VPN设置正确,服务器甚至不可访问,除非您在VPN上。 你可以尝试ping服务器,只尝试执行同步,如果你得到一个响应?

我相当肯定,VPN的卖点之一就是用户级应用程序应该总体上完全不知道它的存在。 您的最佳行动方式可能是使用COM或其他形式的IPC查询已知的VPN提供商服务,或者只是查看它们是否存活和/或活跃,并根据此证据推断出情况。

我查找了供应商特定的注册表设置来确定隧道是否处于活动状态。 这与nortel和Cisco VPN客户端配合良好。

您的应用程序可以查找仅通过VPN提供的域名的IP吗? 如果名称查找失败,您不在VPN上。 如果一般互联网不能查询VPN上的DNS服务器,这可能是一个可行的解决方案(但可能不足以满足您的需求?)。 然后,您可以尝试连接到该IP – 只有在VPN上才能成功。

你甚至可以有一个公共的DNS服务器提供的IP地址。 只需使用永不解析为公有IP的特殊主机名。 如果VPN没有启动,您将无法到达该地址。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐