Socketы написание прозрачного прокси.
есть два сервера 192.168.0.37:3001 и 192.168.0.38:3001
нужно весь выходящий поток 1-го сервера слать 2-му и на оборот.
данные бинарные. задежка должна быть минимум.
ну делаем прозрачный шлюз/прокси так можно сказать
срочно нужно. (вопрос жизни и сессии)
нужно весь выходящий поток 1-го сервера слать 2-му и на оборот.
данные бинарные. задежка должна быть минимум.
ну делаем прозрачный шлюз/прокси так можно сказать
срочно нужно. (вопрос жизни и сессии)
kadet89 писал(а):Не врубился в этот алгоритм...но думаю моно попробовать через бинарник изменить саму команду...только вот в каком файле она?
а можно поконкретней? что за сервера? кто кним цепляется и т.д. может задача решается банальным редиректом
-
- Лейтенант
- Сообщения: 204
- Зарегистрирован: 23.10.2007
- Откуда: Kiev, UA
- Поблагодарили: 2 раза
- Контактная информация:
ИМХО поставлено условие зделать через прокси, и никакими другими способами.koshmel писал(а):есть два сервера 192.168.0.37:3001 и 192.168.0.38:3001
нужно весь выходящий поток 1-го сервера слать 2-му и на оборот.
данные бинарные. задежка должна быть минимум.
ну делаем прозрачный шлюз/прокси так можно сказать
срочно нужно. (вопрос жизни и сессии)
And when you kill a man you're a murderer,
Kill many and you're a conqueror
Epic Quotes
Kill many and you're a conqueror
сервер кому то ведь должен что то отправлять. про клиента ничего не сказано. если нужен NAT то это RAW сокеты и пишем упрощенный вариант службы RRAS
если же эти два сервера необходимо просто связать друг с другом то пишется программа которая подключается к обоим и просто редиректит потоки
если же эти два сервера необходимо просто связать друг с другом то пишется программа которая подключается к обоим и просто редиректит потоки
и так разкажу подробней.
есть 2 девайса/серверы
Про девайсы
на них открыты два порта TCP
назначение портов: в устройстве есть два RS-232 входа. вот именно эти интерфейсы конвертируются в enternet
Aizek
эти два сервера необходимо просто связать друг с другом
пишется программа которая подключается к обоим и просто редиректит потоки.
вот с этим у меня проблема :(
есть 2 девайса/серверы
Про девайсы
на них открыты два порта TCP
назначение портов: в устройстве есть два RS-232 входа. вот именно эти интерфейсы конвертируются в enternet
Aizek
эти два сервера необходимо просто связать друг с другом
пишется программа которая подключается к обоим и просто редиректит потоки.
вот с этим у меня проблема :(
kadet89 писал(а):Не врубился в этот алгоритм...но думаю моно попробовать через бинарник изменить саму команду...только вот в каком файле она?
вот что сделал я.
проблема в том что надо переделать нитях чтобы receivebuf не блокировало процесс.
http://clip2net.com/page/m17455/1135090
т.е. мозг взорвало понимаю что нужно перевести в неблокирующие состояния прокси.
но с ними я не работал (
проблема в том что надо переделать нитях чтобы receivebuf не блокировало процесс.
http://clip2net.com/page/m17455/1135090
т.е. мозг взорвало понимаю что нужно перевести в неблокирующие состояния прокси.
но с ними я не работал (
kadet89 писал(а):Не врубился в этот алгоритм...но думаю моно попробовать через бинарник изменить саму команду...только вот в каком файле она?
- Megalan
- Разработчик
- Сообщения: 335
- Зарегистрирован: 02.04.2007
- Благодарил (а): 1 раз
- Поблагодарили: 29 раз
- Контактная информация:
о, а можно то же самое только для udp портов? Просто пишу сейчас порт редиректор, но немогу никак понять как редиректить udp.Aizek писал(а):вот держи готовую прогу
Последний раз редактировалось Megalan 09.06.2009, 23:35, всего редактировалось 2 раза.
просто замени везде IPPROTO_TCP на IPPROTO_UDP и всеMegalan писал(а):о, а можно то же самое только для udp портов?Aizek писал(а):вот держи готовую прогу
Последний раз редактировалось Aizek 09.06.2009, 23:42, всего редактировалось 2 раза.
см. выше
попробуй и отпишись. по идее все остальное остается таким же и должно работать на ура
попробуй и отпишись. по идее все остальное остается таким же и должно работать на ура
- x_000
- Полковник
- Сообщения: 4889
- Зарегистрирован: 25.02.2008
- Откуда: Deutsches Reich
- Благодарил (а): 6 раз
- Поблагодарили: 18 раз
до сих пор не понял, что нужно сделать :( Как я понял, есть две машины, а третья играет роль прокси и нужно, что бы через третью машину выходящий поток первой машины шел на вход второй машины? Так это же легко реализуется с помощью протокола ARP: третья машина отправляет арп-пакет первой, в котором указывается, что ИПу второй машины соответсвует MAC-адрес третьей, потом к третьей машине будет поступать выход первой машины, ну а дальше третья отправляет все это на первую.
- Megalan
- Разработчик
- Сообщения: 335
- Зарегистрирован: 02.04.2007
- Благодарил (а): 1 раз
- Поблагодарили: 29 раз
- Контактная информация:
хз, у меня вобще не работает, пишет что client не инитиализирован, а судя по тому на какой строке он валится, он сразу переходит к exit хоть все параметры и указанныAizek писал(а):см. выше
попробуй и отпишись. по идее все остальное остается таким же и должно работать на ура
вот версия для udp
обрати внимание на коментарий перед while(...)
обрати внимание на коментарий перед while(...)
Последний раз редактировалось Aizek 10.06.2009, 19:06, всего редактировалось 1 раз.