我正在尝试使用MaxMind GeoIP(Geo lite 2)数据库。
在来自MaxMind网站的(GeoLite2-Country-CSV.zip)源文件GeoLite2-Country-Blocks.csv中,我有这一行:
:: FFFF:87.197.0.0,112,3057568,3057568 ,,,,, 0,0
我有一个起始IPv4 IP地址:: ffff:87.197.0.0,我有IPv6网络掩码长度112,如何计算JAVA范围内的最后一个IP?
原因是我将CSV格式的MaxMind Geo lite 2数据库导入PostgreSQL数据库,因此我需要将导入的起始IP地址导入一个DB列,将最后的IP地址导入另一个DB列。
感谢。
伊万
答案 0 :(得分:0)
如果您使用的是Postgres,则应使用cidr or inet type。使用这些类型,您可以以::ffff:87.197.0.0/112
(或87.197.0.0/16
形式插入数据以用于非IPv6映射地址。使用网络类型,您可以在进行查询时利用Pg' network functions。