- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
python 3.3.4网络地址 7.12Mac OSX 10.8.5
我有一个不会与 netaddr.cidr_merge() 合并的 IPNetworks 列表,即使有些是相邻的。我做错了什么吗?
import netaddr
from netaddr import IPNetwork
iplist =[
IPNetwork('10.105.205.8/29'),
IPNetwork('10.105.205.16/28'),
IPNetwork('10.105.205.32/27'),
IPNetwork('10.105.205.64/26'),
IPNetwork('10.105.205.128/26'),
IPNetwork('10.105.205.192/28'),
IPNetwork('10.105.205.208/29'),
IPNetwork('10.105.206.48/28'),
IPNetwork('10.105.206.80/28')
]
>>> summary = netaddr.cidr_merge(iplist)
>>> summary == iplist
True
netaddr.cidr_merge(ip_addrs)
一个函数,它接受一个可迭代的 IP 地址和子网序列,将它们合并到尽可能小的 CIDR 列表中。它尽可能合并相邻的子网,包含在其他子网中的子网,并删除任何重复项。
参数:ip_addrs——一个可迭代的 IP 地址和子网序列。返回:IPNetwork 对象的汇总列表。
最佳答案
@duskwuff -
感谢您的回复。我同意第一部分,但第二部分……我想我知道你的观点,但不是 100% 准确。例如,如果我从上面获取一个编辑列表,并附加 10.105.205.0/29。子网将汇总为/25。是的,它们必须是 2 的幂,但是在 netaddr 汇总之前,整个子网的所有部分都必须存在,无论它们的大小是否相等。
iplist =[
IPNetwork('10.105.205.8/29'),
IPNetwork('10.105.205.16/28'),
IPNetwork('10.105.205.32/27'),
IPNetwork('10.105.205.64/26'),
]
>>> iplist.append(IPNetwork('10.105.205.0/29'))
>>> netaddr.cidr_merge(iplist)
[IPNetwork('10.105.205.0/25')]
关于python - 使用 python netaddr cidr_merge 汇总相邻子网,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24660206/
我想使用 netaddr 查找给定地址的子网起始地址(网络 ID)。 输入示例:192.168.1.130/26 示例输出:192.168.1.0 192.168.1.64 192.168.1.128
我想使用 netaddr 库将 netmask 转换为 wildcard mask 所以输入是 netmask = 255.255.255.0 输出是 wildcard = 0.0.0.255 或者输
我必须在这里做错事......我目前正在尝试使用内置模块验证 ip 是否在特定子网内。 我正在使用 activepython: ActivePython 3.1.2.3 (ActiveState So
我正在尝试使用 python 中的 netaddr 超网 IP 网络列表。 代码: import netaddr from netaddr import * iplist = [IPNetwork('
我正在按照安装说明安装 netaddr ( https://pythonhosted.org/netaddr/installation.html ),但不确定如何完成安装。 我已经从 https://
我试图了解 https://pythonhosted.org/netaddr/tutorial_01.html 上的 netaddr Python 教程中的某些代码是如何运行的。特别是以下教程。 Su
我有一个包含以下标题的静态 CSV 文档 City State Zip Latitude Longitude Subnet Wired1 Wired2 Wireless1
netaddr python 模块跳过 ImportError。我必须创建一个函数来使用 try/finally 来捕获 ImportError,然后重做 try/except 以返回打印值。想知道是
python 3.3.4网络地址 7.12Mac OSX 10.8.5 我有一个不会与 netaddr.cidr_merge() 合并的 IPNetworks 列表,即使有些是相邻的。我做错了什么吗?
我正在使用 Ruby NetAddr::Tree 类来保存一堆 CIDR 对象,但我需要一种方法将 CIDR 对象压缩到更大的子网中。 我想要一种获取 IP 的方法: 12.26.8.0/21 12.
使用 ruby 2.0.0,如何将 IPAddr 类型的对象转换为 NetAddr::CIDR? 例子: IPAddr.new("1a03:a240:0100::/56") IPAddr.new(
我可以传递“ip_list”和“banned_subnets”中的文件吗?我有多个 IP 列表,需要与多个子网匹配,并且不可能在脚本中将它们全部列出。为此,我创建了两个文件 ipaddr_list(其
我对 python 和 mako 非常陌生,我可能在基本概念上遇到困难。我有工作模板,但如果我可以使用 netaddr 模块来处理模板中的 IP 地址,我的 CSV 输入可以得到很大的清理。我想做的是
我正在使用 python-netaddr 库处理 IP 地址和子网。我阅读了 netaddrd 的完整文档:Netaddr documentation .但是没有找到解决我的问题的方法。我有一个 IP
我是一名优秀的程序员,十分优秀!