Декодировать snmp pdu, полученный как сообщение в dgram - PullRequest
0 голосов
/ 05 июля 2019

PDU GetResponse частично декодирован, в консоли появляются странные символы

Я использую Wireshark и вижу, что пакет, полученный в буфере, такой же, но я не могу его декодировать.Результатом как файла console.log, так и записи в файл является последовательность байтов массива:

30 82 00 37 02 01 01 04 06 70 75 62 6c 69 63 a2 82 00 28 02 02 1b 8f 0201 00 02 01 00 30 82 00 1a 30 82 00 16 06 08 2b 06 01 02 01 01 05 00 04 0a 63 69 73 63 6f 2d 32 35 32 34

И это именно то, что в SNMPPDU в Wireshark.

var dgram = require('dgram');


client.on('message', function (message) {
   console.log(message);
   let arr = buf2hex(message);
   console.log(buf2hex(message));

введите описание изображения здесь

 fs.writeFile('message2.txt', new Buffer(message), (err) => {
    if (err) throw err;
    console.log('It\'s saved!');
  });
});

function buf2hex(buffer) { // buffer is an ArrayBuffer
  return Array.prototype.map.call(new Uint8Array(buffer), x => ('00' + 
         x.toString(16)).slice(-2)).join(' ');
}

Я могу видеть значение oid и слова public, но не сам oid ивсе остальные поля snmp.Вместо этого появляются странные символы (квадрат).

enter image description here

1 : https://i.stacenter код здесь k.imgur.com/ZXE4p.png

Моя цель - получить Varbind из ответа в виде строки.

...