python 獲取區域網內的廣播位址

2021-07-11 17:27:56 字數 1883 閱讀 6752

#-*- coding:utf-8 -*-

importsubprocess

importre

importsocket

defgetbroadaddlist():

######獲取ip以及子網掩碼

#######windows 下的命令是ipconfig,linux下是ifconfig,倘若再不行,我們直接用python獲取ip

try:

try:sys_cmd = subprocess.popen('ipconfig',stdout=subprocess.pipe)

except:sys_cmd = subprocess.popen('ifconfig',stdout=subprocess.pipe)

except:#####如果用ipconfig命令無法獲取到機器的ip,使用python的socket模組獲取

ip_add = socket.gethostbyname(socket.getfqdn(socket.gethostname()))

index_ = ip_add.rfind(".")

return [ip_add[:index_]+".255"]cmd_res = sys_cmd.stdout.read()

pattern = re.compile(r'((\d+\.)\d+\s)') #########正則匹配

ip_list = pattern.findall(cmd_res)

ip_add =

foriinip_list:

ifint(i[0].rstrip().split(".")[-1]) == 0:

submask = str(i[0])

else:

ip_info = i[0][:i[0].rfind(".")]

ifip_infonot in#########計算廣播位址

broad_list =

forjinip_add:

submask_split = submask.split(".")

myip = (j+".1").split(".")

str_cast =""foriinxrange(4):

xx = (int(myip[i])&int(submask_split[i]))|((int(submask_split[i]))^255)

str_cast = str_cast + str(xx)+"."))

returnbroad_list

printgetbroadaddlist()

Python獲取區域網內可連通的主機ip位址

整體是思路就是 1 先獲取我本機的ip位址 2 拿到我本機ip後,擷取ip的最後一段,保留前一部分網段資訊 3 呼叫cmd命令,迴圈從1迴圈255次到255來ping 整個網段內可以ping通的ip 通過ping ttl 大於0 判斷是否可ping通 4 最後得到可以ping通的ip位址 codin...

如何在區域網內對話 如何監控記錄區域網內的郵件收發

本文將介紹如何用wsg上網行為管理閘道器來記錄區域網內的郵件收發內容。郵件收發主要有兩種方式 客戶端郵件,比如outlook,foxmail,thundbird等客戶端。網頁郵件,國內比較普遍的是qq和163的網頁郵件。1.客戶端郵件的監控 wfilter可以監控到客戶端傳送和接收郵件的正文和附件內...

偵聽區域網內密碼

只需在前面的網路嗅探程式基礎上,新增對搜尋出的埠號進行的增加功能即可 如下 在decodeippacket中新增 switch ntohs ptcphdr destinationport break case80 case 8080 break void getftp char pdata.dwor...