1. 程式人生 > >python 獲取區域網內的廣播地址

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

#-*- coding:utf-8 -*-
import subprocess
import re
import socket
def getBroadAddList():
    ######獲取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+\.){3}\d+\s)'
) #########正則匹配 ip_list = pattern.findall(cmd_res) ip_add = [] for i in ip_list: if int(i[0].rstrip().split(".")[-1]) == 0: subMask = str(i[0]) else: ip_info = i[0][:i[0].rfind(".")] if ip_info not in ip_add:ip_add.append(ip_info) #########計算廣播地址
broad_list = [] for j in ip_add: subMask_split = subMask.split(".") myIp = (j+".1").split(".") str_cast = "" for i in xrange(4): xx = (int(myIp[i])&int(subMask_split[i]))|((int(subMask_split[i]))^255) str_cast = str_cast + str(xx)+"." broad_list.append(str_cast.rstrip(".")) return broad_list print getBroadAddList()

相關推薦

python 獲取區域網廣播地址

#-*- coding:utf-8 -*- import subprocess import re import socket def getBroadAddList(): ######獲取IP以及子網掩碼 #######windows 下的命令是ipcon

python多執行緒獲取區域網所有電腦IP

#coding = utf-8 import os,os.path import threading import time lock = threading.RLock() def action(ip): result = "ip.txt" return1 = os.sy

通過 ARP 協議獲取區域網指定 IP 地址的機器的 MAC 地址

unit Unit5; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,WinSock;

python-獲取本機mac地址

names iyu ddr repr pri int .get variant pac 1 #!/usr/bin/env python 2 #-*- coding:utf-8 -*- 3 ############################ 4 #File N

利用python實現區域網的檔案的傳輸

利用python實現區域網內的檔案的傳輸 當前目錄位址列我們輸入cmd,按回車就自動進入當前目錄,這點小技巧尤其方便,省的我們在一級一級去記憶那麼繁瑣的目錄了 接下來我們輸入命令,預設埠是8000,我這裡指定了一個8888埠 接下來我們輸入命令,預設埠是8000,我這裡指定了一個8888

python 獲取本機IP地址,檢測埠是否被佔用

import socket def get_host_ip(): """ get host ip address 獲取本機IP地址 :return: """ s = socket.socket(socket.

python實現區域網實時通訊

    使用場景,本地伺服器一直在運算資料,實時傳送這些資料給客戶端,本地區域網內其他客戶,可以實時連線伺服器,獲取伺服器資料,互不影響。python2服務端#-*- coding:utf-8 -*- __author__ = '梅俊輝' import socket impo

Python獲取本機MAC地址,ip和主機名

獲取mac地址: import uuid def get_mac_address(): mac=uuid.UUID(int = uuid.getnode()).hex[-12:] re

C#獲取區域網所有資料庫伺服器

網路查詢的: #region 供使用API方式時使用 [System.Runtime.InteropServices.DllImport("odbc32.dll")] private static extern short SQLAllocH

linux C 獲取ip mac 廣播地址,以及閘道器

獲取IP、掩碼、MAC 獲取IP、掩碼、MAC和廣播地址是比較容易的,只需要呼叫對應的IOCTL即可。只是大家對Linux下的IOCTL可能不太熟悉。卻看示例程式碼:  const char* szDevName  =  ”eth0“   (網絡卡名稱) 0001 voi

Python獲取本機IP地址

使用Python可以用很簡單的方法得到本機IP地址,不過在Windows和Linux下的方法稍有不一樣的, Windows下獲得IP地址的方法 方法一 使用撥號上網的話,一般都有一個本地ip和一個外網ip,使用python可以很容易的得到這兩個ip 使用gethos

獲得區域網IP地址和主機名

開發十年,就只剩下這套架構體系了! >>>   

shell和python獲取網ip地址

1、shell命令:   linux:ifconfig|grep 'inet '|grep -v '127.0'|xargs|awk -F '[ :]' '{print $3}'   mac:ifconfig|grep 'inet '|grep -v '127.0'|xar

python實現同服站點地址獲取

.cn class return 字符串 ... urlencode 一個 req exc 說明:程序使用http://s.tool.chinaz.com/same此站點查詢的結果。使用python簡單的實現抓取結果 先隨便查詢一個結果,抓包分析,如圖:

Python 獲取CentOS7的存使用率並寫入mysql

linux mysql 由於Centos7和6的系統變化挻大的,所以先看看Centos7的內存信息是怎麽樣的。系統版本:[root@docker ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) [root@docke

Python——字典的fromkeys方法創建的初始value同地址問題

ont clas pen 使用 font eap lis fromkeys style   dict中的fromkeys()函數可以通過一個list來創建一個用同一初始value的dict。 1 d = dict.fromkeys(["蘋果", "菠蘿"], [‘appl

python中的函數對象的地址是多少

png 定義 管理 height 應該 info image 技術分享 函數對象 今天和同學討論一個問題,發現了函數的內存地址和我想象的不一樣。 我以為同一個函數,假如給的參數不一樣,那麽這兩個函數的id就不一樣。 然後經過實驗,發現python為了便於管理函數,所有的函數

Python Socket網路程式設計(二)區域網區域網與廣域網的持續通訊

目錄 前言 IP地址 簡介 公有IP 私有IP 區域網之間網路通訊 前提 功能描述

python 獲取類中除置方法外的所有方法名

self callable pro clas top end method __name__ __main__ #!/usr/bin/env python# !-*- coding:utf-8 -*-class Menu: def __init__(self):

iOS 獲取手機的IP地址(網與外網)

#import <ifaddrs.h> #import <arpa/inet.h> #import <net/if.h> #define IOS_CELLULAR @"pdp_ip0" #define IOS_WIFI @"en0" #