import os
from scapy.all import *
import sys
from threading import Thread
from optparse import OptionParser
def sweep(ip)
try:
pakt=Ether(dst="ff:ff:ff:ff:ff:ff",src="00:0c:29:b6:71:0c")/ip(pdst=ip,psrc="192.168.1.110",hwsrc="00:0c:29:b6:71:0c",hwdst="00:00:00:00:00:00")
result=srp1(pakt.timeout=1,verbose=0)
if result:
time.sleep(0,1)
print ip + ",在线"
return
except:
pass
if __name__=="__main__":
usage="Usage: %prog -f <filename> -i <ip address>"
parse=OptionParser(usage=usage)
parser.add_option("-f","--file",type="string",dest="filename",help="specify the IP address file")
parser.add_option("-i","--ip",type="string",dest="address",help="specify the IP address")
(options,args)=parser.parse_args()
filename=options.filename
address=options.address
if (filename=None and address=None)
print "请输入正确的ip地址或者ip文件"
sys.exit()
if filename:
if not os.path.exists(filename):
print "文件不存在,请重新输入。"
sys.exit()
f=open(filename,"r")
for i in f.readlines():
ip=i.strip("\n")
t=Thread(target=sweep,args=(ip,))
t.start()
if address:
IP=address.split(".")[0] + "." + address.split(".")[1] + "." +address.split(".")[2]+ "."
for i in range(1,255):
ip=IP + str(i)
t=Thread(target=sweep,args=(ip,))
t.start()
python发送arp包
最新推荐文章于 2024-07-11 13:49:50 发布