首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过IP地址识别国家/地区

通过IP地址识别国家/地区
EN

Stack Overflow用户
提问于 2012-03-21 17:48:05
回答 13查看 126.3K关注 0票数 56

有没有办法仅仅通过查看IP地址就能知道国家名称?我的意思是,各国是否有特定的IP地址范围?例如,澳大利亚的IP地址只能在123.45.56.89 - 231.54.65.98范围内(仅举个例子)

EN

回答 13

Stack Overflow用户

回答已采纳

发布于 2012-03-21 18:10:44

我认为您正在寻找的是IP地理位置数据库或服务提供商。有很多,有些是免费的(按需付费)。

虽然我以前没有用过这项服务,但它声称是实时的。https://kickfire.com/kf-api

这是另一个来自抽象API的IP地理位置API - https://www.abstractapi.com/ip-geolocation-api

但只要在谷歌上搜索IP geo,你就会得到比你需要的更多的结果。

票数 22
EN

Stack Overflow用户

发布于 2014-08-07 14:39:46

不,您不能- IP地址会不时地重新分配和重新分配,因此IP到位置的映射也会随着时间的推移而改变。

如果你想要找出一个IP地址当前映射到的位置,你可以下载一个地理位置数据库,比如GeoLite from MaxMind,或者使用像http://ipinfo.io (我自己的服务)这样的应用程序接口,它也会给你额外的详细信息:

代码语言:javascript
复制
$ 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
}
票数 32
EN

Stack Overflow用户

发布于 2017-11-07 01:34:57

您可以使用ipdata.co执行查找

此答案使用的“测试”API键非常有限,并且仅用于测试几个调用。Signup为您自己的免费应用编程接口密钥,每天获得多达1500个开发请求。

代码语言:javascript
复制
curl https://api.ipdata.co/23.221.76.66?api-key=test

Ipdata在全球范围内有10个端点,每个端点每秒能够处理超过10,000个请求!

给出

代码语言:javascript
复制
{
    "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
    }
}⏎ 
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9802046

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档