一、問題由來
工作的區域網中,會接入很多裝置,機械人上的網路裝置就2個了,乙個巨哥紅外,乙個海康可見光。機械人還有自身的ip。
有時候機械人掛的多了,裝置維修更換中,搞來搞去就不記得ip是什麼,用自帶的軟體的確能掃出來,但是這就要開兩個windows環境下的軟體,耗時耗力,折騰。正好在linux,那簡單,敲命令。
nmap -p 192.168.1.0/24
可以掃瞄出 192.168.1.0~192.168.1.255的全部ip
但是前提是要裝過nmap
apt-get install nmap
可總感覺在用高射炮打蚊子——大材小用
那就自己折騰折騰python吧,於是就在網上抄抄改改。
二、python掃瞄指定網段ip
1、demo
pings.py
import sys
import os
time
import _thread
import datetime
def get_os():
os = plwww.cppcns.comatform.system()
if os == "windows":
return "n"
else:
return "c"
def ping_ip(ip_str):
cmd = ["ping", "-".format(op=get_os()),
"1", ip_str]
output = os.popen(" ".join(cmd)).readlines()
flag = false
for line in list(ou
if not line:
continue
if str(line).upper().find("ttl") >=0:
flag = true
brea程式設計客棧k
if flag:
print("*** *** *** ip: %s is ok *** *** ***"%(ip_str程式設計客棧))
def find_ip(ip_prefix):
for i in range(1,256):
ip = ('%s.%s'%(ip_prefix,i))
_thread.start_new_thread(ping_ip, (ip,))
time.sleep(0.3)
if __name__ == "__main__":
starttime = datetime.datetime.now()
print("start time %s"%(time.ctime()))
net=sys.ar**[1]
args = "".join(("192.168."+net+".1"))
ip_prefix = '.'.join(args.split('.')[:-1])
find_ip(ip_prefix)
endtime = datetime.datetime.now()
print("end time %s"%(time.ctime()))
print("total takes :",(endtime - starttime).seconds)
python3除移thread模組,為了相容性使用_thread代替,最安全用法是使用threading模組
datetime.datetime.now()獲取當前時間
os = platform.system()判斷當前系統型別
output = os.popen()呼叫終端,返回值會儲存在output中
每次掃瞄的時長大約是 76 s。
2、執行
python3 pings.py 1
引數1是指定網段,如果想掃瞄192.168.5.0~192.168.5.255
則輸入:
python3 pings.py 5
3、打包
pyinstaller -f pings.py打包成單一可執行檔案
用上面的命令前提是已安裝pyinstaller——-(pip intsall pyinstaller)
執行完會生成乙個pings的可執行檔案
cp pings /bin
好了,到這一步,任意地方開啟終端輸入:
pings 1
都可以完成 192.168.1.0~192.168.1.255的掃瞄
總結本文標題: python實現掃瞄區域網指定網段ip的方法
本文位址:
python實現掃瞄區域網指定網段ip
工作的區域網中,會接入很多裝置,機械人上的網路裝置就2個了,乙個巨哥紅外,乙個海康可見光。機械人還有自身的ip。有時候機械人掛的多了,裝置維修更換中,搞來搞去就不記得ip是什麼,用自帶的軟體的確能掃出來,但是這就要開兩個windows環境下的軟體,耗時耗力,折騰。正好在linux,那簡單,敲命令。n...
python攻擊區域網電腦 區域網攻擊
目錄 區域網內的欺騙攻擊主要有以下幾種 arp欺騙 dns欺騙 netbios名稱欺騙和llmnr欺騙 進行內網攻擊的第一步是先檢視我們自己網絡卡的配置資訊,從而得知內網網段的資訊。探測內網資訊 檢視自己網絡卡配置資訊有好多命令,常用的有下面幾個,我們主要是檢視ip 子網掩碼和閘道器資訊 nmcli...
Python 區域網掃瞄存活主機開放埠
python 區域網掃瞄存活主機開放埠 by 鄭瑞國 1 ping指定ip判斷主機是否存活 2 ping所有ip獲取所有存活主機 3 nmap掃瞄存活主機開放埠 注 若在linux系統下 ping n 改為 ping c 若在windows系統下 ping n 不變 import nmap impo...