Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.30;
Скачать: CL | DM;

Вниз

Структура IP,TCP и ICMP   Найти похожие ветки 

 
-=Demon=-   (2004-04-08 19:39) [0]

Всем привет. Народ если не сложно покажите как выглядет структура IP,TCP и ICMP. И как их склеивать для отправки.


 
Verg ©   (2004-04-08 22:02) [1]

RFC791 - IP
RFC792 - ICMP
RFC793 - TCP
RFC768 - UDP


 
-=Demon=-   (2004-04-09 12:21) [2]

Не я конечно благодарен за такую помощь:-))))
Но нельзя ли поподробнее...
Если честно меня волнует то как в этих структурах выделяется место под данные.
Под словом структура я имею ввиду:

type
IPHeader =record
 VerLen :byte;   // версия и длина заголовка
 TOS    :byte;   // тип сервиса
 Len    :Word;   // длина всего пакета
 ID     :Word;   // Идентификация
 Flags  :Word;   // флаги и смещения
 TTL    :byte;   // время жизни пакета
 Proto  :byte;   // протокол
 XSum   :Word;   // контрольная сумма
 IPSrc  :DWord;  // IP-адрес отправителя
 IPDst  :DWord;  // IP-адрес назначения
end;

А как выделяется место под информацию, и как склеить для отправки Например IP(заголовок) и (TCP-Пакет) я не знаю.
Пожалуйста помогите.....


 
Rouse_ ©   (2004-04-09 12:30) [3]

В смысле, ты хочешь руками пакет собирать?
Или еще что-то?


 
Verg ©   (2004-04-09 13:04) [4]

Струтура сетевого пакета

+----------------------+
!  Заголовок (*Header) !
+----------------------+
!  Данные              !
+----------------------+

Пример структуры TCP/IP пакета:
+----------------+
!  Заголовок IP  !
+----------------+
!  Заголовок TCP !
+----------------+
!  Данные        !
+----------------+

 Заголовок в общем случае переменной длины, данные тоже.
Из-за этого, например, никогда не найти структуру (record, struct), описывающий заголовок TCP/IP. Только раздельно -
заголовок TCP, заголовок IP.
 В структурах, описывающих заголовки пакетов того или иного протокола, описывают фиксированную часть заголовка. На Паскале при этом надо писать packed record, чтобы исключить несоответствие из-за "выравнивания" полей при компиляции.


 
-=Demon=-   (2004-04-09 18:13) [5]


> В смысле, ты хочешь руками пакет собирать?
> Или еще что-то?


Да. И мне надо описание структур Как TCP так ICMP и UDP. Втом смысле что какие поля имеют какие типы данных. И Как склеивать IP заголовок и TCP пакет. И сколько Бит данных обычно отводиться под информацию.


 
Smithson ©   (2004-04-09 18:17) [6]

Как склеивать - элементарно. В любом описании IP указывается, что за заголовком следует поле "данные", длинна которого указана в заголовке. Вот в эти данные и помещаешь TCP-пакет. Или ICMP. А вообще воткни снифер и послушай себя часок, а потом посмотри, что он там накопил. Будет база для анализа из реальных (= работающих) пакетов.


 
-=Demon=-   (2004-04-10 02:30) [7]

Если можно покажите програмно как это делается.(Как склеивание так и сами описание структур). Хотя не, как склеивается я понял, покажите описание самих стуктур как TCP,ICMP и UDP так и IP. Заранее всем благодарен.


 
-==-   (2004-04-11 03:24) [8]

.


 
-==-   (2004-04-11 12:11) [9]

Народ вот структуры которые есть у меня:


IPHeader =record
 VerLen :byte;   // версия и длина заголовка
 TOS    :byte;   // тип сервиса
 Len    :Word;   // длина всего пакета
 ID     :Word;   // Идентификация
 Flags  :Word;   // флаги и смещения
 TTL    :byte;   // время жизни пакета
 Proto  :byte;   // протокол
 XSum   :Word;   // контрольная сумма
 IPSrc  :DWord;  // IP-адрес отправителя
 IPDst  :DWord;  // IP-адрес назначения
end;
PIcmp=^Icmp;
Icmp = record
       icmp_type:Byte; //Тип
       icmp_code:Byte; //Код
       icmp_cksum:Word;//СRС до 1
       icmp_id:Word;//Дескриптор
       icmp_seq:Word;//Последовательность
       icmp_data: DWORD;//Данные
       end;

TCPHeader =record
 SrcPort :Word;
 DstPort :Word;
 SeqNum  :DWord;
 AckNum  :DWord;
 DataOffs_Reserv_Cntrl :Word;
 Wnd     :Word;
 XSum    :Word;
 end;

Они правельно описаны или нет. Если нет, укажите пожалуйста, где ошибка.


 
-=Demon=-   (2004-04-11 12:12) [10]

Народ вот структуры которые есть у меня:


IPHeader =record
 VerLen :byte;   // версия и длина заголовка
 TOS    :byte;   // тип сервиса
 Len    :Word;   // длина всего пакета
 ID     :Word;   // Идентификация
 Flags  :Word;   // флаги и смещения
 TTL    :byte;   // время жизни пакета
 Proto  :byte;   // протокол
 XSum   :Word;   // контрольная сумма
 IPSrc  :DWord;  // IP-адрес отправителя
 IPDst  :DWord;  // IP-адрес назначения
end;
PIcmp=^Icmp;
Icmp = record
       icmp_type:Byte; //Тип
       icmp_code:Byte; //Код
       icmp_cksum:Word;//СRС до 1
       icmp_id:Word;//Дескриптор
       icmp_seq:Word;//Последовательность
       icmp_data: DWORD;//Данные
       end;

TCPHeader =record
 SrcPort :Word;
 DstPort :Word;
 SeqNum  :DWord;
 AckNum  :DWord;
 DataOffs_Reserv_Cntrl :Word;
 Wnd     :Word;
 XSum    :Word;
 end;

Они правельно описаны или нет. Если нет, укажите пожалуйста, где ошибка.



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

Текущий архив: 2004.05.30;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.025 c
6-1081360069
Ultracrash
2004-04-07 21:47
2004.05.30
TEmbeddedWB


14-1084023239
SPeller
2004-05-08 17:33
2004.05.30
PE Viewer 1.1 (нужна помощь)


14-1084134741
Sanek_metaller
2004-05-10 00:32
2004.05.30
Сфера


1-1084515780
INTAARI
2004-05-14 10:23
2004.05.30
Закрытие приложения при перезагрузке или выкл. компа


3-1084135839
Execute
2004-05-10 00:50
2004.05.30
ПРоблема с поучениям ID