IPv6 归属地
描述:IPv6归属地是将网络空间地图测绘技术与人工智能(AI)算法相结合,利用动态密度聚类算法和基于多层神经网络的IP地址定位算法,完成IP地址地理位置定位。IPv6归属地数据接口是IP地址定位数据库的在线调用接口,分为街道级、区县级、城市级共3个版本类型,能够满足客户不同定位精度的需求。
- 街道级
- 区县级
- 城市级
- 按年付费
- 按量付费
- 产品说明
- API示例
- 应用领域
- SDK
版本说明
|
街道级 | 区县级 | 城市级 | ||||
---|---|---|---|---|---|---|---|
适用用户 | 对定位精度要求比较高的企业用户 | 企业或个人开发者 | 企业或个人开发者 | ||||
数据描述 |
2^128全量IPv6,区县级别
中国地区(不含港台地区)街道级别
IP最新出现位置,覆盖更全范围
含运营商数据
|
2^128全量IPv6,区县级别
中国大陆地区(不含港台地区)区县级别
含运营商数据
|
2^128全量IPv6,城市级别
中国大陆地区(不含港台地区)城市级别
含运营商数据
|
||||
更新频率 | 每日更新 | 每日更新 | 每日更新 | ||||
坐标系 | GPS和百度 | GPS和百度 | GPS和百度 | ||||
区域类型 | 单区域 | 单区域 | 单区域 | ||||
查询速度 |
1000次/秒
|
1000次/秒
|
1000次/秒
|
||||
付费方式 |
1.按量付费,按次扣费
2.按年付费,每日限额
|
1.按量付费,按次扣费
2.按年付费,每日限额
|
按年付费,每日限额 |
技术原理
使用方式
-
购买
第一步
1、选择规格
2、支付宝付款
3、查收购买成功确认邮件 -
查看KEY
第二步
1、前往 个人中心>我的订单查看KEY
2、多次购买产品版本、付费方式、规格完全一致,生成一个key
3、多次购买产品版本、付费方式、规格有一项不一致,生成多个key
-
使用
第三步
1、API调用参考对应的API示例
查空率
1.查询成功且返回有效数据,(返回有效数据:查询出的数据不为空且定位精度和承诺定位精度一致),每次扣除1个查询额度。
2.查询成功但未返回有效数据,(未返回有效数据:查询出的数据为空或定位精度和承诺定位精度不一致),每50次扣除1个查询额度。
注意事项
1.数据覆盖中国地区(不含港、台地区),如需境外地区数据库请与客服联系。
2.根据国家主管部门要求,IP归属地将敏感数据予以屏蔽,如果您有特殊需要,请联系客服,我们将依据相关规定,提供相应的数据服务支持。
API接口
- 接口地址:https://api.ipplus360.com/ip/geo/v1/ipv6/
- 请求方式:HTTPS GET/POST
- https://api.ipplus360.com/ip/geo/v1/ipv6/?key=您申请的key&ip=您需要查询的ip&coordsys=WGS84
- 调用工具:调用说明:已购产品版本的key值,只能用于该版本API调用,不能用于其他版本;
请求参数
名称 | 必填 | 类型 | 示例值 | 描述 |
---|---|---|---|---|
key | 是 | String | 您申请的key | |
ip | 是 | String | 2001:0250:0211:ffff:ffff:ffff:ffff:ffff | 查询的IP |
coordsys | 否 | String | WGS84 | 坐标系,分为WGS84和BD09,默认为WGS84 |
返回参数
名称 | 类型 | 示例值 | 描述 | |
---|---|---|---|---|
code | String | Success | 状态码 | |
data | continent | String | 亚洲 | 大洲 |
country | String | 中国 | 国家 | |
owner | String | imported inetnum object for IIINT | 所属机构 | |
isp | String | China Education and Research Network Center,Tsinghua University,Beijing 100084 | 运营商 | |
zipcode | String | 10038 | 邮编 | |
timezone | String | UTC+8 | 时区 | |
accuracy | String | 城市 | 精度 | |
source | String | 数据挖掘 | 采集方式 | |
areacode | String | CN | 国家编码 | |
adcode | String | 110100 | 行政编码 | |
asnumber | String | 4538 | 自治域编码 | |
lat | String | 40.009424 | 纬度 | |
lng | String | 116.332556 | 经度 | |
radius | String | 105.2321 | 定位半径 | |
province | String | 北京市 | 省份 | |
city | String | 北京市 | 城市 | |
charge | Boolean | true | 本次查询是否扣费 | |
msg | String | 查询成功 | 状态码描述 | |
ip | String | 2001:0250:0211:ffff:ffff:ffff:ffff:ffff | 查询的IP | |
coordsys | String | WGS84 | 坐标系 |
状态码描述
HTTP状态码 | 业务状态码 | 描述 |
---|---|---|
200 | Success | 查询成功 |
200 | NoData | 查询成功,但是结果为空 |
400 | MissingParameter | 参数key缺失 |
400 | MissingParameter | 参数ip缺失 |
400 | InvalidParameter | 参数ip格式不对 |
400 | DailyLimited | 每日查询次数已满 |
429 | Throttling | 请求过快 |
400 | UnknownError | 客户端未知错误 |
403 | KeyNotFound | key不存在 |
403 | KeyUnauthorized | key未授权 |
403 | KeyExpired | 不在有效期 |
403 | KeyNotEnoughBalance | 余额不足 |
403 | KeyDisabled | key被禁用 |
500 | InternalError | 服务器内部错误 |
503 | ServiceUnavailable | 服务器临时错误 |
返回示例值
{
"code":"Success",
"data": {
"continent":"亚洲",
"country":"中国",
"owner":"imported inetnum object for IIINT",
"isp": "China Education and Research Network Center,Tsinghua University,Beijing 100084",
"zipcode":"100038",
"timezone":"UTC+8",
"accuracy":"城市",
"source":"数据挖掘",
"areacode":"CN",
"adcode":"110100",
"asnumber":"4538",
"lat":"40.009424",
"lng":"116.332556",
"radius":"105.2321",
"province":"北京市",
"city":"北京市",
},
"charge":true,
"msg":"查询成功",
"ip":"2001:0250:0211:ffff:ffff:ffff:ffff:ffff",
"coordsys": "WGS84"
}
应用领域
业务风控反欺诈
分析IP归属地信息,识别虚假流量和欺诈账号,保障账号和交易安全,帮助企业持续优化风控与反欺诈模型,降低经济损失。广告投放
利用IP地址进行精准广告投放,不涉及用户的隐私和授权问题。对不同地域和用户群制定个性化营销策略,提高在线广告投放的转化率。网络性能优化
通过IP地址数据进行网络性能分析,选择传输速度最快的网络路径及运营商进行路由,针对性解决问题提升网络服务质量,提高用户满意度。在线用户匹配
当用户关闭手机GPS功能时,可以采用IP地址归属地服务,快速为用户匹配同城区域内的潜在朋友。个性化内容展示
为了精确匹配不同客户的需求,通过IP地址归属位置信息,实现更佳的个性化内容推荐,提高营销转化率。网络威胁溯源
通过IP地址数据可提升网络威胁溯源能力,助力企业构筑端到端的威胁防线,使网络空间更透明可控。IP地理位置可视化
使用IP地理位置数据可以帮助您在大数据可视化中赋予地图更丰富的内容,供进行IP地理维度分析。法律合规
社交媒体平台加入信息发布人的IP归属地,增加置信度。科学研究
通过IP地址归属地数据,可以对学术研究和网络实验提供强有力的支撑。-
安卓(客户端)
-
Java(服务端)
-
Python(服务端)
那么通过埃文科技提供的软件开发工具包(SDK),可以让您更轻松地使用已购买的API。
implementation fileTree(dir: 'libs',includes: ['*.aar'])
implementation group: 'com.squareup.okhttp3', name: 'okhttp', version: '4.10.0'
implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.14.2'
implementation group: 'com.fasterxml.jackson.core', name: 'jackson-core', version: '2.14.2'
implementation group: 'com.fasterxml.jackson.core', name: 'jackson-annotations', version: '2.14.2'
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
WebServiceClient client = AiWenClient.init("您的公key", this);
new Thread(() -> {
try {
RespLocationCity city = client.city("您要查询的IP");
runOnUiThread(() -> {
System.out.println(city.getData().getCity());
System.out.println(city.getData().getProv());
System.out.println(city.getData().getLat());
System.out.println(city.getData().getLng());
});
} catch (IOException | ApiException e) {
throw new RuntimeException(e);
}
}).start();
}
}
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
WebServiceClient client = AiWenClient.init("您的私key", this);
new Thread(() -> {
try {
RespLocationCity city = client.city("您要查询的IP");
runOnUiThread(() -> {
System.out.println(city.getData().getCity());
System.out.println(city.getData().getProv());
System.out.println(city.getData().getLat());
System.out.println(city.getData().getLng());
});
} catch (IOException | ApiException e) {
throw new RuntimeException(e);
}
}).start();
}
}
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
new Thread(() -> {
try {
RespLocationDistrict district = AiWenClient.getMyIP(MainActivity.class);
runOnUiThread(() -> {
System.out.println(district.getData().getCity());
System.out.println(district.getData().getProv());
System.out.println(district.getData().getLat());
System.out.println(district.getData().getLng());
});
} catch (IOException | ApiException e) {
throw new RuntimeException(e);
}
}).start();
}
}