在java中通过ip地址获取国家名称

时间:2013-02-14 11:30:34

标签: java

我希望通过在java中提供IPAdress来获取国家/地区名称。 例如192.168.0.1。我想获得国家名称而不是主机名。请解决这个问题。

1 个答案:

答案 0 :(得分:5)

有许多地理定位提供商,例如这个免费提供商:

http://freegeoip.net/static/index.html

这个免费允许每小时最多1000次查找。

如果您访问例如:http://freegeoip.net/json/124.168.50.23来查找地址,您会发现我在澳大利亚:

{"city": "Sydney", "region_code": "02", "region_name": "New South Wales", "areacode": "", "ip": "124.168.50.23", "zipcode": "", "longitude": 151.2055, "country_name": "Australia", "country_code": "AU", "metrocode": "", "latitude": -33.8615}

请注意,您使用的示例IP地址(192.168.0.1)来自保留范围(它始终位于您的本地网络上),因此您无法查找某个国家/地区:

{"city": "", "region_code": "", "region_name": "", "areacode": "", "ip": "192.168.0.1", "zipcode": "", "longitude": "", "country_name": "Reserved", "country_code": "RD", "metrocode": "", "latitude": ""}