我在树莓派上制作一个简单的snmp应用程序,使用带有freepascal的indy。 我可以ping通设备并通过mibbrowser发送get / set请求,但这不起作用,发送查询总是失败。
program snmptest;
{$IFDEF FPC}
{$MODE DELPHI}
{$ENDIF}
uses
sysutils, IdSNMP, IdUDPBase, IdUDPClient;
var
snmp:tidsnmp;
s,mib:string;
begin
mib:='1.3.6.1.4.1.6247.32.1.2.12.0';
snmp:=tidsnmp.create(nil);
try
snmp.host:='172.16.1.222';
snmp.community:='public';
snmp.query.clear;
snmp.query.pdutype:=pdugetrequest;
snmp.query.mibadd(mib,'');
if snmp.sendquery then
begin
s:=snmp.reply.mibget(mib);
writeln(s);
end
else begin
writeln('fail!');
end;
finally
snmp.free;
end;
end.