![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Подмена сокета при сборки пакета. [D7, NT4, Win2k, WinXP]
Diesel © (2005-04-11 19:35:00)В общем тематика распространённая и хотелось бы спросить у людей работавших с сокетами на таком уровне.
Проблема вот в чём заключается.
Есть предположим IP (192.168.0.1) и есть ип (192.168.0.100)принадлежащие одной сети с одной маской и видящие друг друга безусловно, и сокет под винду уже настроен и работает. Необходимо послать пакет (собранный руками естественно) с ип 192.168.0.1 на узел 192.168.0.100 указав мак адрес той сетевухи, а ип исходящего подменить на 192.168.0.2. Т.е. мне не важно получу ли я ответ обратно, нужно зарегистрировать факт отправки пакета.
И вопрос номер два - организация броаткаста для дакой же классовой сети с мак адресом назначения FF:FF:FF:FF:FF:FF
Как это сделать в Линуксе я знаю, и на ассемблере мы организовали такое создание сокета, но необходимо это привязать к апи MS.
Заранее спасибо. Плиз оффтоп не добавлять, задача описана подробна.
Verg (2005-04-11 20:09:00) [1]
> с ип 192.168.0.1 на узел 192.168.0.100 указав мак адрес
> той сетевухи, а ип исходящего подменить на 192.168.0.2.
Ну в чем проблема? SOCK_RAW + IP_HDRINCL + sendto
Тем более, что на Линуксе знаешь.
MAC адрес и сам "укажется" по IP назначения (ARP сработает), а dst и src в IP пакете ставь какие тебе надо. Но МАС источника будет оригинальный. Иначе понадобиться доступ к канальному уровню (SOCK_PACKET в Линуксе, BPF в FreeBSD и WinPCAP в Windows).
P.S. Их у нас называют модераторами и править им бы пришлось оччень много, а не только заголовок...
Diesel (2005-04-11 19:36:00) [2]Простите за ошибочку в заголовке. Если есть модеры, плиз поправьте и сотрите это.