在浏览器中获取本地 IP 地址的非服务器端方法?

在浏览器中获取本地 IP 地址的非服务器端方法?

我正在尝试为我的 LAN 上的用户提供一种向网络管理员(我)“注册”的方法,而不必 a) 在我的计算机上托管页面 b) 在中央服务器上托管脚本(因为它只是一个路由器,而不是真正的可靠 HTTP 服务器)或 c) 注册一个动态域以便进行前两者中的任何一个,并避免将 URL 发送到本地 IP 链接的混淆。

有没有一种简单的方法可以通过客户端脚本在屏幕上显示本地 IP 地址?我在想也许我可以有一个 iframe,它指向一些通用 url,路径中有一些 javascript,这样我就可以让用户访问非本地站点,然后 iframe 会弹出他们的 IP 地址,然后他们可以将其输入到主远程页面的表单中。

如果其他方法都失败了,有没有一种方法可以让他们查找跨平台的 IP,并且不需要使用命令行(我认为第一种方法,即使不可能,也可能比第二种更现实)。

答案1

有没有一种简单的方法可以通过客户端脚本在屏幕上显示本地 IP 地址?

不,至少我不知道有任何跨平台的方法可以用 Javascript 来实现这一点。不太可能有,因为这将是一个巨大的安全漏洞(您访问的任何网站都可能检索您的网络配置,这可能被视为私人信息并可能有助于攻击)。使用 IE 和 ActiveX 是可能的,但我不推荐这样做(不是跨平台的,不知道它是否在最近的 IE 中有效)。

您可以通过 Java 小程序 (如果它已签名) 来执行此操作,因为您拥有完全的系统访问权限 (也可能可以通过 Flash 执行)。

这就是说:

也许您可以解释一下为什么您认为需要这样做。为什么用户必须“注册”给您?为什么您甚至需要他们的 IP 地址?

为什么不直接通过 DHCP 提供 IP 地址?

如果您更详细地解释您的问题/目标,也许有更好的方法。

相关内容