0
私はPythonのpysnmpライブラリを使ってsnmpデータを取得しようとしています。このデータでは、取得されなかったCOUNTER64オブジェクトが使用可能です。pysnmpでCounter64オブジェクトを取り出す方法は?
コマンド -
snmpwalk -v 1 -c public <ip address>:<port> xyz::pqr
出力 -
.1.3.6.1.4.1.16136.13.5.1.200.1.51.1.12.1 = Counter64: 2761552407
.1.3.6.1.4.1.16136.13.5.1.200.1.51.1.12.2 = Counter64: 0
.1.3.6.1.4.1.16136.13.5.1.200.1.51.1.12.3 = Counter64: 0
.1.3.6.1.4.1.16136.13.5.1.200.1.51.1.13.1 = Counter64: 2299496
.1.3.6.1.4.1.16136.13.5.1.200.1.51.1.13.2 = Counter64: 0
.1.3.6.1.4.1.16136.13.5.1.200.1.51.1.13.3 = Counter64: 0
使用pysnmp -
from pysnmp.hlapi import *
for (errorIndication,
errorStatus,
errorIndex,
varBinds) in nextCmd(SnmpEngine(),
CommunityData('public', mpModel=0),
UdpTransportTarget(('ip', port)),
ContextData(),
ObjectType(ObjectIdentity('.1.3.6.1.4.1.16136.13.5.1.200.1.51.1.12'))):
if errorIndication or errorStatus:
print(errorIndication or errorStatus)
break
else:
for varBind in varBinds:
print(' = '.join([x.prettyPrint() for x in varBind]))
出力 -
No SNMP response received before timeout
どのように私はCOUNTER64オブジェクトを取得できますか?私は何かが欠けているのですか?
@IIya Etingof-つまり、私が望むものはできません。 ** snmpwalk -v 1 -c public: xyz :: pqr **コマンドはバージョン1です。 –
kit
@kit 'snmpwalk -v1 -c public demo.snmplabs.comを実行してみてください。IF-MIB :: ifXTable 'と比較し、' snmpwalk -v2c -c public demo.snmplabs.com IF-MIB :: ifXTable'と比較してください。適切なSNMPv1エンジンは、SNMPv1を介して実行しているときにCounter64値を削除するだけです。これはsnmpwalkがするものです。 –
@IIya Etingof-私の場合、snmpwalk -v 1 -c public: xyz :: pqrコマンドはCounter64値を削除しません。私はすべての値を取得することができます、Counter64の値だけが取得されていません。 javaでは、SNMP4JSettings.setAllowSNMPv2InV1(true)を設定できるため、これを行う他の方法はありません。プロパティをtrueに設定します。 –
kit