0

我正在使用 gosnmp 包从节点获取 SNMP 值。返回的值是十六进制字符串。如何使用 MIB 中指定的显示提示和文本约定将其转换为显示字符串。

有可用的 MIB 解析器,但他们会将 OID 转换为文本名称,这不是我的要求。

例如https://www.rfc-editor.org/rfc/rfc2579定义

PhysAddress ::= TEXTUAL-CONVENTION
    DISPLAY-HINT "1x:"
    STATUS       current
    DESCRIPTION
            "Represents media- or physical-level addresses."
    SYNTAX       OCTET STRING

现在,如果我们将十六进制字符串转换为 ascii,因为ifPhysicalAddress它的形式是,XXXXXXXXXXXX但如果我们应用 DISPLAY-HINT,它会变成XX:XX:XX:XX:XX:XX

我们可以根据具体情况进行处理,但是否有一个库或其他东西可以读取 MIB 并返回显示字符串。

4

0 回答 0