Прямой поток RTSP для удаленного сокета (RTSP Proxy?)

Мои извинения за общность вопроса. Я пробовал много вещей, но ничего не работает. У меня есть сервер? (назовем его сервером A ), который находится в локальной сети, где есть также IP-веб-камера. Эта веб-камера постоянно предоставляет канал RTSP по адресу … скажем … rtsp://192.168.1.50:554/cam.sdp . Камера не имеет доступа к внешнему миру (она должна оставаться в локальной сети и, следовательно, имеет доступ только к серверу A , нет к серверу B ), но сервер A делает. К сожалению, сервер A не имеет открытого IP-адреса, поэтому я не могу связаться с сервером A из любой точки мира. Сервер A может выйти, если он захочет, но никто не может попасть на сервер A … (это испорченный брат … слишком много игрушек, когда это был ребенок)

Теперь в вышеупомянутом внешнем мире есть еще один сервер ( сервер B , чтобы быть оригинальным), который является обычным веб-сервером с его общедоступным IP-адресом и всеми. Этот сервер позволяет людям проникнуть в него (не испорченный, очень хороший … устанавливает таблицу, делает посуду … такого рода вещи). Оба сервера A и сервер B являются моими компьютерами и работают с Ubuntu 12.04 и некоторыми приложениями Python, которые я разработал ( сервер B на самом деле запускает Django, но я не думаю, что это слишком актуально). Я имею в виду, что я контролирую, что происходит на обоих серверах. Я могу устанавливать / удалять пакеты, я могу открывать порты, закрывать порты … все, что нужно (я даже могу отформатировать их, если захочу, хотя я не думаю, что это помогло бы много … или да … кто знает ?)

  _____________ _____________ ----------- | | | | __ | | | | | | | \| WebCam |================| Server A |===========| INTERNET |===========| Server B | |__/| | ->/cam.sdp <--| |----------------- > --------------> * | | | |___________| |___________| ----------- 

Возникает вопрос: как я могу захватить поток RTSP с сервером? Дамп его в назначенный сокет сервера B и открыть его (с программой, способной понимать каналы RTSP, такие как VLC)?

Я предполагаю, что мне нужно что-то вроде прокси-сервера RTSP, может быть? Но я не знаю, с чего начать.

Любой намек, ссылка … будет оценена по достоинству.

заранее спасибо

One Solution collect form web for “Прямой поток RTSP для удаленного сокета (RTSP Proxy?)”

Я не знаю RTSP, но, похоже, это стандартный протокол TCP-only. Попробуйте запустить на сервере A:

 ssh -g -R 554:192.168.1.50:554 server_B_hostname 

Это откроет открытый порт 554 на сервере B и переадресует его на 192.168.1.50:554 с точки зрения A.

На некоторых серверах sshd настроен на отказ от пересылки ssh -g -R (без уважительной причины). Если вы можете, вы должны проверить / etc / ssh / sshd_config на сервере B и добавить AllowTcpForwarding yes .

Python - лучший язык программирования в мире.