Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2008.03.02;
Скачать: [xml.tar.bz2];

Вниз

Отправка RAW пакета   Найти похожие ветки 

 
Сергей Колесник   (2007-06-09 09:38) [0]

Как в рекламе говорят, всё что мне сейчас нужно это отправить RAW пакет, но мой ламерский код не работает, если не трудно направьте на путь истинный :)

procedure lsend(a: array of byte);
begin
send(sock,a,sizeof(a),0);
end;

WSAStartup($202,init);

Sock:=Socket(PF_INET,SOCK_RAW,IPPROTO_RAW);

lsend ([0,0,0,0,0,0,0,0,0,0,0,0,11,6,0,0,0,0,0,0,176,0,0,0,0,0,0,0,171,216,182,132,85, 170,199,1,234,5,0,0,58,0,0,0,58,0,0,0,255,255,255,255,255,255,0,21,242,238,50,16 8,8,0,69,0,0,44,121,104,0,0,128,17,169,50,10,8,14,31,255,255,255,255,23,224,23,2 24,0,24,23,248,247,47,16,0,80,88,51,87,21,0,0,0,0,0,0,0]);
// это вырезанный из сниффера рабочий удипи пакет

WSACleanup;


 
Сергей М. ©   (2007-06-09 10:01) [1]

Как думаешь, чему будет равно выражение sizeof(a) ?


 
Сергей Колесник   (2007-06-09 10:11) [2]

я проверял при отладке через переменную, размер правильный ... но пакет в сеть не уходит, правда не догадался посмотреть, ошибки :( ... ща гляну


 
Сергей Колесник   (2007-06-09 10:14) [3]

вот она:

WSAENOTCONN


 
Сергей М. ©   (2007-06-09 10:24) [4]


> размер правильный


А, ну да, у тебя открытый массив.

И ?


 
Сергей М. ©   (2007-06-09 10:35) [5]

Вообще-то для connectionless-протоколов предназначена ф-ция sendto(), а не send()


 
Сергей М. ©   (2007-06-09 10:38) [6]

И к тому же если это "вырезанный из сниффера рабочий удипи пакет", то почему же ты при создании гнезда указываешь IPPROTO_RAW, а не IPPROTO_IP ?


 
Сергей Колесник   (2007-06-09 10:53) [7]

с этой ошибкой понятно, просто нужно было либо юзать connetc либо sendto

он теперь возник другой вопрос, исчезла информация о портах, исказилось поле данных ... короче на выходе пакет имеет осмысленные значения только до поля айпи адреса назначения


 
Сергей Колесник   (2007-06-09 10:54) [8]

упс ... не видел ответа, щас попробуем с ipproto_udp


 
Сергей Колесник   (2007-06-09 11:35) [9]

Только сейчас дошло, что сокет при отправке генерирует свой собственный заголовок пакета, а мою "дату" фигачит в качестве поля значений. А я то наивный понадеялся что смогу таким образом отправить в сеть пакет со своим собственным заголовком ...

А может всётаки это осуществимо?


 
Сергей Колесник   (2007-06-09 11:37) [10]

ну а если ещё конкретней, то мне надо чтобы в качестве порта источника в заголовке пакета был указан уже открытый и использующийся в системе порт, на который я ессно не могу забиндить сокет.


 
Сергей М. ©   (2007-06-09 11:39) [11]


> А может всётаки это осуществимо?


см. setsockopt(Ыщсл, IPPROTO_IP, IP_HDRINCL, ..)


 
Сергей Колесник   (2007-06-09 12:00) [12]

посмотрел хелпу моей Д6 и юнит винсока - нет там таких констант :(


 
Сергей М. ©   (2007-06-09 12:12) [13]

смотри в MSDN - там все есть


 
Сергей Колесник   (2007-06-09 12:56) [14]

там тоже нет таких параметров этой функции

смотрел здесь: http://msdn2.microsoft.com/en-us/library/ms740476.aspx


 
Сергей М. ©   (2007-06-09 13:05) [15]


> там тоже нет таких параметров этой функции


Есть.

http://msdn2.microsoft.com/en-us/library/ms738586.aspx


 
Сергей М. ©   (2007-06-09 13:07) [16]

Константа эта равна десятичной двойке.


 
Сергей Колесник   (2007-06-09 13:46) [17]

нашел :)

спасибо ... буим изучать


 
NeyroSpace ©   (2007-06-12 15:25) [18]

Во-первых IPPROTO_RAW полностью поддерживает только WIN2K и выше.
Во-вторых нужно понимать как инкапсулируются данные в пакетах.

Если работаешь в IPPROTO_RAW, то ни о каком порте тут речи нет. Ты спускаешься на уровень ниже. Твои данные сразу внутри протокола IP, дальше идет заголовок протоколов транспортного уровня например TCP, UDP, ICMP и ты их должен САМ правильно заполнить, в том числе, расчитать контрольную сумму, если она есть и т.д.



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2008.03.02;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.039 c
8-1174744468
VitAngel
2007-03-24 16:54
2008.03.02
Снимок с Вебкамеры


8-1175243509
Jprrrrrrrrr
2007-03-30 12:31
2008.03.02
Заголовок jpeg


15-1200331591
Черный Шаман
2008-01-14 20:26
2008.03.02
Современная астрология и кадры.


15-1201494496
Slider007
2008-01-28 07:28
2008.03.02
С днем рождения ! 28 января 2008 пондельник


15-1201196240
Lip
2008-01-24 20:37
2008.03.02
Как называется алгоритм сортировка?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский