Алексей_Н 0 Posted August 29, 2018 Необходимо пробросить tcp порты камер наружу, чтобы подцепить их сервером извне. Собственно, вопрос - какие tcp порты должны быть проброшены для полной поддержки камер сервером "Линия", без разбора на примере камеры, конкретной модели. Share this post Link to post Share on other sites В
Станислав 0 Posted August 29, 2018 Здравствуйте Алексей! Для подключения IP камеры через интернет необходимо получить для неё реальный статический IP адрес (возможно подключение по доменному имени, если камера или роутер поддерживает работу с сервисом Dynamic DNS) и обеспечить достаточною пропускную способность и стабильность сети между камерой и сервером. Дополнительно может потребоваться проброс HTTP (по умолчанию - 80), RTSP (по умолчанию - 554) и возможно ONVIF (если есть и не совпадает с HTTP , например 8000 , 8080 и т.д. ) портов, порты должны пробрасываться один-к-одному. Если камер на одном внешнем IP адресе несколько - необходимо изменение HTTP и RTSP портов по умолчанию на всех камерах, кроме одной. Share this post Link to post Share on other sites В
unlifer 0 Posted August 29, 2018 (edited) Здравствуйте. Цитата Необходимо пробросить tcp порты камер наружу, чтобы подцепить их сервером извне. 1. Что является шлюзом (роутером), смотрящем в интернет? То есть на каком устройстве пробрасывать порты будете? (Сервер на Windows, Linux, BSD, или готовый роутер от D-Link, HP, Микротик и т.д.) 2. IP-адрес у этого шлюза белый или серый? Цитата Собственно, вопрос - какие tcp порты должны быть проброшены для полной поддержки камер сервером "Линия" Достаточно пробросить порт 554 для RTSP, если Вам требуется только подключение камер к серверу Линия. Допустим, у Вас 4 камеры, адреса 192.168.0.4, 192.168.0.5, 192.168.0.6 и 192.168.0.7. Внешний белый статичный адрес шлюза 1.1.1.1 и находится на интерфейсе eth0. Соответственно, пробрасываете 4 порта, например, 9004, 9005, 9006 и 9007. Для iptables под Linux будут такие правила: первая камера: iptables -t nat -A PREROUTING -i eth0 -d 1.1.1.1 -p tcp -m tcp --dport 9004 -j DNAT --to-destination 192.168.0.4:554 iptables -A FORWARD -d 192.168.0.4 -p tcp --dport 554 -j ACCEPT вторая камера: iptables -t nat -A PREROUTING -i eth0 -d 1.1.1.1 -p tcp -m tcp --dport 9005 -j DNAT --to-destination 192.168.0.5:554 iptables -A FORWARD -d 192.168.0.5 -p tcp --dport 554 -j ACCEPT третья камера: iptables -t nat -A PREROUTING -i eth0 -d 1.1.1.1 -p tcp -m tcp --dport 9006 -j DNAT --to-destination 192.168.0.6:554 iptables -A FORWARD -d 192.168.0.6 -p tcp --dport 554 -j ACCEPT четвёртая камера: iptables -t nat -A PREROUTING -i eth0 -d 1.1.1.1 -p tcp -m tcp --dport 9007 -j DNAT --to-destination 192.168.0.7:554 iptables -A FORWARD -d 192.168.0.7 -p tcp --dport 554 -j ACCEPT и т.д. все камеры. Если сервер Линия у Вас находится тоже за шлюзом и он тоже имеет статичный белый адрес, например, 2.2.2.2, то для дополнительной безопасности правило с цепочкой FORWARD можно дополнить так: iptables -A FORWARD -s 2.2.2.2 -d 192.168.0.7 -p tcp --dport 554 -j ACCEPT С готовыми роутерами и брэндмауэром Windows порты пробрасываются почти аналогично. Разница только в том, что там используется GUI. Соответственно, на самом сервере Линия прописываете камеры аналогично тому, как они бы прописывались, находясь в рамках одной сети, но указываете внешний адрес и открытый порт. Например, для камеры BD4640DS будет выглядеть так: первый поток: rtsp://user:password@1.1.1.1:9004/h264 второй поток: rtsp://user:password@1.1.1.1:9004/h264_2 (либо перекодирование первого потока). Аналогично делается настройка для протоколов Onvif и HTTP. Пример для Onvif: первая камера: iptables -t nat -A PREROUTING -i eth0 -d 1.1.1.1 -p tcp -m tcp --dport 10004 -j DNAT --to-destination 192.168.0.4:80 iptables -A FORWARD -d 192.168.0.4 -p tcp --dport 80 -j ACCEPT вторая камера: iptables -t nat -A PREROUTING -i eth0 -d 1.1.1.1 -p tcp -m tcp --dport 10005 -j DNAT --to-destination 192.168.0.5:80 iptables -A FORWARD -d 192.168.0.5 -p tcp --dport 80 -j ACCEPT третья камера: iptables -t nat -A PREROUTING -i eth0 -d 1.1.1.1 -p tcp -m tcp --dport 10006 -j DNAT --to-destination 192.168.0.6:80 iptables -A FORWARD -d 192.168.0.6 -p tcp --dport 80 -j ACCEPT четвёртая камера: iptables -t nat -A PREROUTING -i eth0 -d 1.1.1.1 -p tcp -m tcp --dport 10007 -j DNAT --to-destination 192.168.0.7:80 iptables -A FORWARD -d 192.168.0.7 -p tcp --dport 80 -j ACCEPT и т.д. все камеры. Какой конкретно порт используется для Onvif - это уже смотреть в настройках камеры, в её паспорте или в спецификации к ней. Святослав Вам уже об этом написал: Цитата Дополнительно может потребоваться проброс HTTP (по умолчанию - 80), RTSP (по умолчанию - 554) и возможно ONVIF (если есть и не совпадает с HTTP , например 8000 , 8080 и т.д. ) портов С HTTP аналогично. Если возникает необходимость не только подключения к серверу Линия, но и администрирования камер через web-интерфейс, то, собственно, для каждого порта каждой камеры делаете всё те же два правила PREROUTING и FORWARD. Единственное исключение в плане настройки составляет так называемый порт данных. Например, в камере B55-3 он есть, и без его проброса при входе на камеру через web-интерфейс - картинку с камеры не получится увидеть и не получится использовать функции PTZ. А вот этот порт надо действительно пробрасывать один-к-одному, предварительно поменяв его в настройках камеры, так как он, так сказать, самоинициализируется с номером, прописанным в настройках. Например, есть в наличии две камеры B55-3. В первой ставим порт данных 5011, во второй 5012. Ну, и проброс: первая камера: iptables -t nat -A PREROUTING -i eth0 -d 1.1.1.1 -p tcp -m tcp --dport 5011 -j DNAT --to-destination 192.168.0.11 iptables -A FORWARD -d 192.168.0.11 -p tcp --dport 5011 -j ACCEPT вторая камера: iptables -t nat -A PREROUTING -i eth0 -d 1.1.1.1 -p tcp -m tcp --dport 5012 -j DNAT --to-destination 192.168.0.12 iptables -A FORWARD -d 192.168.0.12 -p tcp --dport 5012 -j ACCEPT Внимание!!! Обратите особое внимание на то, что правила отличаются от описанных мной ранее: 1. В цепочке PREROUTING в качестве порта назначения указывается тот, что мы прописали в настройках камеры. 2. В конце правила порт, на который идёт переадресация, не указан, так как порт перенаправляется один-к-одному, то есть из интернета пришёл запрос на этот порт, и далее он (запрос) будет транслироваться на камеру на тот же порт. 3. Собственно, в цепочке FORWARD аналогичная ситуация с указанием порта. Вроде, пока всё Edited August 29, 2018 by unlifer Share this post Link to post Share on other sites В