Python中使用netaddrIPNetwork()生成随机IP网络
发布时间:2024-01-08 12:25:16
Python中使用netaddr库中的IPNetwork()函数可以生成随机的IP网络。IPNetwork()函数接受一个参数,即一个IP地址和网络掩码的字符串。
以下是一个使用netaddr库生成随机IP网络的例子:
from netaddr import IPNetwork
import random
def generate_random_ip_network():
# 随机生成一个IPv4地址
ip = ".".join(str(random.randint(0, 255)) for _ in range(4))
# 随机生成一个网络掩码
prefix_len = random.randint(0, 32)
# 使用IPNetwork()函数生成随机IP网络
ip_network = IPNetwork(f"{ip}/{prefix_len}")
return ip_network
# 生成随机IP网络,并打印结果
for _ in range(10):
random_ip_network = generate_random_ip_network()
print(random_ip_network)
在上面的例子中,我们定义了一个函数generate_random_ip_network(),该函数会随机生成一个IP地址和网络掩码,并使用IPNetwork()函数生成随机IP网络。使用random.randint()函数来生成随机的IP地址和网络掩码。
然后,我们使用一个循环来生成10个随机IP网络,并打印结果。运行以上代码会输出类似下面的结果:
240.119.159.31/22 152.45.120.102/4 126.16.51.243/25 172.85.48.57/30 27.70.187.116/15 113.32.45.74/27 50.83.153.86/18 162.205.193.186/18 17.2.250.216/24 235.2.153.160/25
以上就是使用netaddr库中的IPNetwork()函数生成随机IP网络的例子。通过调整生成IP地址和网络掩码的范围,可以产生不同的随机IP网络。
