您可以通过 JavaScript 获取用户本地 LAN IP 地址吗?

2024-06-25

我知道对这个问题的最初反应是“不”和“它无法完成”和“你不应该需要它,你做错了”。我想做的是获取用户的 LAN IP 地址,并将其显示在网页上。为什么?因为这就是我正在开发的页面的全部内容,显示尽可能多的关于您(访问者)的信息:https://www.whatsmyip.org/more-info-about-you/ https://www.whatsmyip.org/more-info-about-you/

因此,除了将其显示给用户以供参考之外,我实际上并未对 IP 执行任何操作。我曾经使用一个小型 Java 小程序来完成此操作。效果很好。但现在,浏览器让你多次点击“同意”和“信任”,甚至运行最小的 Java 小程序,我根本不想运行它。

所以有一段时间我只是放弃了这个功能,但如果可能的话我希望它能回来。作为一名计算机顾问,我实际上会时不时地使用它。访问此网站查看网络运行的 IP 范围比进入“系统偏好设置”、“网络”以及任何处于活动状态的界面更快。

所以我想知道,希望是否有某种方法可以单独用 javascript 来做到这一点?也许您可以访问一些新对象,类似于 javascript 询问浏览器地球上的地理位置在哪里的方式。也许客户端网络信息有类似的东西?如果没有,也许还有其他完全可以做到的方法?我能想到的唯一方法是 java applet 或 flash 对象。我宁愿不做其中任何一个。


事实证明,最近的 HTML5 WebRTC 扩展允许 javascript 查询本地客户端 IP 地址。此处提供了概念证明:http://net.ipcalf.com http://net.ipcalf.com/

这个功能显然是按设计 https://bugzilla.mozilla.org/show_bug.cgi?id=959893,并且不是一个错误。然而,鉴于其有争议的性质,我对依赖这种行为持谨慎态度。尽管如此,我认为它完美且适当地满足了您的预期目的(向用户揭示他们的浏览器正在泄漏什么)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

您可以通过 JavaScript 获取用户本地 LAN IP 地址吗? 的相关文章

随机推荐

  • Python Celery - 通过 pid 查找任务

    也许是一个非常简单的问题 我经常看到我的系统上运行着一个celery任务进程 但我在使用时却找不到celery task control inspect s active 方法 通常这个进程会运行几个小时 我担心它是某种僵尸 通常它也会消耗
  • 递归分层父子

    我有一个来自数据库的项目集合 该数据库具有parentid值或空 这是我的班级设计 public class Item public int id get set public string Name get set public int
  • 从父节点读取特定叶/子节点的 Firebase 规则

    我的 firebase 数据库看起来像这样 students firebase key 1 Name blah blah Address blah blah Roll No blah blah Marks Sub1 blah Sub2 bl
  • asp.net MVC - 如何通过不同的存储库类共享 SqlConnection 的同一实例

    我正在使用 MVC5 和普通 ADO NET 创建一个新项目 只是作为学习练习 我需要创建一个存储库 用于注册一个模型 其中包含几个也需要同时创建的相关对象以及这些对象反过来可能需要插入其他对象 我能想到的最简单的解决方案是拥有一个庞大的方
  • Puppeteer - 如何获取当前页面(应用程序/pdf)作为缓冲区或文件?

    使用 Puppeteer https github com GoogleChrome puppeteer https github com GoogleChrome puppeteer 我有一个页面是申请 pdf With headless
  • 高效滚动最大和最小窗口

    我想有效地计算滚动最大值和最小值 这意味着比每次窗口移动时从使用的所有值重新计算最大值 最小值更好 这里有一篇文章问了同样的问题 有人发布了一个涉及某种堆栈方法的解决方案 据说该方法是根据其评级来工作的 然而我这辈子都找不到它了 在寻找解决
  • 在RelativeLayout android中使用java动态改变TextView的位置

    我有RelativeLayout 并且RelativeLayout中有一个textview 我从服务器获取位置 如ALIGN PARENT LEFT ALIGN PARENT TOP 基于该值我想更改textview的位置 我的 xml 文
  • NSDate 输出不正确[重复]

    这个问题在这里已经有答案了 可能的重复 获取日期与 NSDate date 相差几个小时 https stackoverflow com questions 8466744 getting date from nsdate date off
  • 使用 Set 而不是 List 会导致“无法写入 JSON:无限递归”异常

    我收到错误 无法编写 JSON 无限递归 当尝试访问端点时http localhost 8080 categoryOfPermissions http localhost 8080 categoryOfPermissions 我研究并找到了
  • 如何将浮动列表项居中?

    我的网站导航有需要居中的列表项 我处于浮动状态 以便可以在列表项上进行填充 将它们设置为内联似乎可以消除顶部和底部填充 div ul ul div
  • SVG 线条描边-dasharray 无法正确打印为 PDF

    打印行与stroke dasharrayPDF 创建不同的行为 请 看着那 这image https i stack imgur com doOku png here 图A 我直接从浏览器 Chrome 获取的屏幕截图 图B是同一页面的打印
  • 如何将画布转换为图像以上传到烧瓶?

    好吧 我正在尝试将调整大小的画布图像作为文件上传到 Flask 首先我尝试使用canvas toDataURL 将其转换为 base64 字符串 然后尝试使用以下命令将其作为图像上传formdata使用AJAX 就没那么幸运了 然后我尝试使
  • Castle.Windsor可以自动解析具体类型吗

    我们正在评估 C 项目的 IoC 容器 Unity 和 Castle Windsor 都表现出色 我喜欢 Unity 的一件事 NInject 和 StructureMap 也这样做 是 显而易见如何构造它们的类型不必向 IoC 容器注册
  • 使 DateTime::createFromFormat() 返回子类而不是父类

    我正在延长DateTime添加一些有用的方法和常量 使用时new创建一个新对象一切都很好 但是使用静态方法时createFromFormat它总是返回原来的DateTime对象 当然没有任何子方法可用 我正在使用以下代码来规避此问题 这是最
  • 以编程方式将样式应用于 MaterialButton

    我正在尝试创建一个扩展自的自定义视图MaterialButton并在代码中应用样式 这样我就不需要在 xml 中执行它 class CustomRedButton JvmOverloads constructor context Conte
  • 用于替换格式但保留单元格值的 VBA:部分解决

    我正在尝试组合 VBA 来搜索特定的单元格格式 然后更改该单元格格式 我从这篇文章中得到了灵感 Excel VBA 值替换后仍保持字符串格式 https stackoverflow com questions 25825136 excel
  • 当 SQL 包含变量时在 pgAdmin 中调试 SQL

    在 SQL Server 中 我可以从应用程序中复制 sql 代码并将其粘贴到 SSMS 中 声明并分配 sql 中存在的变量并运行 是的 很棒的调试场景 例如 请注意 我很生疏 语法可能不正确 declare x as varchar 1
  • 在 PowerShell 中提示用户输入

    我想提示用户进行一系列输入 包括密码和文件名 我有一个使用的例子host ui prompt 这似乎很合理 但我无法理解回报 有没有更好的方法在 PowerShell 中获取用户输入 Read Host http technet micro
  • HTML 中的字符限制

    如何对 HTML 中的文本输入施加字符限制 主要有2个解决方案 纯 HTML 的
  • 您可以通过 JavaScript 获取用户本地 LAN IP 地址吗?

    我知道对这个问题的最初反应是 不 和 它无法完成 和 你不应该需要它 你做错了 我想做的是获取用户的 LAN IP 地址 并将其显示在网页上 为什么 因为这就是我正在开发的页面的全部内容 显示尽可能多的关于您 访问者 的信息 https w