По поводу аутентификации на ИП-камере

Anthi

New Member
Что-то ничего не получается.
Выведенная через НАТ камера RTSP в мир отдает, ее видно в миру VLC плеером

на 0.113 стоит в настройках flashphoner ip=<ext ip1>, ip_local=192.168.0.113
0.113 проначен в <ext ip1>
на 0.254 в конфиге flashphoner.xml оба ip сконфигурированы 0.113
открыть поток пытаюсь http://<ext ip>/wcs-client/examples/streaming/Streaming.html?id=rtsp://<ext ip1>
наблюдаю попытки 5.10 отправить rtsp на 0.113, который отвечает RESET-ами . Картинки и звука нет.
пытаюсь открыть http://<ext ip>/wcs-client/examples/streaming/Streaming.html?id=rtsp://192.168.5.10
наблюдаю такой поток rtsp между 5.10 и 0.113. Картинки и звука нет
Не совсем понятен еще вот какой вопрос: браузер ведь должен получить поток от 0.113, прошедший через НАТ на 0.239, я правильно понимаю?
Но на нём я что-то ничего похожего на поток не вижу (
 

Max

Administrator
Staff member
По pcap-логу действительно видно, что RTP поток доходит до WCS-сервера, а дальше не видно чтобы сервер что-то отдавал.
Только сейчас понял что не вижу ICE-трафика в вашем pcap-файле. Без него соединение не установится.
ICE работает по тем же портам [31000-32000], т.е. UDP пакеты из браузера должны доходить до этого диапазона портов WCS-сервера и обратно:
browser - NATs - 192.168.0.113 [31000-32000].
Кстати в мануале администратора перечислен весь трафик, который участвует в схеме и есть примеры его анализа.
 

Anthi

New Member
Ковырял вчера допоздна трафик - не увидел даже попытки от моего браузера инициировать соединение ICE
Плюнул на всю эту структуру, вынес наружу WCS4, вообще далеко за пределы локалки, чтобы наверняка.
деактивировал лицензию на старом, активировал на новом
ловлю в браузере "The publishing is stopped. Would you like to start stream again?"
а в логах WCS
Code:
12:12:33,174 ERROR  Codecs - New I/O  worker #65 Fatal error, Can not load codecs
com.flashphoner.my_flashphoner.licenser_agent.A.A.D: HardwareId is not valid: License hardwareId: E688E18CE1D29CED15D3F80514CCB11BF3ACBC74B426EE8E511B5F966977CEC146985505DB187688DFF7A98385407DAEEA7063BE1C0711E9A904976E9010678F local: 7E39D46479A446278AC362A6EF533F15EDE9317F29FEB7E1F29E3B7B7E0696303EFE5BFFDEE26AC441AB1C5B5F9DCBA5E8547707CCCF50BD967CA55A366C4437
 

Max

Administrator
Staff member
Проверьте чтобы у сервера был корректный Mac-адрес и переактивируйте лицензию, тогда должно заработать.
ICE - трафик это обмен STUN-пакетами между браузером и сервером. Браузер отправляет STUN UDP-пакеты - сервер на них отвечает. Так устанавливается соединение WebRTC.
 

Anthi

New Member
Эмм.... Что значит "корректный MAC"? Тот что вендор вшил в плату тот и стоит, какой смысл менять MAC, живущий в крупном ДЦ Германии? Переактивировал - та же ошибка. Сервер - хост для кучи виртуалок XEN. Но сетевка там одна, та, которая смотрит в мир. Уже и не знаю, что и думать...
Про ICE я уже прочитал в мануале. Сейчас хочу увидеть, как выглядит старт трансляции в tcpdump, чтобы было с чем сравнивать (доступного клиента WIN с WireShark у меня нет). Поэтому решил попробовать вынести WCS4 наружу, т.к. RTSP поток гарантированно доступен извне (проверял VLC) и послушать старт трансляции.
 

Max

Administrator
Staff member
Сочувствую вашим мучениям.
Такие проблемы появляются в основном на виртуалках, где не задан MAC адрес или если одни нули вместо MAC-адреса.
Чтобы не мучиться, пришлите нам RTSP урл вашей камеры чтобы был доступен по VLC (направьте ее куда-нибудь в угол). Мы проверим с внешнего сервера, например VPS-digital ocean и отпишем есть ли картинка. Если картинка есть - будем дальше разбираться с сетью и активацией.
 

Anthi

New Member
Отправил УРЛ. Менять направление камеры трудно, я примерно в 11 километрах от неё )))
Я, наверное, вас уже всех задолбал... ((

ЗЫ: картинка будет тёмная, у нас темнеет, а в помещении том свет выключен.
 

Max

Administrator
Staff member
URL получен. Через наш сервер тоже показывает черный экран, через VLC отображается.
Похоже наш баг. Разработчики смогут посмотреть завтра с утра. Есть возможность камеру не отключать, чтобы была доступна через VLC?

>Я, наверное, вас уже всех задолбал... ((
Совсем нет. Напротив, кому-то ваши посты возможно будут полезны.
 

Anthi

New Member
Не то, чтобы есть возможность камеру не выключать, скорее нет возможности ее выключить :D
Она там уже больше недели телепается :)
 

Max

Administrator
Staff member
Ок, тогда если завтра будет доступна по VLC, попробуем разобраться почему в браузере картинки с нее нет. Просто NAT-ы не закрывайте чтобы мы могли до нее достучаться.
 

Max

Administrator
Staff member
Кое что нашли. Ваша камера работает немного не так как надо с точки зрения SDP Offer/Answer.
Оказалось что таких камер в интернете много, поэтому обходим сейчас эту проблему
 

Anthi

New Member
Ну у нас закупают такие камеры "от балды", никакой централизации нет :(
 

Max

Administrator
Staff member
Вроде удалось победить вашу камеру.
Попробуйте билд 1055. Он еще не проходил тестирование. Так что могут быть неожиданности.
Ваша камера работает в RTSP interleave mode. Т.е. забрать по UDP с нее трафик не получается, скорее всего потому что где-то что-то закрыто и поэтому идет автоматическое переключение на тунель внутри RTSP соединения. Таким образом видео должно появиться секунд через 30-40. Попробуйте. Скорее всего это время можно подсократить специальными настройками rtsp***, которые перечислены в Admin Manual для конфига flashphoner.properties.
 

Anthi

New Member
Попробовал, но уже не 1055 а 1062. На сервере в миру - всё та же проблема с загрузкой кодеков/лицензией
Code:
13:52:49,323 ERROR  Codecs - New I/O  worker #65 Fatal error, Can not load codecs   com.flashphoner.my_flashphoner.licenser_agent.A.A.D: HardwareId is not valid: License hardwareId: E688E18CE1D29CED15D3F80514CCB11BF3ACBC74B426EE8E511B5F966977CEC146985505DB187688DFF7A98385407DAEEA7063BE1C0711E9A904976E9010678F local: 7E39D46479A446278AC362A6EF533F15EDE9317F29FEB7E1F29E3B7B7E0696303EFE5BFFDEE26AC441AB1C5B5F9DCBA5E8547707CCCF50BD967CA55A366C4437
На сервере внутри локалки (выпущенной через NAT) черный квадрат.
 

Max

Administrator
Staff member
Попробуйте установить на какой-нибудь "чистый" сервер.
Имеется ввиду
1) Не Dom0 с кучей виртуалок.
2) Не виртуалка без MAC-адреса.
3) Со статическим публичным IP.
Т.е. установить на обычной чистой системе, неважно на виртуалке(с MAC) или на чистом выделенном сервере.
Тогда должно все работать нормально.
Пример чистого сервера за $5/месяц - digitalocean.com
 

Anthi

New Member
В силу специфики организации - если это заработает на сервере, купленном за мои деньги то там оно и останется.
Я через это всё уже проходил.
Вопрос такой: если эту всю связку "погрузить" в локалку целиком, она заработает? В сегменте 192.168.0.0/16? Ну, естественно, для активации лицензии проNATить WCS4.
 

Max

Administrator
Staff member
В локалке-то оно заработает для локальных же пользователей (зрителей WebRTC-потока).
А вот смогут ли внешние зрители, подключиться к серверу в локалке, сказать не могу. Не тестировали такой deploy.
 
Top