У меня есть эта проблема. Существует udp видеопоток, доступный только в локальной сети, но я должен получить доступ к нему за пределами сети. У меня есть машина Linux (несколько на самом деле) с корневым доступом.
Существует маленькая утилита, которая делает поток доступным на локальной машине на порте 1234.
./ping -h streamserver -p 1234
Если я выполняю его, я могу получить доступ к потоку с помощью vlc или mplayer.
mplayer udp://@:1234
vlc udp://@:1234
Теперь, я пытаюсь создать порт foward из моей удаленной машины и получить доступ к порту, но это перестало работать.
ssh me@machine -L 1234:127.0.0.1:1234
Какие-либо подсказки, что я делаю неправильно?
Проблема здесь состоит в том, что SSH только способен к соединениям TCP перенаправления портов. Протоколом, которым Вы интересуетесь, является UDP.
Эта статья: http://zarb.org/~gc/html/udp-in-ssh-tunneling.html показывает один метод (использующий DNS в качестве примера) вокруг проблемы путем инкапсуляции UDP в TCP сначала.