PHP中的maxmind GeoIP API是否要求IP地址的所有4段都准确


Does the maxmind GeoIP API in PHP require all 4 segments of the IP address to be accurate?

我正在使用此包中的geoap_record_by_addrhttps://github.com/maxromanovsky/php-maxmind-geoip.

我的问题是,我能安全地"清零"最后一段IP地址,并获得相同的国家和地区吗?

例如

geoip_record_by_addr($gi, '123.145.167.0')

而不是

geoip_record_by_addr($gi, '123.145.167.189')

简短的回答是肯定的。没有理由认为a/24网络中的所有地址都会提供相同的结果。

我认为,这个问题与maxmind的逻辑无关,而是与网络组织有关。maxmind-是一个简单的数据库网络ip的提供者和众所周知的注册地址。理论上,如果您使用123.123.123.1,您可以找到一些东西,但我不确定来自网络123.123.123.1/24(123.123.123.)的所有IP是否来自同一区域
做一些研究比较好。写一个脚本来选择50-100个网络
例如IP 86.85.65.
,并从哪里检查所有这些IPS(从1到255)。必须来自荷兰。然后选择另一个并再次检查
然后检查结果的离散度=)))我认为这将是对您最好的解决方案(也是最正确的)。

顺便说一句,您的示例IP无效('123.456.789.0')。ipv4地址的最大值为255.255.255(这是广播IP以及来自子网的所有最后一个IP)