有什么方法可以获取访问 Java 网站的用户的 ISP 和地理位置吗?
获取IP很容易。它是request.getRemoteAddr()
。有关获取 ISP 和位置的任何提示吗?有可用的 API 或库吗?我猜你必须将所有 IP 映射到 ISP。有什么想法吗?
最佳答案
Java 中没有现成的解决方案。一般来说,只有一种方法可以做到这一点 - 您应该使用 whois 协议(protocol)从区域互联网寄存器 (RIR) 访问有关主机 IP 的数据,例如来自 http://www.db.ripe.net/whois 。互联网上的其他解决方案或多或少都会依赖RIR+一些算法来处理数据。
可以使用 telnet 连接到 RIPE 或将数据库快照复制到您的服务器上。
唯一的问题是whois的输出不太方便处理。一切都取决于您的应用程序和所需的准确性。
关于java - 获取网页访问者的 IP、ISP 和地理位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6043652/