如何获取IP地址列表?


问题内容

我有一系列的IP地址:

1.48.0.0 - 1.51.255.255

如何获取IP地址列表?


问题答案:
from struct import *
from socket import *

for ip in xrange(unpack('!I',inet_pton(AF_INET,"1.47.0.0"))[0],unpack('!I',inet_pton(AF_INET,"1.51.255.255"))[0]):
    print inet_ntop(AF_INET,pack('!I',ip));

f = unpack('!I',inet_pton(AF_INET,"1.47.0.0"))[0]
l = unpack('!I',inet_pton(AF_INET,"1.51.255.255"))[0]
while f < l:
    print inet_ntop(AF_INET,pack('!I',f));
    f = f + 1

这样,遍历IPv6地址也将非常容易,但是由于IPv6空间的巨大性,我不推荐这样做。