【发布时间】:2021-09-08 22:45:42
【问题描述】:
我有一个 IP 地址,并获得了另外两个 IP 地址,它们共同创建了一个 IP 范围。我想检查第一个 IP 地址是否在此范围内。如何在不使用循环的情况下在 Python 中找到它?
【问题讨论】:
-
如果您拥有每个 IP 的网络子网掩码,并且第一个 IP 子网掩码相同或更大,则此 IP 在该范围内。如果您没有子网掩码,您可以使用二进制 AND 尝试从那里获取 IP 的网络部分,您可以查看它是否在范围内。
-
IP 以什么格式给出?
-
如果它是可迭代的,那么
min_ip[0] <= cur_ip[0] < max_ip[0]会告诉你给定的系列是否在一个范围内。然后可以对此进行解释以确定是否所有值都匹配 -
你能举个例子吗?示例 IP 范围为 142.250.0.0 - 142.251.255.255