python多线程ping及arpping扫描工具的实现,pythonarpping,这是一个python多线
python多线程ping及arpping扫描工具的实现,pythonarpping,这是一个python多线
这是一个python多线程ping和arpping扫描工具实现的源码。
这里还有待修改的地方,例如:希望能扫描一个地址范围,使用IPy模块可以实现对ip地址的处理,实现扫描一个网段的ip,不用像现在实现的这么笨拙。应该有更巧妙的方法。
代码中需要用到的python模块方法有:subprocess、python Queue、python re
#/usr/bin/env python#--encoding=UTF-8--import subprocessfrom threading import Threadfrom Queue import Queueimport renum_ping_threads = 3num_arp_threads = 3in_queue = Queue()out_queue = Queue()#ips = ["10.65.10.50","10.65.10.80"]ips = ["你要扫描的ip范围"]def ping_scan(i,iq,oq):while True:ip = iq.get()print "[*]Thread %s: Pinging %s" % (i,ip)ret = subprocess.call("ping -c 1 %s" % ip,shell = True,stdout = open('/dev/null','w'),stderr = subprocess.STDOUT)if ret == 0:print "[*]%s: is alive." % ipoq.put(ip)else:print "[*]%s: did not respond" % ipiq.task_done()def arping_scan(i,oq):while True:ip = oq.get()p = subprocess.Popen("arping -c 1 %s" % ip,shell = True,stdout = subprocess.PIPE)out = p.stdout.read()result = out.split()pattern = re.compile(".*:.*:.*")macaddr = Nonefor item in result:if re.search(pattern,item):macaddr = itemprint "[*]IP Address: %s | Mac Address: %s" % (ip,macaddr)oq.task_done()#www.iplaypy.comfor ip in ips:in_queue.put(ip)for i in range(num_ping_threads):worker = Thread(target = ping_scan,args = (i,in_queue,out_queue))worker.setDaemon(True)worker.start()for i in range(num_arp_threads):worker = Thread(target = arping_scan,args = (i,out_queue))worker.setDaemon(True)# worker.Daemon = Trueworker.start()print "[*]Main Thread Waiting."in_queue.join()out_queue.join()print "[*]Done!"
python ping相关文章推荐:
Python pexpect包应用之快速多线程ping测试;
python实现多线程Ping网段方法源码
编橙之家文章,
相关内容
- python调用win7命令清理系统无用进程方法,pythonwin7,求大
- python中apt简单使用工具,pythonapt工具,python中apt简单
- django实现简单的数据库内容显示,django实现数据库,dj
- 动态filter查询数据Django实现方法,filterdjango,这是我在学
- Python jpg图片裁剪处理源码,,这个Python jpg
- Python实用又常用函数工具方法分享,python函数,这是我自
- Python shelve方法完成信息录入小工具源码,pythonshelve,此
- Python cookbook守护进程代码示例,pythoncookbook,关于python守
- python自动完成扫描端口使用情况示例,python自动完成
- 如何用python方法检测UDP端口,python检测udp端口,如何用
评论关闭