Удаленное подключение. Keenetic Router
Все, что ниже, касается именно кинетик роутера. Если у вас такого нет, все равно рекомендую прочесть для понимания, как это работает
Везде, где у меня стоят камеры, я использую роутеры Keenetic (а где его не было, туда докупил 🙂)
- Keenetic Lite дома
- Keenetic Giga в офисе и в кальянной
- Keenetic Sprinter в кальянной в качестве "усилителя" (mesh сеть) и на даче
Они не самые дешевые, зато "на века"
Роутеры поддерживают WiFi 6, прошивка обновляется РЕГУЛЯРНО, настроек больше, чем в MikroTik, есть плагины, большой запас мощности, бесшовные mesh сети, OpenVPN, WireGuard (WARP от CloudFlare), можно создать даже отдельную скрытую сеть чисто под устройства умного дома (те же камеры) а при желании даже воткнуть флешку и установить НА РОУТЕР торрент клиент Transmission 🏴☠️
Как минимум, в нем есть встроенный NoIP сервис KeenDNS, который позволяет делать публичные ссылки вида qwerty.keenetic.link
, которые даже при динамичном IP адресе будут всегда выдавать реальный IP, что в нашем случае очень удобно.
Вишенкой на торте является то, что каждой камере можно сделать еще поддомен вида camera1.qwerty.keenetic.link
и иметь доступ к ее веб интерфейсу по этому адресу
Вкратце, как работает домашняя сеть
В дом у вас заходит кабель (123.123.123.123), прямо в роутер. Ваш роутер это ваша единственная дверь в интернет (192.168.1.1).
Ваш телефон, ноутбук, комп, камера1 (192.168.1.13), камера2 (192.168.1.14) это все ЗА роутером. За дверью в интернет.
Допустим, ваша камера доступна по rtsp://192.168.1.13:554
. Но если попытаться получить к ней доступ через rtsp://123.123.123.123:554
, то роутер поймает вашу попытку достучаться так до нее и по идее откроется видео? Нет. У вас не одна, а две камеры: rtsp://*.*.*.13:554
и rtsp://*.*.*.14:554
, у обеих порт одинаковый. Роутер не понимает, какую камеру вы хотите видеть и ему нужно это объяснить.
В настройках роутера мы должны указать, что "Если приходит запрос на порт 554, то мы передаем этот запрос на \*.\*.\*.13:554
. А если приходит на порт 555, то показываем уже \*.\*.\*.14:554
". Несмотря на то, что у камер одинаковые RTSP порты, мы все равно можем в настройках роутера прокинуть трафик с одного входящего порта на другой порт на целевом устройстве
Эх, понимал бы я это, когда в друзьями Minecraft через Hamachi играл вместо того, чтобы настроить роутер...
Настраиваем роутер
Открывайте изображения в новой вкладке, если плохо видно
- Закрепляем наши камеры за статичным локальным IP (чтобы не было сегодня 192.168.1.13, а завтра 192.168.1.228). Найдите свою камеру в свписке незарегистрированных устройств, кликните, дайте ей любое имя и не забудьте выставить галочку "Постоянный IP-адрес"
- Создаем keendns домен, чтобы наш роутер даже после смены IP провайдером был доступен по одинаковому адресу. Вы также всегда сможете удаленно настроить роутер по этому адресу. Допустим, у вас это
qwerty.keenetic.link
. Выбираем "Прямой доступ" - Открываем порты 554 и 555. Первый пробрасываем на первую камеру, 555 на вторую. На скрине левый порт это с поля "Открыть порт", правый "Порт назначения"
При желании на вкладке "Доменное имя" можно снизу создать еще поддомены для каждой камеры, чтобы их веб интерфейс открывался по указанным адресам. Больше это ни на что не влияет
Иногда у меня удаленные камеры внезапно перестают быть доступны. В моем случае, наверное, провайдер просто заменяет "норм ип" (белый) на какой-то "не норм ип" (общий), за который не проходит внешний трафик. Исправляется перезагрузкой (или несколькими) роутера.
Но ваш провайдер может давать вообще всем серый IP и камера так никогда и не станет доступна, пока не заказать отдельно "белый ип". Позвоните им, спросите какой у вас ип и цену за "белый"