ip4regionMaker
一. 介绍
ip4region.db
的生成工具, 生成后, 可以提供给 https://gitee.com/RickieL/ip4region
和 https://gitee.com/RickieL/ip4regionServer
使用.
二. 安装教程
方法1
直接在release页面根据不同的操作系统下载对应版本
方法2
go get gitee.com/RickieL/ip4regionMaker.git
此时会在$GOPATH/bin
目录下有个 ip4regionMaker 的本地执行文件.
方法3
git clone https://gitee.com/RickieL/ip4regionMaker.git
cd ip4regionMaker
go build
三. 使用说明
./ip4regionMaker -s ip.merge.txt
此时会生成一个 ip4region.db
的二进制文件
四. ip.merge.txt
获取方法
wget https://gitee.com/RickieL/ip4regionMaker/raw/master/ip.merge.txt
ip.merge.txt 文件的格式说明
0.0.0.0|0.255.255.255|0|0|0|内网IP|内网IP
1.0.0.0|1.0.0.255|澳大利亚|0|0|0|0
1.0.1.0|1.0.3.255|中国|0|福建省|福州市|电信
ip段起始|ip段结束|国家|地区|省份|城市|运营商
0
表示该字段为空
其他说明
当前文件来自 https://gitee.com/lionsoul/ip2region/tree/master/data
, 我修改了121.4.0.0|121.5.255.255
的数据.
本工具参考了 https://gitee.com/lionsoul/ip2region
的实现,或者说,根据大佬提供的方法进行的go语言生成db文件的实现,但是和他的实现方式又做了稍稍变更。至少header block的长度我调整到16k了,理论可以存储2048个ip index partion, 当前按计算来说,有2003个index partion, 所以必须扩展header block到16k。(原来的8k,只能存储1024个index partion)