我想列出一个CIDR范围列表,它代表我指定的CIDR范围之外的地址.
作为简化示例:
如果我的IP范围从8.8.8.8到8.8.8.10,我可以用CIDR范围8.8.8.8/31和8.8.8.10/32来表达.但是我怎么能用CIDR表示法表达这些范围的反面呢?
我是CIDR的新手,所以如果这种工具已经以流行的形式存在,请原谅我的问题.
作为一个补充说明,我想最终在R中实现这个过滤,所以如果你能用R来表达你的答案,那将是更好的但我真的最感兴趣的是如何构建算法来解决这类问题.
基本上,如果您有一个 IP 地址范围 (X, Y),并且想要表示不在 (X, Y) 范围内的所有 IP 地址,那么它可以表示为两个范围:(0.0.0.0, X-1) 和(Y+1,255.255.255.255)。
然后您只需将这两个范围转换为 CIDR 即可。一个范围可能会产生多个 CIDR。
在特定示例中,您需要范围:(0.0.0.0, 8.8.8.7) 和 (8.8.8.11, 255.255.255.255)。我不知道如何在 R 中执行此操作,但这里有一个方便的计算器: http: //www.ipaddressguide.com/cidr
(0.0.0.0、8.8.8.7):
(8.8.8.11、255.255.255.255):
8.8.8.11/32
8.8.8.12/30
| 归档时间: |
|
| 查看次数: |
274 次 |
| 最近记录: |