У меня есть некий девайс с которым небольшая программка общается через COM порт. Очень хотелось бы чтобы можно было эту програмку запускать удаленно, причем даже не в локальной сети а через интернет. Понятное дело, можно написать нечто которое бы принимало все с COM порта и посылало в сокет. А на другой стороне берем из сокета и в программку.
Но сокеты же не пройдут через firewall’ы (они стоят на обоих концах). Кто нибудь сталкивался с подобным? С чего начать?
Здравствуйте, qqqqq, Вы писали:
Q>У меня есть некий девайс с которым небольшая программка общается через COM порт. Очень хотелось бы чтобы можно было эту програмку запускать удаленно, причем даже не в локальной сети а через интернет. Понятное дело, можно написать нечто которое бы принимало все с COM порта и посылало в сокет. А на другой стороне берем из сокета и в программку. Q>Но сокеты же не пройдут через firewall’ы (они стоят на обоих концах). Кто нибудь сталкивался с подобным? С чего начать?
В таком разе остается только задействовать третью сторону. Некий сервер без файерволла, или с таким, через который ты сможешь пройти, да еще надо, чтоб у тебя были права запустить на нем TCP-сервер.
А дальше все просто этот сервер будет шлюзом передачи данных.
Или можно просто настроить файерволлы...
Успехов.
Фарш невозможно провернуть назад (с)Второе начало термодинамики
Есть готовое решение — SpartaCom (ремотный доступ к com порту).
На удаленном клиенте создается виртуальный ком порт, все запросы перенаправляются на сервер.
Q>У меня есть некий девайс с которым небольшая программка общается через COM порт. Очень хотелось бы чтобы можно было эту програмку запускать удаленно, причем даже не в локальной сети а через интернет. Понятное дело, можно написать нечто которое бы принимало все с COM порта и посылало в сокет. А на другой стороне берем из сокета и в программку. Q>Но сокеты же не пройдут через firewall’ы (они стоят на обоих концах). Кто нибудь сталкивался с подобным? С чего начать?
Спасибо за ответы. Я тут еще понял, что вроде бы HTTP Tunneling то что надо. На обоих сторонах хоть и стоят firewall'ы но люди по интернету лазят без проблем, значит HTTP открыт. На codeproject.com есть пример, но он у меня не работает, пишет:
Fri Nov 15 13:18:12 2002 Information Connection to log file established
Fri Nov 15 13:19:10 2002 Warning Fatal exception occured on tunnel_request_listener. Local port: 8000
Fri Nov 15 13:19:10 2002 Information Tunnel request listener destroyed: 8000->www.microsoft.com:80
Есть ли еще где про HTTP Tunneling почитать, примеры какие нибудь (C++) и какие проблемы могут с ним быть? Если использовать, надо ли мне HTTP сервер запускать или программы просто через сокеты соединятся? Я смотрю, эти туннели в основном для Javы используется. В приципе, можно конечно и на jave програмку запустить но хотелось бы на C++.
Хотя, нет... кажется, там все таки raw интернет не поддерживался... только локальная сеть.
Но идея все равно одна. Просто другой транспорт.
AS>Есть готовое решение — SpartaCom (ремотный доступ к com порту). AS>На удаленном клиенте создается виртуальный ком порт, все запросы перенаправляются на сервер.
Q>>У меня есть некий девайс с которым небольшая программка общается через COM порт. Очень хотелось бы чтобы можно было эту програмку запускать удаленно, причем даже не в локальной сети а через интернет. Понятное дело, можно написать нечто которое бы принимало все с COM порта и посылало в сокет. А на другой стороне берем из сокета и в программку. Q>>Но сокеты же не пройдут через firewall’ы (они стоят на обоих концах). Кто нибудь сталкивался с подобным? С чего начать?
Здравствуйте, Gorik, Вы писали:
G> В таком разе остается только задействовать третью сторону. Некий сервер без файерволла, или с таким, через который ты сможешь пройти, да еще надо, чтоб у тебя были права запустить на нем TCP-сервер. G> А дальше все просто этот сервер будет шлюзом передачи данных. G> Или можно просто настроить файерволлы...
Вообще то у нас есть и web сервер. Не хотелось бы его использовать, но если других путей нет... А как из него сделать шлюз? В файерволлах ничего нельзя менять по определению.
Здравствуйте, qqqqq, Вы писали:
Q>Но сокеты же не пройдут через firewall’ы (они стоят на обоих концах). Кто нибудь сталкивался с подобным? С чего начать?
ya davno videl programku COM2IP, delala to chto tebe nado. A vot s firewallami nado budet porabotat' otdel'no
Re[3]: COM порт через интернет.
От:
Аноним
Дата:
16.11.02 12:33
Оценка:
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, Gorik, Вы писали:
G>> В таком разе остается только задействовать третью сторону. Некий сервер без файерволла, или с таким, через который ты сможешь пройти, да еще надо, чтоб у тебя были права запустить на нем TCP-сервер. G>> А дальше все просто этот сервер будет шлюзом передачи данных. G>> Или можно просто настроить файерволлы...
А>Вообще то у нас есть и web сервер. Не хотелось бы его использовать, но если других путей нет... А как из него сделать шлюз? В файерволлах ничего нельзя менять по определению.
А какой WWW сервер??
Что за программа, она в виде сервиса, в виде отдельной программули ??
Если сделать отдельный сервис через SOAP для запуска и получения данных ?
не пробовал ??