Доброго времени суток! Пытаюсь организовать удаленный доступ к web-интерфейсу видеорегистратора с помощью реверс-прокси nginx`а, при этом возникли трудности с отображением потокового видео, передаваемого по протоколу RTSP. В ответ на запрос потока выдает ошибку "Отображение невозможно". Пакеты, перехваченные Wireshark`ом при корректном воспроизведении видеопотока (без прокси): 10.100.0.5 10.100.0.2 TCP 66 50771 > rtsp [SYN] Seq=0 Win=8192 Len=0 MSS=1460 WS=256 SACK_PERM=1 10.100.0.5 10.100.0.2 TCP 54 50771 > rtsp [ACK] Seq=1 Ack=1 Win=65536 Len=0 10.100.0.5 10.100.0.2 TCP 54 [TCP Window Update] 50771 > rtsp [ACK] Seq=1 Ack=1 Win=524288 Len=0 10.100.0.5 10.100.0.2 RTSP 231 DESCRIBE rtsp://10.100.0.2:554/PSIA/streaming/channels/201 RTSP/1.0 10.100.0.5 10.100.0.2 RTSP 268 SETUP rtsp://10.100.0.2:554/PSIA/streaming/channels/201/trackID=1 RTSP/1.0 10.100.0.5 10.100.0.2 RTSP 253 PLAY rtsp://10.100.0.2:554/PSIA/streaming/channels/201 RTSP/1.0 10.100.0.5 10.100.0.2 TCP 66 50772 > http [SYN] Seq=0 Win=8192 Len=0 MSS=1460 WS=256 SACK_PERM=1 10.100.0.5 10.100.0.2 TCP 54 50772 > http [ACK] Seq=1 Ack=1 Win=65536 Len=0 10.100.0.5 10.100.0.2 HTTP 740 GET /PSIA/System/Video/inputs/channels/2/capabilities HTTP/1.1 10.100.0.5 10.100.0.2 TCP 54 50772 > http [ACK] Seq=687 Ack=867 Win=64768 Len=0 10.100.0.5 10.100.0.2 TCP 54 50772 > http [FIN, ACK] Seq=687 Ack=867 Win=64768 Len=0 10.100.0.5 10.100.0.2 TCP 54 50771 > rtsp [ACK] Seq=591 Ack=893 Win=523264 Len=0 //далее те же пакеты - непосредственно вещание видеопотока 10.100.0.2 - регистратор, 10.100.0.5 - локальный ПК Пакеты, перехваченные Wireshark`ом при работе через прокси: 10.100.0.5 185.44.хх.хх TCP 66 50853 > rtsp [SYN] Seq=0 Win=8192 Len=0 MSS=1460 WS=256 SACK_PERM=1 185.44.хх.хх 10.100.0.5 TCP 60 rtsp > 50853 [RST, ACK] Seq=1 Ack=1 Win=0 Len=0 10.100.0.5 185.44.хх.хх TCP 66 [TCP Retransmission] 50853 > rtsp [SYN] Seq=0 Win=8192 Len=0 MSS=1460 WS=256 SACK_PERM=1 185.44.хх.хх 10.100.0.5 TCP 60 rtsp > 50853 [RST, ACK] Seq=1 Ack=1 Win=0 Len=0 10.100.0.5 185.44.хх.хх TCP 62 [TCP Retransmission] 50853 > rtsp [SYN] Seq=0 Win=8192 Len=0 MSS=1460 SACK_PERM=1 10.100.0.1 10.100.0.5 ICMP 90 Redirect (Redirect for host) 185.44.хх.хх 10.100.0.5 TCP 60 rtsp > 50853 [RST, ACK] Seq=1 Ack=1 Win=0 Len=0 10.100.0.5 - тот же локальный ПК, 10.100.0.1 - шлюз, 185.44.хх.хх - белый ip сервера с nginx. Как я понимаю, nginx просто не пропускает rtsp пакеты. Существует ли схема передачи rtsp-запросов в одну сторону и видеопотока в другую через nginx? З.Ы. Судя по всему, преобразование rtsp в rtmp (nginx-rtmp-module) не подойдет для данной ситуации, т.к. веб-страница выполняет запрос именно по rtsp.
Posted at Nginx Forum: http://forum.nginx.org/read.php?21,249275,249275#msg-249275 _______________________________________________ nginx-ru mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx-ru
