欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python3利用scapy局域網(wǎng)實(shí)現(xiàn)自動多線程arp掃描功能

 更新時間:2021年01月21日 11:49:24   作者:Junе  
這篇文章主要介紹了Python3利用scapy局域網(wǎng)實(shí)現(xiàn)自動多線程arp掃描功能,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

一、所需Python庫

from scapy.all import *
import threading

二、實(shí)現(xiàn)ip掃描

1.獲取c段ip地址

在ARP()里面有ip地址,我們可以從里面提取出前3段出來

ARP().show()

然后通過從后查找最后一個.得到最后一段位數(shù),然后總長度-最后一段長度就能取出前3段

tip=ARP().psrc
print(tip[:(len(tip)-tip[::-1].find('.'))])

2.arp掃描函數(shù)實(shí)現(xiàn)

然后就是建立函數(shù)實(shí)現(xiàn)掃描了,構(gòu)造arp包->發(fā)送包->判斷是否響應(yīng)->輸出信息

def ScanIp(ip):
	pkt=Ether(dst="ff:ff:ff:ff:ff:ff")/ARP(pdst=ip)
	res=srp1(pkt,timeout=10,verbose=0)
	if res:
		print(res.psrc)
		print(res.hwsrc)

然后來在加個判斷返回的ip跟我們要掃描的ip是否一致,然后加上異常處理

def ScanIp(ip):
	pkt=Ether(dst="ff:ff:ff:ff:ff:ff")/ARP(pdst=ip)
	try:
		res=srp1(pkt,timeout=10,verbose=0)
		if res.psrc==ip:
			print(res.psrc)
			print(res.hwsrc)
	except:
		pass

現(xiàn)在把輸出結(jié)果美化一下,不然直接print很難看

def ScanIp(ip):
	pkt=Ether(dst="ff:ff:ff:ff:ff:ff")/ARP(pdst=ip)
	try:
		res=srp1(pkt,timeout=10,verbose=0)
		if res.psrc==ip:
			print('IP     MAC')
			print('[+]'+res.psrc+' '+res.hwsrc)
	except:
		pass

嘗試調(diào)用一下

ScanIp('192.168.123.1')

現(xiàn)在看起來就很舒服

3.多線程

現(xiàn)在我們只需要循環(huán)一下c段ip然后用多線程跑起來就行了

for i in range(1,256):
	ip=tip+str(i)
	Go=threading.Thread(target=ScanIp,args=(ip,))
	Go.start()

然后看一下效果好像不是我們想要的因?yàn)镮P MAC輸出了很多次看起來很難受

然后這里把輸出移動到函數(shù)外的for循環(huán)上方,然后判斷一下__name__,這樣就完成了所有的功能了

from scapy.all import *
import threading
 
tip=ARP().psrc
tip=tip[:(len(tip)-tip[::-1].find('.'))]
 
def ScanIp(ip):
	pkt=Ether(dst="ff:ff:ff:ff:ff:ff")/ARP(pdst=ip)
	try:
		res=srp1(pkt,timeout=10,verbose=0)
		if res.psrc==ip:
			print('[+]'+res.psrc+' '+res.hwsrc)
	except:
		pass
 
if __name__=='__main__':
	print('IP     MAC')
	for i in range(1,256):
		ip=tip+str(i)
		Go=threading.Thread(target=ScanIp,args=(ip,))
		Go.start()

運(yùn)行效果

到此這篇關(guān)于Python3利用scapy局域網(wǎng)實(shí)現(xiàn)自動多線程arp掃描功能的文章就介紹到這了,更多相關(guān)Python scapy實(shí)現(xiàn)arp掃描內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python MySQLdb 使用utf-8 編碼插入中文數(shù)據(jù)問題

    Python MySQLdb 使用utf-8 編碼插入中文數(shù)據(jù)問題

    這篇文章主要介紹了Python MySQLdb 使用utf-8 編碼插入中文數(shù)據(jù)問題,需要的朋友可以參考下
    2018-03-03
  • Django URL參數(shù)Template反向解析

    Django URL參數(shù)Template反向解析

    這篇文章主要介紹了Django URL參數(shù)Template反向解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-11-11
  • python實(shí)現(xiàn)sublime3的less編譯插件示例

    python實(shí)現(xiàn)sublime3的less編譯插件示例

    這篇文章主要介紹了python實(shí)現(xiàn)sublime3的less編譯插件示例的相關(guān)資料
    2014-04-04
  • Python實(shí)現(xiàn)批量提取word文件中文本框內(nèi)容

    Python實(shí)現(xiàn)批量提取word文件中文本框內(nèi)容

    在日常的辦公中,有時需要提取多個word文件中的文字框的內(nèi)容,這篇文章主要為大家介紹了三種常見的方法來提取文本框的內(nèi)容,希望對大家有一定的幫助
    2024-02-02
  • Python數(shù)學(xué)符號計算庫SymPy使用方法詳解

    Python數(shù)學(xué)符號計算庫SymPy使用方法詳解

    SymPy?是一個?Python?的數(shù)學(xué)符號計算庫,提供了強(qiáng)大的工具來進(jìn)行符號數(shù)學(xué)運(yùn)算、代數(shù)操作、求解方程、微積分、矩陣運(yùn)算等,它廣泛應(yīng)用于數(shù)學(xué)教學(xué)、物理學(xué)、工程學(xué)、統(tǒng)計學(xué)和概率論等領(lǐng)域,本文將結(jié)合具體案例,詳細(xì)介紹?SymPy?的使用方法,需要的朋友可以參考下
    2024-08-08
  • OpenCV半小時掌握基本操作之傅里葉變換

    OpenCV半小時掌握基本操作之傅里葉變換

    這篇文章主要介紹了OpenCV基本操作之傅里葉變換,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • Python 數(shù)據(jù)結(jié)構(gòu)之十大經(jīng)典排序算法一文通關(guān)

    Python 數(shù)據(jù)結(jié)構(gòu)之十大經(jīng)典排序算法一文通關(guān)

    排序算法可以分為內(nèi)部排序和外部排序,內(nèi)部排序是數(shù)據(jù)記錄在內(nèi)存中進(jìn)行排序,而外部排序是因排序的數(shù)據(jù)很大,一次不能容納全部的排序記錄,在排序過程中需要訪問外存
    2021-10-10
  • Python+AutoIt實(shí)現(xiàn)界面工具開發(fā)過程詳解

    Python+AutoIt實(shí)現(xiàn)界面工具開發(fā)過程詳解

    這篇文章主要介紹了Python+AutoIt實(shí)現(xiàn)界面工具開發(fā)過程詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • openCV實(shí)踐項(xiàng)目之銀行卡卡號識別功能

    openCV實(shí)踐項(xiàng)目之銀行卡卡號識別功能

    最近在惡補(bǔ)opencv,在前期不太那么認(rèn)真的學(xué)習(xí)狀態(tài)下,著手搞了一下這個小項(xiàng)目實(shí)戰(zhàn),基于模板匹配下的銀行卡卡號識別,下面這篇文章主要給大家介紹了關(guān)于openCV實(shí)踐項(xiàng)目之銀行卡卡號識別功能的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • scrapy-redis分布式爬蟲的搭建過程(理論篇)

    scrapy-redis分布式爬蟲的搭建過程(理論篇)

    這篇文章主要介紹了scrapy-redis分布式爬蟲的搭建過程(理論篇),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09

最新評論