Хочу получить с коммутатора информацию по портам, вланам и их взаимоотношениям. Телнет не хочу.
Успешно получаю данные по портам и некоторые данные по вланам. Но пока не получил связь: в каком порту какие вланы. По этой связи нашёл OIDы: https://iphostmonitor.com/mib/oids/Q-BRIDGE-MIB/dot1qVlanStaticEgressPorts.html https://iphostmonitor.com/mib/oids/Q-BRIDGE-MIB/dot1qVlanCurrentEgressPorts.html , правда не очень понял чем они различаются и какой из них надо использовать. И ещё одна неприятность, они возвращают Hex-STRING.
Соответственно, главный вопрос: что делать с этим Hex? Второй: какой из них брать, но это уже не так важно, в крайнем случае можно тупо добавить в описание и то и другое.
И ещё дополнительный вопрос. Питон немного странно получает некоторые данные:
import netsnmp
session = netsnmp.Session(Version = 2, DestHost = '1.2.3.4', Community = 'CommunityName')
print session.getbulk(0, 2, (netsnmp.VarList(netsnmp.Varbind('ifIndex',),
netsnmp.Varbind('ifDescr',))))
print session.getbulk(0, 2, (netsnmp.VarList(netsnmp.Varbind('SNMPv2-SMI::enterprises.27514.100.5.1.1.2',),
netsnmp.Varbind('SNMPv2-SMI::enterprises.27514.100.5.1.1.3',))))
('1', 'Ethernet1/0/1', '2', 'Ethernet1/0/2')
('default', 'default', 'vlanname1', 'vlanname1')
print session.getbulk(0, 2, (netsnmp.VarList(netsnmp.Varbind('SNMPv2-SMI::enterprises.27514.100.5.1.1.2',),)))
print session.getbulk(0, 2, (netsnmp.VarList(netsnmp.Varbind('SNMPv2-SMI::enterprises.27514.100.5.1.1.3',),)))
('default', 'vlanname1')
('37', '20')
И ещё по питону. Он получает не совсем Hex:
print session.getbulk(0, 2, (netsnmp.VarList(netsnmp.Varbind('SNMPv2-SMI::mib-2.17.7.1.4.2.1.4',),)))
('\xff\xfa\xf7\xf8\x0cO\xf0', '?JF \x00C\xf0')