Форум: "Сети";
Текущий архив: 2008.02.24;
Скачать: [xml.tar.bz2];
ВнизUDP перехватчик Найти похожие ветки
← →
Сергей Колесник (2007-06-06 10:48) [0]Немного поюзал поиск, ответа не нашёл, пишу сюды.
делаю простенький udp перехватчик, работает так:
1) ловит udp пакет отправленный на 255
2) забирает его содержимое (библиотечка Packet Sniffer SDK VCL Edition )
3) отправляет свой пакет с тем же содержимым но на фиксированный адрес и порт вот таким способом
WSAStartup($202,init);
Sock:=Socket(PF_INET,SOCK_DGRAM,IPPROTO_UDP);
SockOpt:=TRUE;
SetSockOpt(Sock,SOL_SOCKET,SO_BROADCAST, PChar(@SockOpt),SizeOf(SockOpt)) ;
Target.sin_port:=57367; //номер порта htons(6112);
Target.sin_addr.S_addr:=inet_addr("1.1.1.1");
Target.sa_family:=AF_INET;
SendTo(Sock,BData,3,0,Target,SizeOf(Target));
WSACleanup;
или же через инди удипи клиента (предварительно настроен конечно)
udp.SendBuffer(bdata,3);
результат получается, если верить дамперу, один.
Проблема:
порт источник в новом пакете менятеся на произвольный, а мне нужен такой же как и в необработанном, совпадающий с портом адресатом.
← →
Сергей Колесник (2007-06-06 10:52) [1]Забыл добавить, может ктонибудь подскажет где найти компонент (или же прогу) аналогичный IdMappedPortTCP, но только для UDP ?
← →
Сергей М. © (2007-06-06 10:55) [2]
> порт источник в новом пакете менятеся на произвольный
Ф-ция bind() позволяет указать требуемый порт
← →
SlymRO © (2007-06-06 11:28) [3]Если отсыл не от своего адреса и порта, то только RAW пакетом
← →
Сергей Колесник (2007-06-06 14:15) [4]Пасиб, забиндил.
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2008.02.24;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.04 c