我有一个 CVS 数据库,它提供了 V6 范围 2001:1800::/32
和国家/地区代码 US
。到目前为止,我将它们放在 $ip_address
$cc_code
中。
我需要将每个范围存储在 MySQL 中。我还需要获取用户 IP 地址并获取国家/地区代码。我已经通过存储开始和结束范围让 V4 工作了,但数据库已经给了我这个。所以我一直坚持让 V6 工作。我做了一些谷歌搜索,但找不到太多相关内容。也许我问错了?那么这里有人可以给我一些建议吗?我已经知道如何检测V4和V6。所以到目前为止我已经完成了很多工作。只是存储范围/代码并在我陷入困境的地方将其退休。
最佳答案
IP 地址基本上都是整数,您只需转换它们并使用基本数学技能进行交互即可:WHERE $ip BETWEEN start
AND end
。 http://www.samclarke.com/2011/07/php-ipv6-to-128bit-int/
关于php - 在 PHP MySQL 中存储和搜索 IPv6 范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9243216/