Согласно CISCO-TC
MIB, CiscoNetworkAddress
фактически является строкой октета. Существует много способов превратить строку октета в DDN. Например, с ipaddress
модуль из Python 3 STDLIB:
>>> from pysnmp.hlapi import OctetString
>>> ip = OctetString(hexValue='ac141315') # this is what you have
>>>
>>> ipaddress.IPv4Address(ip.asOctets())
IPv4Address('172.20.19.21')
Или вы можете превратить его в SNMP SMI IP-адрес:
>>> from pysnmp.hlapi import IpAddress
>>> IpAddress(ip.asOctets()).prettyPrint()
'172.20.19.21'
Кроме того, вы можете получить последовательность целых октетов прямо с вашего существующего объект:
>>> ip.asNumbers()
(172, 20, 19, 21)
Имейте в виду, что CiscoNetworkAddress
предназначен для хранения различных типов адресов, а не только IPv4. Поэтому вы, вероятно, должны применять преобразование IPv4 только в том случае, если это действительно IPv4-адрес.