Вот нашел пару примеров http://komsoft.ru/pma/gen_packet.htm
http://milw0rm.com/exploits/1599 с сырыми сокетами.Но вот только все никак немогу понять каким местом и на какое крепятся все эти struct igmphdr struct ip_header struct udp_header и подобные к сокету Обьясните плиз кто знает.
они не к нему не крепятся... это структуры для разбора пакетов... заполнили и отправил пакет... и также принимать... кароч чтоб удобней было... канеш если ты все протоколы знаешь на изусь то можно просто вручную писать типа buf[]="\0x2\0x23.... так вот чтоб этого не делать и созданы эти структуры... знаю что не оч понятно объяснил, сорь : D
у каждого пакета есть IP заголовок - ip_header. это типа реализация IP протокола. на его основе может быть реализован более высокоуровневый протокол. например udp. таким образм получается след:
ip_header
udp_header
или, скажем, tcp:
ip_header
tcp_header
по сути дела структуры в буффере идут друг за другом. на практике лучше выделить буффер. указатель на начало буффера - указатель на структуру ip_header. затем указатель на структуру upd_header...
А куда пихать данные которые к примеру нужно передать через Udp пакеты,и какой максимальный обьем данных можно передать в одном пакете транспортного протокола(к примеру того же Udp)?
протокольные пакеты вкладываются друг дружке в поле данных как МАТРЕШКА!
данное действие называется ИНКАПСУЛЯЦИЕЙ.
Вопрос должен все таки содержать информацию о том что ты собираешься делать
разбирать пакеты на составляющие либо собираешься их собирать(КРАФТИТЬ)
но в любом случае начинать освоение следует с переводных rfc которые лежат на
citforum.ru
.......
теперь осталось сразу раставить точки ! Если собираешься работать слишком низко
и разбирать даже ethernet пакеты , то забудь о RAW-socket , роусокеты ввели в w2k
и постоянно пытаются заблокировать (они как правило не пропускают пакеты(ioctlsock) если нет
приложения готового их обработать, поэтому снифинг будет урезанный.... крафтинг
так же будет урезанный)
Поэтому WinPcap тебе в руки!!! ЭТО НЕ RAW_SOCKET!!!
Почуствуешь себя человеком -100%!
По поводу максимального размера пакета для UDP ! Поскольку UDP пакеты не
поддерживают дефрагментацию, то то что пошлешь то и получат ( на этом были
построены первые Nuker-Ы. Модемы падали как яблоки , побеждал тот у кого скорость
больше!)
Последний раз редактировалось Delimiter; 15.11.2007 в 03:03..