OCTET STR:如何转换为HEX

时间:2016-03-15 23:11:59

标签: python snmp net-snmp

您是否可以建议如何解码八位字符串并获取mac-address?

使用easysnmp时:net-snmp python bindings [http://easysnmp.readthedocs.org/en/latest/]

例如

; value的以下表示都不对应于mac地址。

for x in ipNetToMediaPhysAddress:
    print x.oid, x.oid_index,  repr(x.value), ':'.join([i.encode("hex") for i in repr(x.value)])

ipNetToMediaPhysAddress 768.194.146.118.1 u'\x08\x81\xf4\x9bo\xc0' 75:27:5c:78:30:38:5c:78:38:31:5c:78:66:34:5c:78:39:62:6f:5c:78:63:30:27
ipNetToMediaPhysAddress 768.194.146.118.3 u'\x00\t\xb7f@@' 75:27:5c:78:30:30:5c:74:5c:78:62:37:66:40:40:27
ipNetToMediaPhysAddress 768.194.146.118.8 u'\x00\x1f\x12\xb3\xdc\xac' 75:27:5c:78:30:30:5c:78:31:66:5c:78:31:32:5c:78:62:33:5c:78:64:63:5c:78:61:63:27
ipNetToMediaPhysAddress 768.194.146.118.10 u'l\x9c\xed(\xd1\xf3' 75:27:6c:5c:78:39:63:5c:78:65:64:28:5c:78:64:31:5c:78:66:33:27
ipNetToMediaPhysAddress 768.194.146.118.11 u'\x00$8\xa6b\x00' 75:27:5c:78:30:30:24:38:5c:78:61:36:62:5c:78:30:30:27
ipNetToMediaPhysAddress 768.194.146.118.12 u'\x00\x0c)^*\xb3' 75:27:5c:78:30:30:5c:78:30:63:29:5e:2a:5c:78:62:33:27
ipNetToMediaPhysAddress 768.194.146.118.13 u't\x8e\xf8\xa5\r\x01' 75:27:74:5c:78:38:65:5c:78:66:38:5c:78:61:35:5c:72:5c:78:30:31:27
ipNetToMediaPhysAddress 768.194.146.118.28 u"\\E']\xcdK" 75:22:5c:5c:45:27:5d:5c:78:63:64:4b:22

请帮助您将value转换为mac地址的有效十六进制表示形式吗?

尼科斯

1 个答案:

答案 0 :(得分:2)

解决。

':'.join([ '%0.2x' % ord(_) for _ in i.value ])