获取网页访问者的 IP、ISP 和地理位置

发布于 2024-11-08 11:21:33 字数 157 浏览 0 评论 0原文

有什么方法可以获取访问 Java 网站的用户的 ISP 和地理位置吗?

获取IP很容易。它是request.getRemoteAddr()。有关获取 ISP 和位置的任何提示吗?有可用的 API 或库吗?我猜你必须将所有 IP 映射到 ISP。有什么想法吗?

Is there any way to get the ISP and GeoLocation for a user that access a website in Java?

Getting the IP is easy. It's request.getRemoteAddr(). Any hints on getting the ISP and location? Are there any API's or libraries available? I'm guessing that you have to map all the IPs to ISPs. Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

去了角落 2024-11-15 11:21:33

Java 中还没有现成的解决方案。一般来说,只有一种方法可以做到这一点 - 您应该使用 whois 协议从区域互联网注册 (RIR) 访问有关主机 IP 的数据,例如从 http://www.db.ripe.net/whois。互联网上的其他解决方案或多或少都会依赖RIR+一些算法来处理数据。

可以使用 telnet 连接到 RIPE 或将数据库快照复制到您的服务器上。

唯一的问题是 whois 的输出不太方便处理。一切都取决于您的应用和所需的准确性。

There is no ready solution in Java. In general there is only one method to do it - you should use whois protocol to access data about host's ip from Regional Internet Register (RIR), for example from http://www.db.ripe.net/whois. Other solutions in the Internet will more or less depend on RIRs + some algorithm to process data.

There is a possibility to use telnet to connect to RIPE or copy a snapshot of database onto your server.

The only problem is that the output from whois is not very convenient to process. Everything depends on your application and required accuracy.

年华零落成诗 2024-11-15 11:21:33

尝试使用 MaxMind GeoIp Java API。更完整和准确的 IP 数据库是商业的,但他们有一个免费的国家和城市“轻”数据库。

http://www.maxmind.com/app/java

Try with MaxMind GeoIp Java API. The more complete and accurate IP database is commercial, but they have a free Country and City "light" database.

http://www.maxmind.com/app/java

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文