Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Анализ заголовка и части содержимого IP пакета 02.03.02 05:24
Автор: void Статус: Незарегистрированный пользователь
|
Ниже в шестнадцатиричном представлении приведены заголовок IP пакета и часть его содержимого.
Где найти прогу, чтобы прочитат ЭТО!!! в "нормальном виде".
Вот заголовок IP пакета:
45 60 00 2c 00 00 00 00 ee 06 5a 56 d8 21 23 d6 c3 97 b2 86
А вот часть пакета:
af 4f 00 35 13 60 ce 60 13 60 ce 5f 60 12 10 20 a6 77 00 00 02 04 02 18
|
 |
Анализ заголовка и части содержимого IP пакета 03.03.02 19:03
Автор: Dude Статус: Незарегистрированный пользователь
|
Не знаю насчет программ, но если знаешь протокол, то с заголовком проблем нет, его можно просто прочитать:
пакет послан на IP 195.151.178.134
c IP 216.33.35.214
это IP-пакет версии 4 (IPv4)
внутри - TCP-содержимое (протокол - 6)
общая длина 194 байта (по-моему)
time to live 238
и еще кой-какая инфа..
А вот второй кусок - это, по-моему, не TCP-заголовок, а чтобы его прочитать, по-любому надо знать, от чего это часть: если от заголовка какого-то протокола, то смотри формат заголовка и расшифровывай, если plain text - соответственно переводи в ASCII и читай (но это и не plain text), возможно много вариантов...
|
 |  |
НУ Вот 04.03.02 02:04
Автор: Korsh <Мельников Михаил> Статус: Elderman
|
> А вот второй кусок - это, по-моему, не TCP-заголовок, а Это именно TCP-заголовок:
Source port = 44879
Destination port = 53 DNS
Seq = 325111392
Ak n=325111391
Chechsum=0xA677 (Correct)
Max Segmebt 536 bytes
|
 |  |
Анализ заголовка и части содержимого IP пакета 04.03.02 01:58
Автор: void Статус: Незарегистрированный пользователь
|
> Не знаю насчет программ, но если знаешь протокол, то с > заголовком проблем нет, его можно просто прочитать: > пакет послан на IP 195.151.178.134 > c IP 216.33.35.214 ...
Круто!!! Как ты это сделал ?
Поделись , пожалуйста.
Не думаю, что бы ты "вручную" брал байты и слова в шестнадцатиричном представлении, переводил в десятичную нотацию.
Может написать инфу самому?
|
 |  |  |
Анализ заголовка и части содержимого IP пакета 04.03.02 21:24
Автор: Dude Статус: Незарегистрированный пользователь
|
Извини, но именно вручную. Че-то зажег меня твой вопрос, вот я и потыкал на калькуляторе (вручную:-). Прогу, которая это делает, написать, по-моему, не вопрос.. Примерно так, извини, если есть маленькие баги:
void ip_print (struct iphdr * ip)
{
printf ("ver: %hu\n"
"ihl: %hu\n"
"tos: ",
ip->version, ip->ihl, ip->tos);
print_bin (ip->tos);
printf (" bin\n");
printf ("tot_len: %u\n"
"id: %u\n"
"frag_off: %d\n"
"ttl: %hu\n"
"protocol: %hu\n"
"check: %u\n",
ip->tot_len,
ip->id,
ip->frag_off,
ip->ttl,
ip->protocol,
ip->check
);
printf ("saddr: %s (%lu)\n", inet_ntoa(ip->saddr), ip->saddr);
printf ("daddr: %s (%lu)\n", inet_ntoa(ip->daddr), ip->daddr);
}
---
Соответственно struct iphdr лежит в netinet/ip.h.
Print_bin - печатает поле TOS по битам, так удобнее.
|
 |  |  |  |
Таки сделал, но... 12.03.02 05:34
Автор: void Статус: Незарегистрированный пользователь
|
Прогу написал. Проверил. Работает. Если на форуме разрешены большие сообщения и ЭТО интересно тебе, могу слить листинг...
Но!!!! Как правильно подсчитывать CheckSum (т.е. контролировать корректность суммы)?
Следует арифметически складывать 16-ти битные слова или использовать логическое сложение (битовая операция ИЛИ)?
Как????
|
|
|