有没有办法快速ping多个设备

时间:2014-04-14 16:46:11

标签: python networking ping

您好我正在编写一个脚本,通过从arp获取设备mac地址来检查网络以查看certen人是否已连接,我大概是0.5%通过而且我遇到了问题。我目前要ping所有IP地址192.168.1.2-254。现在,这是一个非常缓慢的更快的方式:

代码:

inport os
ipcount=2
ipup=[]

while ipcount<254:
 response=os.system("ping -c 1 192.168.1." + str(ipcount))
 if response == 0:
   ipup.append("192.168.1."+str(ipcount))
 ipcount=ipcount+1

1 个答案:

答案 0 :(得分:1)

在许多线程中并行ping。大部分时间都花在等待响应上,因此多个线程可以真正加快进程。可能你想提前创建线程并且可能重用它们,因为线程创建非常慢。

编辑:

另一种方法是使用异步网络IO实现ping。