資源簡(jiǎn)介
Python利用SNMP讀取交換機(jī)端口信息及狀態(tài),通過(guò)路由器和交換機(jī)上啟用SNMP協(xié)議,Python環(huán)境下安裝net-snmp-python包實(shí)現(xiàn)
代碼片段和文件信息
#?-*-?coding:utf-8?-*-
import?re
import?os
import?time
import?platform
def?snmpWalk(host?community?oid):
????“““利用os模塊打開(kāi)一個(gè)管道運(yùn)行snmpwalk工具結(jié)合host,團(tuán)體字符串,OID獲取交換機(jī)路由器狀態(tài)“““
????result?=?os.popen(‘snmpwalk?-v?2c?-c?‘?+?community?+?‘?‘+?host?+?‘?‘?+?oid).read().split(‘\n‘)[:-1]
????return?result
def?getPortDevices(hostcommunity):
????“““獲取端口信息“““
????device_mib?=?snmpWalk(host?community?‘RFC1213-MIB::ifDescr‘)
????device_list?=?[]
????for?item?in?device_mib:
????????device_list.append(item.split(‘:‘)[3].strip())
????return?device_list
def?getPortStatus(hostcommunity):
????“““獲取端口狀態(tài)信息“““
????device_mib?=?snmpWalk(host?community?‘RFC1213-MIB::ifOperStatu
評(píng)論
共有 條評(píng)論