解析 ipip.net datx 格式的Erlang代码

解析ipip.net datx 文件

ipip.net 提供datx 格式的IP库文件, 不再提供 dat格式的IP地址库文件更新,

1、为方便用户使用,现统一提供DATX 格式的数据版本,查询性能比 DAT 版本快很多倍,具体请见后台文档说明。

2、本付费服务仅授权于一家公司内使用,如果您需要给关联公司使用,请与我们的售前客服联系。

ipip.net 本身并没有提供Erlang的解析代码,所以就自己参照Python解析代码实现了一个,edatx.

这个实现支持免费版IP库: 17monipdb.datx

代码示例

1
2
3
4
5
% 查询地级市精度的IP库

City = edatx_city:init("/path/to/mydata4vipday2.datx").
io:format("~ts,~ts,~ts,~ts~n", edatx_city:find("8.8.8.258", City)).
io:format("~ts,~ts,~ts,~ts~n", edatx_city:find("255.255.255.255", City)).

edatx 的 github 地址

https://github.com/YYChildren/edatx

数据下载地址

https://www.ipip.net/product/ip.html