python利用pysnmp获取交换机级联接口
来源:互联网 发布:股票股软件开发 编辑:程序博客网 时间:2024/05/21 00:45
交换机里有一个arp表,利用arp表可以找到与其相连的交换机的mac地址,然后再从mac端口对应表里找出端口
def getTrunk(ip,port,agent,communication): macAddr = [] macList = [] portList = [] macStrList = [] linkPort = [] oid1 = (1,3,6,1,2,1,4,22,1,2)#ARP表oid oid2 = (1,3,6,1,2,1,17,4,3,1,2)#mac端口对应表lid gen = cmdgen.CommandGenerator() errorIndication, errorStatus, errorIndex, varBinds = gen.nextCmd( cmdgen.CommunityData(agent, communication,1), cmdgen.UdpTransportTarget((ip,port)), oid1, ) #获取ARP表里的mac地址 for varBind in varBinds: for name,val in varBind: macAddr.append(val.prettyPrint(0)) gen.ignoreNonIncreasingOid = True#让oid可以非递增 errorIndication, errorStatus, errorIndex, varBinds = gen.nextCmd( cmdgen.CommunityData(agent, communication,1), cmdgen.UdpTransportTarget((ip,port)), oid2, ) #获取mac端口对应关系 for varBind in varBinds: for name,val in varBind: macList.append(name[-6:]) portList.append(val.prettyPrint()) #将十进制mac地址转化为16进制的字符串 for item in macList: temp = '' for part in item: temp += str(hex(int(part)))[2:] temp = '0x' + temp macStrList.append(temp) for item in macAddr:#获取端口号 if item in macStrList: index = macStrList.index(item) linkPort.append(portList[index]) #去除列表中的重复元素 linkPort = {}.fromkeys(linkPort).keys()#linkPort = list(set(linkPort)) return linkPort
- python利用pysnmp获取交换机级联接口
- Python通过pysnmp和nmap获取netstat
- Python使用pysnmp发送snmp v2c 告警
- 千兆交换机的级联
- 交换机的级联
- 交换机的级联:
- 交换机级联2
- 交换机级联-知识点、注意事项
- 交换机级联、堆叠、集群
- VLAN及交换机级联
- 交换机设备的级联
- Python获取IAccessible接口
- 交换机的堆叠与级联
- python安装依赖modules pysnmp pyasn1.type pexpect configparser
- 利用OpenCV 2.2 的Python接口实现Ostu(大津法)获取阈值
- 利用Python从数据公司接口获取数据并输出excel格式
- 利用Python获取天气信息
- 华三交换机光口级联傻瓜交换机光口
- dog
- js定义数组及相关操作
- Windows Phone文件操作
- PHP源码分析-PHP的生命周期
- goldengate for oracle 10g学习
- python利用pysnmp获取交换机级联接口
- Android系统启动流程 -- android
- word
- 李宁项目收获一
- Linux网络编程经典书籍推荐
- 使用ODBC连接SQL Server数据库进行增删查改操作全过程
- 黑马程序员--写一个自己和自己聊天的小程序
- 零基础学Qt 4编程之中心窗口部件的使用总结
- 李宁项目收获二(servlet)