Хочу получить с коммутатора информацию по портам, вланам и их взаимоотношениям. Телнет не хочу.
Начинаю так:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
import netsnmp
host = '1.2.3.4'
community = 'CommunityName'
def getlist(a,b,request):
vars = netsnmp.VarList(netsnmp.Varbind('ifIndex',),netsnmp.Varbind('ifDescr',),netsnmp.Varbind('ifOperStatus',))
print vars
print type(vars)
print session.getbulk(a, b, (vars))
session = netsnmp.Session(Version = 2,
DestHost = host,
Community = community)
getlist (0,5,('ifIndex','ifDescr','ifOperStatus'))
Внутри функции getlist хочу составить netsnmp.VarList из полученного параметра. Но не знаю как. Выполнение в таком виде возвращает:
[<netsnmp.client.Varbind object at 0x7ffbd9d21390>, <netsnmp.client.Varbind object at 0x7ffbd9d21410>, <netsnmp.client.Varbind object at 0x7ffbd9d21450>]
<class 'netsnmp.client.VarList'>
('1', 'Ethernet1/0/1', '1', '2', 'Ethernet1/0/2', '1', '3', 'Ethernet1/0/3', '1', '4', 'Ethernet1/0/4', '1', '5', 'Ethernet1/0/5', '1')
То есть, type говорит что var это class. Попытался сделать append, но внезапно не вышло.
Хотелось бы перебрать request и добавить элементы в var. Как это следует делать?