![]() |
Модераторы: Snowy, Poseidon, MetalFan |
![]() ![]() ![]() |
|
Monty |
|
|||
![]() Advanced Lamer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3511 Регистрация: 3.4.2003 Где: Гваделупа Репутация: нет Всего: 27 |
но с чего начать не знаю ...... главная задача: поиск и справления содержимого пакета ..... допустим, байт FF заменять на 00 и т.д. ........... как это можно сделать
![]() ![]() ![]() -------------------- ... О, вещая моя печаль, О, тихая моя свобода И неживого небосвода Всегда смеющийся хрусталь! |
|||
|
||||
Dmitry V.Abramov |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.9.2003 Где: Saint-Petersburg Репутация: нет Всего: 4 |
Так в чем вопрос то? Какая сеть? Какой протокол? Формат пакета?
--------------------
/DVA |
|||
|
||||
Baa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2639 Регистрация: 12.4.2002 Где: Москва Репутация: нет Всего: 12 |
Так а в чем проблема? если приходят на один порт, а должны уходить с другого... с виду вообще плевое дело... открой самые простые исходники клиент-серверных приложений и посмори, как это делается.
-------------------- "Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande |
|||
|
||||
Monty |
|
|||
![]() Advanced Lamer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3511 Регистрация: 3.4.2003 Где: Гваделупа Репутация: нет Всего: 27 |
Нужен пример как сделать перенаправление с одного порта на другой, при этом обрабатывать данные Сеть можно считать LAN Протокол TCP и нужен будет UDP Формат пакета любой ........ а заголовки пакета изменять возможно? Так как это тоже может понадобится ![]() Baa таких исходников у меня нет ![]() Это сообщение отредактировал(а) Monty - 21.10.2003, 03:19 -------------------- ... О, вещая моя печаль, О, тихая моя свобода И неживого небосвода Всегда смеющийся хрусталь! |
|||
|
||||
Dmitry V.Abramov |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.9.2003 Где: Saint-Petersburg Репутация: нет Всего: 4 |
Baa А если речь о пакетах TCP, UDP, ARP, IPX, или что там еще может по сети летать... Вдруг человека заставили писать маршрутизатор? Тогда еще встанет задача работы с несколькими сетевыми интерфейсами. Вобщем, почти бесконечная тема при данной постановке "вопроса".
--------------------
/DVA |
|||
|
||||
Monty |
|
|||
![]() Advanced Lamer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3511 Регистрация: 3.4.2003 Где: Гваделупа Репутация: нет Всего: 27 |
Dmitry V.Abramov это я для себя
![]() ![]() Есть программы похожие как CommView, Iris Network Analiser и т.д. ...... они позволяют отлавливать пакеты и редактировать их, в том числе и заголоки ........ мне всего лишь надо фильтровать их, можно сказать "налету" ![]() -------------------- ... О, вещая моя печаль, О, тихая моя свобода И неживого небосвода Всегда смеющийся хрусталь! |
|||
|
||||
Dmitry V.Abramov |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.9.2003 Где: Saint-Petersburg Репутация: нет Всего: 4 |
Это еще терпимо... Главная проблема, пробраться почти на самый нижний уровень TCP-стека, решается с помощью SDK от WinPCap. Остальное - написанием оптимального и очень быстрого кода. --------------------
/DVA |
|||
|
||||
Dayana |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 352 Регистрация: 6.10.2002 Где: Тель-Авив Репутация: 1 Всего: 4 |
вот код, который я когда-то писала, используя TWSocket
попробуй что-то типа этого
сейчас я модуль wsocket не нашла, хотя думала, что он входит в поставку Делфи... у меня есть wsocket.dcu... если хочешь, вышлю... И завтра поищу исходник... |
|||
|
||||
Monty |
|
|||
![]() Advanced Lamer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3511 Регистрация: 3.4.2003 Где: Гваделупа Репутация: нет Всего: 27 |
Dayana спасибо .... уже что-то проясняется
![]() ![]() Dmitry V.Abramov не знаю я С ![]() -------------------- ... О, вещая моя печаль, О, тихая моя свобода И неживого небосвода Всегда смеющийся хрусталь! |
|||
|
||||
Dayana |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 352 Регистрация: 6.10.2002 Где: Тель-Авив Репутация: 1 Всего: 4 |
Monty, я имела ввиду исходник wsocket... :-)
|
|||
|
||||
Monty |
|
|||
![]() Advanced Lamer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3511 Регистрация: 3.4.2003 Где: Гваделупа Репутация: нет Всего: 27 |
Dayana оказывается его у меня нет ![]() ![]() -------------------- ... О, вещая моя печаль, О, тихая моя свобода И неживого небосвода Всегда смеющийся хрусталь! |
|||
|
||||
Dmitry V.Abramov |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.9.2003 Где: Saint-Petersburg Репутация: нет Всего: 4 |
"Врага нужно знать и уважать"... Врядли ты найдешь столь низкоуровневые сетевые вещи, писанные не на С. С другой стороны - там ведь есть готовые DLL! Уж в заголовочых файлах то можно разобрать набор параметров для 2,3,4 интересующих функций... --------------------
/DVA |
|||
|
||||
Dmitry V.Abramov |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.9.2003 Где: Saint-Petersburg Репутация: нет Всего: 4 |
Это стандартнейшая посылка UDP-message через Winsocket. Такое есть в любой библиотеке, не только в TWSocket от ICS (piette). TIdUDPClient/TIdUDPServer из Indy - ничем не хуже в этом плане. До пакетов же еще очень далеко. Работа с сетевыми пакетами лежит гораздо глубже. Там уже нет сокетов. Там порты, заголовки, фреймы, очереди, лешие, водяные... Русалок пока не попадалось. --------------------
/DVA |
|||
|
||||
Dayana |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 352 Регистрация: 6.10.2002 Где: Тель-Авив Репутация: 1 Всего: 4 |
Dmitry V.Abramov, тем не менее, используя winsocket, я с успехом получаю каждый пакет и обрабатываю его....
|
|||
|
||||
Dayana |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 352 Регистрация: 6.10.2002 Где: Тель-Авив Репутация: 1 Всего: 4 |
Или вот, открывает сокет на получение любых пакетов:
это уже на низком уровне... Это сообщение отредактировал(а) Dayana - 21.10.2003, 23:15 |
|||
|
||||
Dmitry V.Abramov |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.9.2003 Где: Saint-Petersburg Репутация: нет Всего: 4 |
Dayana ... Сокеты никогда не были "низким уровнем", ибо изначально задуманы для его сокрытия.
Как бы эдак заполнить TSockAddrIn, чтобы послать пакет с адресом соседа в поле sin_addr? ![]() Может вас смущают названия переменных RcvPack и PackLen ? Назовите их RcvMsg и MsgeLen. Или RcvBuffer и BufferLen. Так будет гораздо ближе к их настоящей роли в формировании сетевого пакета. --------------------
/DVA |
|||
|
||||
Dmitry V.Abramov |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.9.2003 Где: Saint-Petersburg Репутация: нет Всего: 4 |
Безусловно! Но все его поля вам не доступны. Лишь пользовательские данные и немного адресных. Вы сможете с помощью winsock отправить от себя ping на одну машину, но чтобы echo та послала на другую (не на ту, откуда уходил ping)? Вопрос риторический... Видимо, все из-за несогласовавнной терминологии - в одни и те же слова мы вкладываем очень разный смысл. Еще хуже с этим обстоит дело в изначальном вопросе этого раздела... --------------------
/DVA |
|||
|
||||
Monty |
|
|||
![]() Advanced Lamer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3511 Регистрация: 3.4.2003 Где: Гваделупа Репутация: нет Всего: 27 |
Все, я определился с программой
![]() ![]() ![]() Dayana спасибо ![]() ![]() Dmitry V.Abramov ок, раберусь, но если не выйдет с WinSock ![]() -------------------- ... О, вещая моя печаль, О, тихая моя свобода И неживого небосвода Всегда смеющийся хрусталь! |
|||
|
||||
Monty |
|
|||
![]() Advanced Lamer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3511 Регистрация: 3.4.2003 Где: Гваделупа Репутация: нет Всего: 27 |
Не выходит с примером =\
Вот так выглядит пакет:
Мне нужно только изменить то что он несет ....... допустим, rules на bules :) ...... приняв его с порта 3000 и отослать его на удаленный сервер на порт 4000 :) ........ как то так PS согласен что неправильно сформулировал вопрос в самом начале :) ...... Это сообщение отредактировал(а) Monty - 22.10.2003, 01:00 -------------------- ... О, вещая моя печаль, О, тихая моя свобода И неживого небосвода Всегда смеющийся хрусталь! |
|||
|
||||
Dmitry V.Abramov |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.9.2003 Где: Saint-Petersburg Репутация: нет Всего: 4 |
Monty Ну так, а как был получен этот пакет - раскроешь страшную тайну?
![]() Можно, конечно, покопавшись вычислить чей это буффер, с какого адреса и на какой шел, и с какого на какой порт. Но проще спросить об этом автора. --------------------
/DVA |
|||
|
||||
Dayana |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 352 Регистрация: 6.10.2002 Где: Тель-Авив Репутация: 1 Всего: 4 |
Monty, на всякий случай, может быть что-то полезное вычитаешь здесь. Поищи в сети описание заголовка пакета. В нем зашит и порт, и мак адрес, и остальная инфа... А вообще я с помощью сниффера смотрела, какие байты, что содержат...
|
|||
|
||||
Monty |
|
|||
![]() Advanced Lamer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3511 Регистрация: 3.4.2003 Где: Гваделупа Репутация: нет Всего: 27 |
Пакет я с помощью снифера получил
![]() ![]() Dmitry V.Abramov ![]() PS программа с таким кодом замирает тут же не открыв порта
Это сообщение отредактировал(а) Monty - 22.10.2003, 18:26 -------------------- ... О, вещая моя печаль, О, тихая моя свобода И неживого небосвода Всегда смеющийся хрусталь! |
|||
|
||||
Monty |
|
|||
![]() Advanced Lamer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3511 Регистрация: 3.4.2003 Где: Гваделупа Репутация: нет Всего: 27 |
Dayana я нашел тот компонент который ты использовала
![]() http://overbyte.delphicenter.com/frame_index.html -------------------- ... О, вещая моя печаль, О, тихая моя свобода И неживого небосвода Всегда смеющийся хрусталь! |
|||
|
||||
Dayana |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 352 Регистрация: 6.10.2002 Где: Тель-Авив Репутация: 1 Всего: 4 |
Monty, точно... я же оттуда его брала... Ну у тебя получилось?
|
|||
|
||||
Monty |
|
|||
![]() Advanced Lamer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3511 Регистрация: 3.4.2003 Где: Гваделупа Репутация: нет Всего: 27 |
Все демосы там работают .... пока буду сам разбиратся .... спасибо ![]() PS там нашел еще пару нужных компонентов которые я искал долго ![]() Добавленно: Просто появилась еще одна проблемма .... у той программы что я хотел перенапрявлять пакеты не фиксированый порт ![]() ![]() Это сообщение отредактировал(а) Monty - 22.10.2003, 21:25 -------------------- ... О, вещая моя печаль, О, тихая моя свобода И неживого небосвода Всегда смеющийся хрусталь! |
|||
|
||||
Dmitry V.Abramov |
|
||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.9.2003 Где: Saint-Petersburg Репутация: нет Всего: 4 |
О каком порте речь в подслушивающем режиме? Порт - это всего лишь 2 байта в заголовке. К тебе же начинают валить все заголовки сразу. Не замирает, а внимательно слушает ![]() У тебя, видимо, ничего не происходит по адресу 127.0.0.1. Попробуй, например, ping 127.0.0.1 А еще - SIO_RCVALL работает только в win2000 и выше. У тебя не Win9x? Кстати, GetHostName/GetHostByName раньше было принято вызывать строго после WSAStartUp. --------------------
/DVA |
||||
|
|||||
Dmitry V.Abramov |
|
||||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.9.2003 Где: Saint-Petersburg Репутация: нет Всего: 4 |
Либо не заметил вот этой строчки, либо она появилась после "Это сообщение отредактировал Dayana - 21.10.2003, 23:15 " ;) Если не заметил, то виноват и отзываю последующие затем хихикания. Тогда зацепился вот за это:
Вот только работать это будет лишь начиная с win2000. И не совместимо с программированием юниксных сокетов. Последнее может быть не важно. А вот первое... Это сообщение отредактировал(а) Dmitry V.Abramov - 22.10.2003, 23:04 --------------------
/DVA |
||||||
|
|||||||
Baa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2639 Регистрация: 12.4.2002 Где: Москва Репутация: нет Всего: 12 |
Вы прикалываетесь чтоли? енто ж loopback... ping localhost = тест сетевой карты... -------------------- "Duty is everything; the greatest of joys, the deepest of sorrows" Aribeth de Tylmarande |
|||
|
||||
Dmitry V.Abramov |
|
||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 30.9.2003 Где: Saint-Petersburg Репутация: нет Всего: 4 |
Нужно создать поток сетевых пакетов. Чем плох пинг в этом случае? Тем что шлет ICMP? Так ведь снифферу что там летает. А вот сетевую карту я бы не стал тестировать пингами на 127.0.0.1... ![]() --------------------
/DVA |
||||
|
|||||
Monty |
|
|||
![]() Advanced Lamer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3511 Регистрация: 3.4.2003 Где: Гваделупа Репутация: нет Всего: 27 |
Не выходит у меня с компонентами
![]() ![]() ![]() ![]() -------------------- ... О, вещая моя печаль, О, тихая моя свобода И неживого небосвода Всегда смеющийся хрусталь! |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Сети" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Сети | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |