Программирование SNMP на С#

Я пытаюсь написать код для получения идентификатора объекта, и результат 2B-06-01-04-01-82-31-01-03-01-01. Это значение не верно?

// Send a SysObjectId SNMP request
response = conn.get("get", argv[0], argv[1], "1.3.6.1.2.1.1.2.0");
if (response[0] == 0xff)
{
    Console.WriteLine("No response from {0}", argv[0]);
    return;
}

// Get the community and MIB lengths of the response
commlength = Convert.ToInt16(response[6]);
miblength = Convert.ToInt16(response[23 + commlength]);

// Extract the MIB data from the SNMp response
datatype = Convert.ToInt16(response[24 + commlength + miblength]);
datalength = Convert.ToInt16(response[25 + commlength + miblength]);
datastart = 26 + commlength + miblength;
output= BitConverter.ToString(response, datastart, datalength);
Console.WriteLine("  sysObjectId - Datatype: {0}, Value: {1}",
       datatype, output);

Означает ли conn.get("get", argv[0], argv[1], "1.3.6.1.2.1.1.2.0"), что он выполняет только протокол get? Как насчет набора?


person T_y    schedule 29.03.2011    source источник
comment
Форматирование вашего кода слишком далеко (что делает его очень трудным для чтения), и вы задаете слишком много вопросов (некоторые из них очень общие).   -  person RQDQ    schedule 29.03.2011
comment
извините, я уже редактирую вопрос, мне просто интересно, этот код не может представлять протокол 5 протокола SNMPv1:   -  person T_y    schedule 29.03.2011
comment
5 протоколов: get-request, get-next-request, set-request, get-response и trap...   -  person T_y    schedule 29.03.2011
comment
Или #SNMP, sharpsnmplib.codeplex.com   -  person Lex Li    schedule 02.04.2011


Ответы (1)


Действительно, если вы хотите работать с SNMP на C#, попробуйте эту сборку SNMPSharpNet. Это очень полезно.

Вы найдете в этот StackOverflow ответит на пример одного из способов (высокого уровня) его использования.

Но посмотрите документацию. Вы можете использовать эту сборку двумя способами:

  1. Низкий уровень для создания собственных PDU SNMP (V1, V2c, V3)
  2. Высокий уровень, где вы просто используете SNMP

Просто попробуйте.

JP

person JPBlanc    schedule 31.03.2011