Я новичок в C # и пытаюсь создать инструмент для чтения snmp OID для некоторых моих устройств.В целом система работает нормально, за исключением случаев, когда я не могу получить IP-адрес или когда IP-адрес не использует тот же OID.
Чего я хотел бы добиться: если устройство недоступно: перейдите к следующему.Если устройство не имеет правильного OID: перейдите к следующему.
В настоящее время, когда это происходит, у меня возникает ошибка, подобная этой: Ошибка SnmpSharpNet.SnmpNetworkException: 'Ошибка сети: сброс соединения по пиру.'
Вызывается SnmpV1Packet result = (SnmpV1Packet) target.Request (pdu, param);
Пример моего кода
//Start
UdpTarget target = new UdpTarget((IPAddress)agent, 161, 2000, 1);
Pdu pdu = new Pdu(PduType.Get);
pdu.VbList.Add(".1.3.6.1.4.1.1552.21.3.1.1.5.1.0");
pdu.VbList.Add(".1.3.6.1.4.1.1552.21.3.1.1.5.2.0");
pdu.VbList.Add(".1.3.6.1.4.1.1552.21.3.1.1.5.7.0");
pdu.VbList.Add(".1.3.6.1.4.1.1552.21.3.1.1.5.8.0");
// Make SNMP request
SnmpV1Packet result = (SnmpV1Packet)target.Request(pdu, param);
// If result is null then agent didn't reply or we couldn't parse the reply.
if (result != null)
{
if (result.Pdu.ErrorStatus != 0)
{
// agent reported an error with the request
MessageBox.Show("Error");
}
Спасибо за вашу помощь