关注这篇文章:redis store 128 bit number
如何使用ipv6地址进行词典搜索。
如果我像这样使用它:
ZADD index 0 8000::/24
ZADD index 0 2001:db8:1f89::/48
ZADD index 0 2001:db9:1f89::/48
ZADD index 0 1234:5678:abcd:effa:4200:1972::/112
ZRANGEBYLEX index [2001:0db8:0000:85a3:0000:0000:ac1f + LIMIT 0 1
1) "2001:db8:1f89::/48"
但:
ZRANGEBYLEX index [2001:1db8:0000:85a3:0000:0000:ac1f + LIMIT 0 1
1) "2001:db8:1f89::/48"
一个主意 ?
将CIDR转换为IP范围并添加到SET startUP。在添加IP之前,将其数字填充为零!示例:2001:db8:cafe:1:0:0:0:100 - > 2001:0db8:cafe:0001:0000:0000:0000:0100。
并使用“ZREVRANGEBYLEX键[2001:0db8:cafe:0001:0000:0000:0000:0200 - LIMIT 0 1”来获取范围的起始IP。