有没有办法仅仅通过查看IP地址就能知道国家名称?我的意思是,各国是否有特定的IP地址范围?例如,澳大利亚的IP地址只能在123.45.56.89 - 231.54.65.98范围内(仅举个例子)
发布于 2012-03-21 18:10:44
我认为您正在寻找的是IP地理位置数据库或服务提供商。有很多,有些是免费的(按需付费)。
虽然我以前没有用过这项服务,但它声称是实时的。https://kickfire.com/kf-api
这是另一个来自抽象API的IP地理位置API - https://www.abstractapi.com/ip-geolocation-api
但只要在谷歌上搜索IP geo,你就会得到比你需要的更多的结果。
发布于 2014-08-07 14:39:46
不,您不能- IP地址会不时地重新分配和重新分配,因此IP到位置的映射也会随着时间的推移而改变。
如果你想要找出一个IP地址当前映射到的位置,你可以下载一个地理位置数据库,比如GeoLite from MaxMind,或者使用像http://ipinfo.io (我自己的服务)这样的应用程序接口,它也会给你额外的详细信息:
$ curl ipinfo.io/8.8.8.8
{
"ip": "8.8.8.8",
"hostname": "google-public-dns-a.google.com",
"loc": "37.385999999999996,-122.0838",
"org": "AS15169 Google Inc.",
"city": "Mountain View",
"region": "California",
"country": "US",
"phone": 650
}发布于 2017-11-07 01:34:57
您可以使用ipdata.co执行查找
此答案使用的“测试”API键非常有限,并且仅用于测试几个调用。Signup为您自己的免费应用编程接口密钥,每天获得多达1500个开发请求。
curl https://api.ipdata.co/23.221.76.66?api-key=testIpdata在全球范围内有10个端点,每个端点每秒能够处理超过10,000个请求!
给出
{
"ip": "23.221.76.66",
"city": "Cambridge",
"region": "Massachusetts",
"region_code": "MA",
"country_name": "United States",
"country_code": "US",
"continent_name": "North America",
"continent_code": "NA",
"latitude": 42.3626,
"longitude": -71.0843,
"asn": "AS20940",
"organisation": "Akamai International B.V.",
"postal": "02142",
"calling_code": "1",
"flag": "https://ipdata.co/flags/us.png",
"emoji_flag": "\ud83c\uddfa\ud83c\uddf8",
"emoji_unicode": "U+1F1FA U+1F1F8",
"is_eu": false,
"languages": [
{
"name": "English",
"native": "English"
}
],
"currency": {
"name": "US Dollar",
"code": "USD",
"symbol": "$",
"native": "$",
"plural": "US dollars"
},
"time_zone": {
"name": "America/New_York",
"abbr": "EDT",
"offset": "-0400",
"is_dst": true,
"current_time": "2018-04-19T06:32:30.690963-04:00"
},
"threat": {
"is_tor": false,
"is_proxy": false,
"is_anonymous": false,
"is_known_attacker": false,
"is_known_abuser": false,
"is_threat": false,
"is_bogon": false
}
}⏎ https://stackoverflow.com/questions/9802046
复制相似问题