Отправка структурированного пакета SNMP

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
tagirkaZ
Начинающий
Начинающий
 
Сообщения: 1
Зарегистрирован: 23.12.2011 (Пт) 18:36

Отправка структурированного пакета SNMP

Сообщение tagirkaZ » 23.12.2011 (Пт) 20:02

Доброго ремени суток, друзья.
Имеется массив переменных типа byte, в котором зашифрован SNMP-запрос. Нужно отправить его по протоколу UDP и получить ответ.
Сразу скажу что я в этом деле новичок, поэтому возможно мои действия покажутся смешными опытным программистам. Я попытался решить проблему следующим образом. Создать два компонента winsock, один из которых отправляет пакет, а второй должен принять ответ. Параметры первого winsock: RemoteHost="localhost"
RemotePort=161
Вопрос: как правильно при помощи метода SendData отправить массив, в котором закодирован SNMP-запрос? Можно ли просто написать так:
udp1.SendData p ' где p - как раз массив байтов, udp1 - название winsock
И как правильно настроить второй winsock. Ведь ответ на SNMP запрос, насколько я знаю, может быть отправлен на любой порт. Так какой же порт указать в параметре RemotePort второго winsock?
Возможно сам подход к решению проблемы неправильный?
Буду очень благодарен, если вы подскажите что-нибудь! Заранее спасибо!

Sam777e
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 157
Зарегистрирован: 16.09.2010 (Чт) 4:33

Re: Отправка структурированного пакета SNMP

Сообщение Sam777e » 23.12.2011 (Пт) 22:38

что-нибудь

Найди

Название: Microsoft Visual Basic 6.0. Мастерская разработчика
Автор: Джон Кларк Крейг, Джефф Уэбб
Год издания: 2001

Глава 7, там Winsock, UDP, TCP
Здоровья и удачи

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Отправка структурированного пакета SNMP

Сообщение alibek » 24.12.2011 (Сб) 10:44

tagirkaZ писал(а):Имеется массив переменных типа byte, в котором зашифрован SNMP-запрос. Нужно отправить его по протоколу UDP и получить ответ.

Прежде всего нужно понимать, что протокол UDP не является сессионным. По UDP просто отправляются датаграммы, без подтверждения доставки.

tagirkaZ писал(а):Вопрос: как правильно при помощи метода SendData отправить массив, в котором закодирован SNMP-запрос? Можно ли просто написать так:
udp1.SendData p ' где p - как раз массив байтов, udp1 - название winsock

Да. Перед отправкой нужно настроить IP-адрес и порт (либо указать их при вызове метода Connect).

tagirkaZ писал(а):И как правильно настроить второй winsock. Ведь ответ на SNMP запрос, насколько я знаю, может быть отправлен на любой порт. Так какой же порт указать в параметре RemotePort второго winsock?

Не на любой. Ответы направляются на порт 162. Нужно слушать этот порт (использовать метод Bind). Какой будет RemotePort — совершенно не важно.

tagirkaZ писал(а):Возможно сам подход к решению проблемы неправильный?

Возможно.
Если стоит задача автоматизации небольшой сети, то практика показывает, что самыми подходящими для этого являются скриптовые языки. И если использовать Winsock из этого языка не получится (ЕМНИП он требует контейнер), тогда нужно использовать другие компоненты.
Lasciate ogni speranza, voi ch'entrate.


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 14

    TopList  
cron