python,,importthre


importthreadingimporttimefromnetaddrimportIPNetwork,IPAddress--snip--#监听的主机host="192.168.0.187"#扫描的目标子网subnet="192.168.0.0/24"#自定义的字符串,我们将在ICMP相应中进行核对。magic_message="PYTHONRULE!"#批量发送UDP数据包defudp_sender(subnet,magic_message):time.sleep(5)sender=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)foripinIPNetwork(subnet):try:sender.sendto(magic_message,("%s")%ip,65212)except:passt=threading.Thread(target=udp_sender,args=(subnet,magic_message))t.start()--snip--try:whileTrue:--snip--#print"ICMP-->TYPE:%dCode:%d(icmp_header.type,icmp_header.code)#检查类型和代码值是否为3ificmp_header.code==3andicmp_header.type==3:#确认相应的主机在我们目标子网之内ifIPAddress(ip_header.src_address)inIPNetwork(subnet):ifraw_buffer[len(raw_buffer)-len(magic_message):]==magic_messageprint"Hostup:%s"%ip_header.src_address.


本文出自 “专注php” 博客,请务必保留此出处http://jingshanls.blog.51cto.com/3357095/1833725

python

评论关闭