我正在使用 Ruby NetAddr::Tree 类来保存一堆 CIDR 对象,但我需要一种方法来将 CIDR 对象压缩到更大的子网中。
我想要一种获取 IP 的方法,例如:
12.26.8.0/21
12.26.16.0/21
12.26.24.0/21
12.26.32.0/21
12.26.40.0/21
12.27.152.0/21
并合并树中的相关地址范围,以便输出如下:
12.26.8.0/21
12.26.16.0/20
12.26.32.0/20
12.27.152.0/21
我查看了文档,但找不到任何方法来做到这一点。如果需要,我很高兴不再使用 NEtAddr::Tree,重要的是它需要一个 IP/网络掩码字符串列表,将它们合并并逐行输出。