Incorrect 32-bit counters via SNMP
20160
Created On 02/16/19 04:09 AM - Last Modified 04/19/24 19:36 PM
Symptom
Incorrect 32-bit counter values after upgrading to pan os 8.0.14 and later; along with pan-os 8.1.5 and later.
Panos Prior to 8.0.14 and 8.1.5: >snmpwalk -c <string> -v 2c <ip. addr> 1.3.6.1.2.1.2.2.1.2 IF-MIB::ifDescr.1 = STRING: dedicated-ha1 IF-MIB::ifDescr.2 = STRING: dedicated-ha2 IF-MIB::ifDescr.3 = STRING: ha1 IF-MIB::ifDescr.4 = STRING: ha2 IF-MIB::ifDescr.5 = STRING: mgmt IF-MIB::ifDescr.6 = STRING: ethernet1/1 IF-MIB::ifDescr.7 = STRING: ethernet1/2 IF-MIB::ifDescr.8 = STRING: ethernet1/3 IF-MIB::ifDescr.9 = STRING: ethernet1/4 IF-MIB::ifDescr.10 = STRING: ethernet1/5 IF-MIB::ifDescr.11 = STRING: ethernet1/6 IF-MIB::ifDescr.12 = STRING: ethernet1/7 IF-MIB::ifDescr.13 = STRING: ethernet1/8 IF-MIB::ifDescr.14 = STRING: ethernet1/9 IF-MIB::ifDescr.15 = STRING: ethernet1/10 IF-MIB::ifDescr.16 = STRING: ethernet1/11 IF-MIB::ifDescr.17 = STRING: ethernet1/12 IF-MIB::ifDescr.18 = STRING: ethernet1/13 IF-MIB::ifDescr.19 = STRING: ethernet1/14 IF-MIB::ifDescr.20 = STRING: ethernet1/15 IF-MIB::ifDescr.21 = STRING: ethernet1/16 IF-MIB::ifDescr.22 = STRING: ethernet1/17 IF-MIB::ifDescr.23 = STRING: ethernet1/18 IF-MIB::ifDescr.24 = STRING: ethernet1/19 IF-MIB::ifDescr.25 = STRING: ethernet1/20 IF-MIB::ifDescr.26 = STRING: ethernet1/21 IF-MIB::ifDescr.27 = STRING: ethernet1/22 IF-MIB::ifDescr.28 = STRING: ethernet1/23 IF-MIB::ifDescr.29 = STRING: ethernet1/24 IF-MIB::ifDescr.200000000 = STRING: vlan IF-MIB::ifDescr.300000000 = STRING: loopback IF-MIB::ifDescr.400000000 = STRING: tunnel >snmpwalk -c <string> -v 2c <ip. addr> IF-MIB::ifHCInOctets >>> 64-bit counter IF-MIB::ifHCInOctets.1 = Counter64: 0 IF-MIB::ifHCInOctets.2 = Counter64: 0 IF-MIB::ifHCInOctets.3 = Counter64: 0 IF-MIB::ifHCInOctets.4 = Counter64: 0 IF-MIB::ifHCInOctets.5 = Counter64: 5632121659 IF-MIB::ifHCInOctets.6 = Counter64: 0 IF-MIB::ifHCInOctets.7 = Counter64: 0 IF-MIB::ifHCInOctets.8 = Counter64: 1853526847 IF-MIB::ifHCInOctets.9 = Counter64: 0 IF-MIB::ifHCInOctets.10 = Counter64: 10140487 IF-MIB::ifHCInOctets.11 = Counter64: 1783725824 IF-MIB::ifHCInOctets.12 = Counter64: 0 IF-MIB::ifHCInOctets.13 = Counter64: 0 IF-MIB::ifHCInOctets.14 = Counter64: 0 IF-MIB::ifHCInOctets.15 = Counter64: 0 IF-MIB::ifHCInOctets.16 = Counter64: 0 IF-MIB::ifHCInOctets.17 = Counter64: 0 IF-MIB::ifHCInOctets.18 = Counter64: 0 IF-MIB::ifHCInOctets.19 = Counter64: 0 IF-MIB::ifHCInOctets.20 = Counter64: 0 IF-MIB::ifHCInOctets.21 = Counter64: 0 IF-MIB::ifHCInOctets.22 = Counter64: 0 IF-MIB::ifHCInOctets.23 = Counter64: 0 IF-MIB::ifHCInOctets.24 = Counter64: 0 IF-MIB::ifHCInOctets.25 = Counter64: 0 IF-MIB::ifHCInOctets.26 = Counter64: 0 IF-MIB::ifHCInOctets.27 = Counter64: 0 IF-MIB::ifHCInOctets.28 = Counter64: 0 IF-MIB::ifHCInOctets.29 = Counter64: 0 IF-MIB::ifHCInOctets.200000000 = Counter64: 0 IF-MIB::ifHCInOctets.300000000 = Counter64: 0 IF-MIB::ifHCInOctets.400000000 = Counter64: 0 >snmpwalk -c <string> -v 2c <ip. addr> IF-MIB::ifInOctets >>>32-bit counter IF-MIB::ifInOctets.1 = Counter32: 0 IF-MIB::ifInOctets.2 = Counter32: 0 IF-MIB::ifInOctets.3 = Counter32: 0 IF-MIB::ifInOctets.4 = Counter32: 0 IF-MIB::ifInOctets.5 = Counter32: 1337120177 IF-MIB::ifInOctets.6 = Counter32: 0 IF-MIB::ifInOctets.7 = Counter32: 0 IF-MIB::ifInOctets.8 = Counter32: 1853523436 IF-MIB::ifInOctets.9 = Counter32: 0 IF-MIB::ifInOctets.10 = Counter32: 10131786 IF-MIB::ifInOctets.11 = Counter32: 1783695830 IF-MIB::ifInOctets.12 = Counter32: 0 IF-MIB::ifInOctets.13 = Counter32: 0 IF-MIB::ifInOctets.14 = Counter32: 0 IF-MIB::ifInOctets.15 = Counter32: 0 IF-MIB::ifInOctets.16 = Counter32: 0 IF-MIB::ifInOctets.17 = Counter32: 0 IF-MIB::ifInOctets.18 = Counter32: 0 IF-MIB::ifInOctets.19 = Counter32: 0 IF-MIB::ifInOctets.20 = Counter32: 0 IF-MIB::ifInOctets.21 = Counter32: 0 IF-MIB::ifInOctets.22 = Counter32: 0 IF-MIB::ifInOctets.23 = Counter32: 0 IF-MIB::ifInOctets.24 = Counter32: 0 IF-MIB::ifInOctets.25 = Counter32: 0 IF-MIB::ifInOctets.26 = Counter32: 0 IF-MIB::ifInOctets.27 = Counter32: 0 IF-MIB::ifInOctets.28 = Counter32: 0 IF-MIB::ifInOctets.29 = Counter32: 0 IF-MIB::ifInOctets.200000000 = Counter32: 0 IF-MIB::ifInOctets.300000000 = Counter32: 0 IF-MIB::ifInOctets.400000000 = Counter32: 0 Panos 8.0.14+ and 8.1.5 and later: >snmpwalk -c <string> -v 2c <ip. addr> IF-MIB::ifInOctets IF-MIB::ifInOctets.1 = Counter32: 0 IF-MIB::ifInOctets.2 = Counter32: 0 IF-MIB::ifInOctets.3 = Counter32: 0 IF-MIB::ifInOctets.4 = Counter32: 0 IF-MIB::ifInOctets.5 = Counter32: 1137354 IF-MIB::ifInOctets.6 = Counter32: 0 IF-MIB::ifInOctets.7 = Counter32: 0 IF-MIB::ifInOctets.8 = Counter32: 0 >>> no counters seen IF-MIB::ifInOctets.9 = Counter32: 0 IF-MIB::ifInOctets.10 = Counter32: 0 >>> no counters seen IF-MIB::ifInOctets.11 = Counter32: 0 >>> no counters seen IF-MIB::ifInOctets.12 = Counter32: 0 IF-MIB::ifInOctets.13 = Counter32: 0 IF-MIB::ifInOctets.14 = Counter32: 0 IF-MIB::ifInOctets.15 = Counter32: 0 IF-MIB::ifInOctets.16 = Counter32: 0 IF-MIB::ifInOctets.17 = Counter32: 0 IF-MIB::ifInOctets.18 = Counter32: 0 IF-MIB::ifInOctets.19 = Counter32: 0 IF-MIB::ifInOctets.20 = Counter32: 0 IF-MIB::ifInOctets.21 = Counter32: 0 IF-MIB::ifInOctets.22 = Counter32: 0 IF-MIB::ifInOctets.23 = Counter32: 0 IF-MIB::ifInOctets.24 = Counter32: 0 IF-MIB::ifInOctets.25 = Counter32: 0 IF-MIB::ifInOctets.26 = Counter32: 0 IF-MIB::ifInOctets.27 = Counter32: 0 IF-MIB::ifInOctets.28 = Counter32: 0 IF-MIB::ifInOctets.29 = Counter32: 0 IF-MIB::ifInOctets.200000000 = Counter32: 0 IF-MIB::ifInOctets.300000000 = Counter32: 0 IF-MIB::ifInOctets.400000000 = Counter32: 0 >snmpwalk -c <string> -v 2c <ip. addr> IF-MIB::ifHCInOctets IF-MIB::ifHCInOctets.1 = Counter64: 0 IF-MIB::ifHCInOctets.2 = Counter64: 0 IF-MIB::ifHCInOctets.3 = Counter64: 0 IF-MIB::ifHCInOctets.4 = Counter64: 0 IF-MIB::ifHCInOctets.5 = Counter64: 1117293 IF-MIB::ifHCInOctets.6 = Counter64: 0 IF-MIB::ifHCInOctets.7 = Counter64: 0 IF-MIB::ifHCInOctets.8 = Counter64: 2653 >>> Counters seen in 64-bit IF-MIB::ifHCInOctets.9 = Counter64: 0 IF-MIB::ifHCInOctets.10 = Counter64: 2235 >>> Counters seen in 64-bit IF-MIB::ifHCInOctets.11 = Counter64: 25956 >>> Counters seen in 64-bit IF-MIB::ifHCInOctets.12 = Counter64: 0 IF-MIB::ifHCInOctets.13 = Counter64: 0 IF-MIB::ifHCInOctets.14 = Counter64: 0 IF-MIB::ifHCInOctets.15 = Counter64: 0 IF-MIB::ifHCInOctets.16 = Counter64: 0 IF-MIB::ifHCInOctets.17 = Counter64: 0 IF-MIB::ifHCInOctets.18 = Counter64: 0 IF-MIB::ifHCInOctets.19 = Counter64: 0 IF-MIB::ifHCInOctets.20 = Counter64: 0 IF-MIB::ifHCInOctets.21 = Counter64: 0 IF-MIB::ifHCInOctets.22 = Counter64: 0 IF-MIB::ifHCInOctets.23 = Counter64: 0 IF-MIB::ifHCInOctets.24 = Counter64: 0 IF-MIB::ifHCInOctets.25 = Counter64: 0 IF-MIB::ifHCInOctets.26 = Counter64: 0 IF-MIB::ifHCInOctets.27 = Counter64: 0 IF-MIB::ifHCInOctets.28 = Counter64: 0 IF-MIB::ifHCInOctets.29 = Counter64: 0 IF-MIB::ifHCInOctets.200000000 = Counter64: 0 IF-MIB::ifHCInOctets.300000000 = Counter64: 0 IF-MIB::ifHCInOctets.400000000 = Counter64: 0
Environment
- All PAN-OS
- SNMP Counters - Management
Cause
- This is function as designed. In PAN-OS 8.0.14 and 8.1.5, there is a known issue documented here. (PAN-98263)
- The 32-bit counters have been known to cause confusion and have shown incorrect values in the past.
Resolution
Users should look at 64-bit counters onward:
>snmpwalk -c <string> -v 2c <ip. addr> IF-MIB::ifHCInOctets
Additional Information
For further details, please reference RFC2233 section 3.1.6 Counter Size:
https://www.ietf.org/rfc/rfc2233.txt