|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
29.05.2012, 21:54 | #11 |
Участник клуба
Регистрация: 23.12.2010
Сообщений: 1,129
|
Беда в том, что при установлении tcp-соединения клиент и сервер обмениваются случайно сгенерированными числами (начальными номерами последовательностей), и нумеруют каждый пересланный байт соответственно.
Без знания этих двух чисел ты не сможешь отправить пакет - сервер просто выбросит его как мусор. Узнать их ты можешь либо от клиента (но, полагаю, это не твой случай), либо с помощью сниффера, как уже писали выше. Ну а зная их ты легко сможешь сгенерировать от имени клиентского порта tcp-пакет и отправить его через raw socket. Но стОит помнить о том, что в некоторых случаях после отправки такого сообщения может сломаться сеанс общения между клиентом и сервером (опять же, из-за рассинхронизации sequence number). Советую почитать хорошее описание протокола tcp, в общем, и большинство вопросов исчезнет. |
29.05.2012, 23:13 | #12 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
veniside прав, можно работат RAW пакетами, т.е работать с сокетами на низком уровне и формировать заголовки пакетов, но этот уровень работает почему то в Win2000, в других ОС блокируется формирования и изминения ip заголовка пакета. Почитай про RAW в интернете, поймешь о чем речь.
Последний раз редактировалось Aliens_wolfs; 29.05.2012 в 23:21. |
30.05.2012, 01:48 | #13 |
Пользователь
Регистрация: 28.02.2012
Сообщений: 20
|
а пример можно как выглядят те цифры
|
30.05.2012, 10:18 | #14 | |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
Примеры в интернете есть по поводу RAW пакетов, вот к примеру здесь http://delphiworld.narod.ru/base/sen..._packages.html.
Еще есть такая теория, сокет имеет свой дескриптор, зная этот дескриптор можно управлять им, клиент который делает подключение создает сокет, так вот зная дескриптор сокета можно перенаправлять пакеты, отключать его, перекидывать пакеты, маршрутезировать т.е. делать все что захочешь. Из статьи в интернете Цитата:
Могу сказать одно что сниффер неловит эти дескрипторы(, тут нужно искать другое решение, возможно можно сделать через NetStat Еще почитай здесь http://www.wasm.ru/forum/viewtopic.php?id=33713 Последний раз редактировалось Aliens_wolfs; 31.05.2012 в 00:28. |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как отправить UDP пакет | Larboss | Работа с сетью в Delphi | 0 | 20.10.2011 21:30 |
Проверка скорости интернет соеденения | gufon | Работа с сетью в Delphi | 5 | 13.06.2011 23:53 |
Не могу отправить пакет? | VintProg | Работа с сетью в Delphi | 3 | 01.12.2010 07:35 |
Скорость соеденения | blackstersl | Работа с сетью в Delphi | 3 | 30.10.2008 10:32 |
Отправить , а потом принять пакет. | casper123 | Работа с сетью в Delphi | 3 | 16.08.2008 02:56 |