Форум: "Сети";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];
ВнизSNMP-Протокол Найти похожие ветки
← →
Андрей 2004 (2004-10-29 11:39) [0]Здраствуйте уважаемые Мастера. Есть вопрос следующего характера.
Сейчас занимаюсь созданием SNMP-агента. Принимаю запросы от сервера нормально, т.е. все пакеты которые сервер передает на 161 порт SNMP-агенту, я принимаю и полность распаковываю. Но за недостатком информации я решил запустить стандартный Виндовый SNMP-сервис и отправить ему тот запрос который я принял от сервера (для того что бы посмотреть формат ответа), но при это в ответ я ничего не получаю. Причем Если я запускаю мой менеджер которым перехватил запрос от сервера и он нормально все принимает.
Внимание вопрос. В чем дело, почему стандартный Виндовый сервис не возвращает мне ответ?
Да, и народ может кто порекомендует информацию по SNMP-протоколу.
RFC- не предлогать, уже весь изучил. Или хотя бы формат ответа от агента к серверу.
ЗАРАНЕЕ ОЧЕНЬ БЛАГОДАРЕН.
← →
Андрей 2004 (2004-10-30 17:30) [1]Народ, неужели никто ничего не сможет подсказать. А то уже крыша едет не могу понять в чем дело. Почему обмен не удается.
Код приводить не буду, так как он стандартный. Т.е. Создаю UDP-сокет, делаю bind на 161 первый порт. И через recvfrom-нормально все принимаю и распаковываю (от сервера). Но после того как я подымаю стандартный виндовый сервис SNMP и отправляю точ в точ такой же пакет как и принял этому сервису (соответственно с другого порта), при помощи sendto- и ставлю свой процесс в recvfrom-и ответа нету. Это мне необходимо сделать чтобы принять ответ и посмотреть как выглядит ответный пакет. Но я ничео не принимаю. PLzzz Help.
← →
Saint_Byte (2004-10-30 20:09) [2]Возможно Мс как обычно начихало на стандарты =((
← →
Андрей 2004 (2004-11-01 00:05) [3]Попробую привести примерный код (по памяти) потому как пока я не дома.
var
Buffer:array [0..1024] of byte;
Sock:TSocket;
adrr,AddrIn:tsockaddr;
i:integer;
begin
sock:=socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP);
Apaddr:="0.0.0.0";
addr.sin_family:=AF_INET;
addr.sin_port:=htons(161);
Addr.sin_addr.S_addr:=inet_addr(pchar(ApAddr));
bind(Sock,Addr,sizeof(addr));
i:=sizeof(ADDRIn);
RecvFrom(Sock,Buffer,Sizeof(buffer),AddrIn,I);
Далее распаковываю, делаю необходимые изменения, по RFC, а затем отправляю назад => образом:
i:=sizeof(ADDRIn);
SendTo(Sock,Buffer,Sizeof(buffer),AddrIn,I);
В чем может быть проблема, может я чего то недопонимаю в работе с UDP-протоколом, я обычно с ТСР-сталкивался.
← →
Андрей 2004 (2004-11-03 14:12) [4]Дааа на сколько я понял данный вопрос мастерам не по зубам....:-)))))
Как и мне ....:-(((((((
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2005.01.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.035 c