Кто мне доходчиво расскажет как под win2000 в C создавать всякие пакеты, типа ARP, ICMP etc18.05.02 18:24 Число просмотров: 1215 Автор: cool Статус: Незарегистрированный пользователь
> Можешь еще утановить для сокета IP_HDRINCL и полностью > создавать пакет вручную, до ip заголовка, только проблема в > том что мне так и не удалось отправить такой пакет, если у > тя получится - напиши плз как. А по подробнее можешь про это обьяснить.
> А если хочешь просто слать пинги юзай icmp.dll. tux00l<at>tut.by
Кто мне доходчиво расскажет как под win2000 в C создавать всякие пакеты, типа ARP, ICMP etc18.05.02 11:56 Автор: cool Статус: Незарегистрированный пользователь
Кто мне доходчиво расскажет как под win2000 в C создавать всякие пакеты, типа ARP, ICMP etc18.05.02 17:37 Автор: Killer{R} Статус: Незарегистрированный пользователь
Если хочешь просто кинуть icmp пакет, можно юзать рав сокеты, например....
sc=socket(2,3,1);
шлем так...
__fastcall icmpsend(SOCKET socket,sockaddr *sa,char *buf,int len)
{
DWORD s=0;
DWORD w1;
DWORD w2;
int lenx=len;
if (2*len/2!=len) lenx++;
buf[lenx]=0;
for(int i=0;i<lenx;i+=2)
{
w1=buf[i];
w2=buf[i+1];
w1&=0xff;w2&=0xff;
s+=(0x100*w1+w2);
while(s>0xFFFF)
{
s-=0x10000;
s++;
}
}
s^=0xFFFF;
buf[3]=s;
buf[2]=s>>8;
sendto(socket,buf,len,0,sa,16);
}
Можешь еще утановить для сокета IP_HDRINCL и полностью создавать пакет вручную, до ip заголовка, только проблема в том что мне так и не удалось отправить такой пакет, если у тя получится - напиши плз как.
А если хочешь просто слать пинги юзай icmp.dll.
Кто мне доходчиво расскажет как под win2000 в C создавать всякие пакеты, типа ARP, ICMP etc18.05.02 18:24 Автор: cool Статус: Незарегистрированный пользователь
> Можешь еще утановить для сокета IP_HDRINCL и полностью > создавать пакет вручную, до ip заголовка, только проблема в > том что мне так и не удалось отправить такой пакет, если у > тя получится - напиши плз как. А по подробнее можешь про это обьяснить.
> А если хочешь просто слать пинги юзай icmp.dll. tux00l<at>tut.by
Кто мне доходчиво расскажет как под win2000 в C создавать всякие пакеты, типа ARP, ICMP etc18.05.02 18:47 Автор: Killer{R} Статус: Незарегистрированный пользователь
Если для RAW сокета уставноить эту опцию вот так:
bool tr=true;
setsockopt(sc,IPPROTO_IP,IP_HDRINCL,(char *)&tr,sizeof(tr));
то по написанному в спецификации winsock2.0 ты через sendto ты будешь
слать пакет созданный тобой полностью, включая заголовок, рассчитанные тобой контрольные суммы и тп, я пытался так делать, но sendto слать отказывается, ошибка типа адрес недоступен. Если хочешь могу кинуть мылом доки.
Кто мне доходчиво расскажет как под win2000 в C создавать всякие пакеты, типа ARP, ICMP etc18.05.02 19:00 Автор: cool Статус: Незарегистрированный пользователь
> Если для RAW сокета уставноить эту опцию вот так: > bool tr=true; > setsockopt(sc,IPPROTO_IP,IP_HDRINCL,(char > *)&tr,sizeof(tr)); > то по написанному в спецификации winsock2.0 ты через sendto > ты будешь > слать пакет созданный тобой полностью, включая заголовок, > рассчитанные тобой контрольные суммы и тп, я пытался так > делать, но sendto слать отказывается, ошибка типа адрес > недоступен. Если хочешь могу кинуть мылом доки. Кидай на tux00l<at>tut.by , заранее спасибо