【发布时间】:2012-08-04 16:03:45
【问题描述】:
使用 .NET,如果 PC 连接到 VPN 并使用 VPN 作为 Internet 网关,是否有办法检索 PC 的外部 IP?我的最终目标是检测客户端 PC 是真正在网络上还是在远程位置。
编辑:在阅读了其中一些答案后,我应该更具体一点。我想我正在寻找的是一种绕过 VPN 以检查笔记本电脑真实外部 IP 的编程方式。这可能吗?
【问题讨论】:
-
据我所知,测试 IP 只会发现它“绑定”到网络;因为它们是通过 VPN 连接的(这就是重点)。在没有实际修改 VPN 客户端的情况下,我不知道这是否可能。您可以测试以查看它们是否通过 VPN 连接进行连接,但查看 IP 只会看到当前的网络连接。
-
您是要在客户端还是服务器上检测到这一点?
-
在客户端。客户端将其相关信息发送到服务器进行处理
-
为什么需要外部 IP 来确定这一点?我只是枚举客户端“向上”网络接口上的地址,看看是否有一个内部 IP 和外部 IP 在您的网络的内部 IP 范围内。例如,我在笔记本电脑上使用 VPN,但我可以通过检查我的 WiFi 适配器是否与 192.168.0.x 的内部 IP 地址连接来确定我是否在我的家庭网络中。
标签: c# .net vb.net networking vpn