为什么SNMP要将Counter64转换为Counter?

2024-09-30 18:22:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要通过SNMP发送自定义数据,为此我使用Python中的一个脚本,它获取数据并对其进行解析。这是脚本的输出:

# ./SnmpGrafico.py
get
.1.3.6.1.4.1.2021.255.2.2.11471
.1.3.6.1.4.1.2021.255.2.2.11471
Counter64
57900010775

下面是我使用SNMP的输出,OID指向此脚本:

^{pr2}$

以及SNMP配置:

pass_persist .1.3.6.1.4.1.2021.255 /usr/local/bin/python3.3 /testRRD/SnmpGrafico.py

为什么SNMP将Counter64解析为Counter32并丢失原始值?在本例中,原始值为“57900010775”和SNMP响应“4294967295”。在

谢谢!在

更新:

转储SNMP

[root@wsRRDint2 testRRD]# snmpget -v 2c -c cocacola 127.0.0.1 .1.3.6.1.4.1.2021.255.2.2.11471 -d

Sending 50 bytes to UDP: [127.0.0.1]:161
0000: 30 30 02 01  01 04 08 63  6F 63 61 63  6F 6C 61 A0    00.....cocacola.
0016: 21 02 04 7C  A6 4B 26 02  01 00 02 01  00 30 13 30    !..|.K&......0.0
0032: 11 06 0D 2B  06 01 04 01  8F 65 81 7F  02 02 D9 4F    ...+.....e.....O
0048: 05 00                                                 ..


Received 55 bytes from UDP: [127.0.0.1]:161
0000: 30 35 02 01  01 04 08 63  6F 63 61 63  6F 6C 61 A2    05.....cocacola.
0016: 26 02 04 7C  A6 4B 26 02  01 00 02 01  00 30 18 30    &..|.K&......0.0
0032: 16 06 0D 2B  06 01 04 01  8F 65 81 7F  02 02 D9 4F    ...+.....e.....O
0048: 41 05 00 FF  FF FF FF                                 A......

UCD-SNMP-MIB::ucdavis.255.2.2.11471 = Counter32: 4294967295
[root@wsRRDint2 testRRD]#

Tags: py脚本bytesrootsnmpudpffa6