Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TCP/IP пакеты [D5, Win2k]


Morfein ©   (2002-11-22 01:00:00) 

Вообще-то вопрос хотелось бы отнести конкретно
digitman"у, как, видимо, довольно продвинутому человеку...

Мне нужно сотворить подмену ip по протоколу tcp.
И я никак не могу составить пакет... не проходят
даже пакеты с флагами ask и syn...

Я сильно подозреваю, что дело в порядке байта, т.к. нигде
нет конкретной информации, в каком "формате"(little/big endian)
должны быть поля tcp-пакета.


Digitman   (2002-11-25 08:44:00) [1]

Нет, не все.
Конкретно CheckSum д.иметь Intel-порядок

сетевой же порядок, кр.того, д.иметь поле IPHeader.totallength


Morfein   (2002-11-22 20:23:00) [2]

Я в курсе, что в udp нету syn/ack... фраза касалась
протокола tcp...
И маршрутизатор моего провайдера прекрасно даёт
мне насладиться липовыми udp-пакетами...

Слух... я прекрасно знаю, чт такое порядок байта,
и какой он бывает... мне нужно знать, ВСЕ ЛИ ПОЛЯ
TCP пакета должны быть в сетевом порядке байта или нет?!
Например, контрольная сумма...


Digitman   (2002-11-22 13:03:00) [3]


> всё это я давно знаю и читал


Значит, плохо читал. Читай еще. Никаких syn/ack (и пр.) в UDP нет, ибо он не гарантирует доставку.

Касаемо порядка следования байт - network byte ordering требует поточную трансляцию многобайтных стуктур в порядке адресации от старшего байта структуры к младшему, в то время как Intel - наоборот.


> Мне нужно сотворить подмену ip по протоколу tcp.


Маршрутизатор твоего inet-провайдера скорее всего не даст тебе получить сие "удовольствие"


> по udp составление пакетов
> и подмена осуществляется прекрасно


А что тут удивительного ? Именно потому, что это не tcp (квитирующий доставку пакетов), такие "фокусы" в udp (никаких квитанций) в большинстве случаев и проходят


Digitman   (2002-11-22 12:56:00) [4]


> всё это я давно знаю и читал


Значит, плохо читал. Читай еще. Никаких syn/ack (и пр.) в UDP нет, ибо он не гарантирует доставку.

Касаемо порядка следования байт - network byte ordering требует поточную трансляцию многобайтных стуктур в порядке адресации от старшего байта структуры к младшему, в то время как Intel - наоборот.


Morfein   (2002-11-22 12:27:00) [5]

Видишь ли... дело в том, что по udp составление пакетов
и подмена осуществляется прекрасно... всё работает...
Но ведь и udp-пакет меньше...

Почитал я твою ссылочку... всё это я давно знаю и читал...
и в другом источнике и в этом... Про протокол tcp написано в
Net"e дохрена. Кста, в приведённом доке тож ни слова про порядок байта :)


Digitman   (2002-11-22 08:37:00) [6]

см. хэлп "Windows Sockets 2 API", topic "Byte Ordering"

и вот это
http://book.itep.ru/4/44/tcp_443.htm

ты проштудировал ? от корки до корки ? все ли условия соблюдаешь ?


Наверх

Титульная страница Поиск, карта сайта Написать письмо