我正在尝试获取 LAN 连接服务器的主机名,因此我可以使用主机名对这些服务器运行查询:
import socket
IP_RANGE = 10
hostNamesList = []
socket.setdefaulttimeout(0.1)
for i in range(IP_RANGE):
try:
hostNamesList.append(socket.gethostbyaddr("192.168.1.%s" % i)[0])
except:
pass
print hostNamesList
上面的代码需要几分钟来扫描选定的 IP 范围,即使我将超时设置为 0.1 秒。
我做错了什么,或者有什么方法可以更快地获取主机名吗?