import os
ipRange = []
for i in range(1, 254):
ipRange.append('192.168.5' + '.' + str(i))
for e in ipRange:
print os.system('nslookup ' + str(e))
这为每个ip输出nslookup的完整输出 - 有没有办法丢弃空结果并使输出看起来更像这样?
192.168.5.5 testbox4
192.168.5.6 box3
192.168.5.8 hellobox
192.168.5.9 server2012
192.168.5.18 dnsbox
192.168.5.19 sallysbox
192.168.5.20 bobsbox
192.168.5.21 serverx
答案 0 :(得分:2)
您需要使用系统吗?没有系统调用就可以了:
import socket
for i in range(0, 255):
ipa = "130.233.192." + str(i)
try:
a = socket.gethostbyaddr(ipa)
print (ipa, a[0])
except socket.herror:
pass
编辑:如果你想查询.255,则将255更改为256,但在C类网络中,这是广播地址而不是DNS。如果您正在通过A类或B类网络进行拖网,那么.255也可能有效