首页 > 解决方案 > 如何在python中从真实IP变成自动IP范围?

问题描述

如何创建 IP 范围,例如我的原始 IP 有第一个 2 127.0.0.1 第二个 128.0.0.1,如果我使用该 IP 作为 IP 范围,我想要:127.0.0.1 - 127.0.255.255 等等上,这是我的示例代码:

list_data = ["127.0.0.1", "128.0.0.1"]
for i in range(255):
    for j in range(255):
        ip = list_data+".%d.%d" % (i, j)
        print (sb+fg+'[RANGE-IP]   ===>   '+ip)
        open('IP.txt', 'a').write(ip + "\n")

标签: python

解决方案


使用这种方式很容易实现

>>> import ipaddress
>>> [str(ip) for ip in ipaddress.IPv4Network('192.0.2.0/28')]
['192.0.2.0', '192.0.2.1', '192.0.2.2',
'192.0.2.3', '192.0.2.4', '192.0.2.5',
'192.0.2.6', '192.0.2.7', '192.0.2.8',
'192.0.2.9', '192.0.2.10', '192.0.2.11',
'192.0.2.12', '192.0.2.13', '192.0.2.14',
'192.0.2.15']

对于您的情况,它看起来像IPv4Network('127.0.0.0/16')


推荐阅读