Unicast to Multicast - linux
Я рассматривал Unicast для многоадресной рассылки через iptables и некоторые другие темы, чтобы попытаться решить эту проблему, но безуспешно.
У меня есть камера, которая представляет канал RTSP. В настоящее время я показываю этот канал в прямом эфире из коробки Linux.
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 dznet-rpi1.intern:42236 cam-proom.internal:rtsp ESTABLISHED
Выше приведен вывод (некоторые из них) из netstat. Я играю в фиде с помощью этой команды
omxplayer --avdict rtsp_transport:tcp --win "640 510 1280 1065"
"rtsp://user:pass@cam-proom.internal:554/cam/realmonitor?channel=1&subtype=1"
--live -n -1
Исходя из поста, на который я ссылался сверху, я подтвердил, что у меня включена пересылка ip и включена переадресация mc на нужные мне интерфейсы. Я также посмотрел на свой интерфейс, чтобы убедиться, что многоадресная передача была включена. Далее я запустил smcroute с помощью этой команды
smcroute -a eth0 192.168.128.143 239.1.5.1 eth0 -d -n -v -D
Я использовал предложенную строку iptables (и заблокировал себя из ssh), затем изменил ее, чтобы перехватить входящий порт, как показано в netstat.
iptables -t nat -A PREROUTING -p tcp -m tcp --dport 42236 -d 192.168.128.30 -j NETMAP --to 239.1.5.1
Для пояснения, 192.168.128.30 - это сервер linux, который в данный момент воспроизводит одноадресный поток и который я хотел бы перенаправить обратно поток как многоадресный. 192.168.128.143 - камера, с которой идет поток. Порт 554 - это место, где я получаю доступ к потоку, и netstat показывает, что порт на стороне сервера - 42236. На всякий случай я попытался использовать порт 554 в моем файле --dport.
Я нашел другой ресурс, который предложил использовать dnat, поэтому я тоже это сделал.
iptables -t nat -A PREROUTING -p tcp -m tcp --dport 42236 -j DNAT --to-destination 239.1.5.1
В любом из этих случаев я получаю 0 хитов по моему правилу nat. Я не вижу вывод от демона SMCRoute и ничего в логах.
У меня есть 3 станции, которые отображают каналы камер на постоянной основе и еще 3, которые отображают каналы по требованию. Любая помощь будет принята с благодарностью, спасибо!