Кто-нибудь настроил VLAN и Chromecast так, чтобы работало?, RouterOS
homerouter
Guest
0
12.07.2022 06:10:00
Chromecast и VLAN (да, снова об этом) Мобильный телефон в VLAN_x, а Chromecast в VLAN_y. Проблема в том, что с телефона не получается стримить... Sonos работает отлично, и мой Chromecast подключён так же, как Sonos. -> Кто-нибудь настроил VLAN и Chromecast на роутере MT?
rextended
Guest
0
21.02.2023 16:08:00
Если вы доверяете операционной системе вашего телефона, почему не доверяете ОС в Chromecast или Sonos? Телефон подвержен рискам безопасности гораздо сильнее, чем эти два устройства. Поручать такие важные вещи периферийному устройству, которое легко взломать (да ещё и потерять, украсть, сломать и так далее), просто не имеет смысла. Любые устройства могут быть взломаны производителем или из-за известных уязвимостей…
millenium7
Guest
0
14.09.2023 22:43:00
Кто-нибудь может обновить информацию по этому вопросу? Наконец-то стало возможно нативно стримить на Chromecast через разные сети/VLAN в RouterOS без необходимости ставить docker-контейнеры? Главное ограничение — это работает только на архитектуре ARM/CHR, а не на устройствах типа HEX (mmips). Я так редко имею дело с multicast, что уже забыл основы маршрутизации multicast. Игрался с IGMP proxy, но безрезультатно. Может, что-то упускаю или это просто не работает, как должно? (перенаправлять весь multicast-трафик на апстрим-интерфейс) Можно ли это сделать через PIM? А mDNS недавно внедрили?
UpRunTech
Guest
0
13.02.2024 21:06:00
Кажется, я наконец-то решил проблему с MACVLAN. Почитайте эту тему, особенно этот пост.
Chromecast использует DIAL (а также mDNS), так что PIM-SM, похоже, действительно работает для объявления их присутствия в других сегментах и сетях. Airplay не использует DIAL — Apple просто обожает Bonjour/mDNS для всего подряд.
mag1024
Guest
0
19.10.2022 02:56:00
С недавними усовершенствованиями в контейнерах Mikrotik теперь можно (с некоторыми усилиями) запускать репитер прямо на самом роутере. Посмотрите TheMickeyMike/docker-mdns-repeater-mikrotik или мой форк, ожидающий слияния, с обновлениями и даже с готовым контейнером на mag1024/mikrotik-docker-mdns-repeater. Редактирование: теперь доступны мультиархитектурные готовые образы на Dockerhub для более простой установки.
walden
Guest
0
06.12.2022 02:37:00
У меня пока нет MikroTik, просто пытаюсь разобраться, пока жду предзаказ. Поэтому в примере я использую Edgerouter, но, в принципе, должно быть одинаково для любого роутера. У меня устройства Chromecast находятся в отдельной VLAN, отдельно от телефонов и компьютеров. Эта VLAN не видит телефоны и компьютеры, а вот телефоны и компьютеры видят Chromecast. VLAN с Chromecast имеет доступ к WAN. У Edgerouter есть собственный mDNS ретранслятор, который легко включить, но я его отключил для эксперимента, чтобы проверить, как моя текущая схема будет работать с MikroTik. У меня всегда включён сервер Proxmox, поэтому я решил использовать его как mDNS ретранслятор: apt install avahi-utils service avahi-daemon status
На телефоне Android я открыл приложение для трансляции и не увидел своих устройств. Обычно, когда так происходит, помогает обновить всё через Google Home — и в этот раз тоже заработало, все устройства появились, и я смог передавать контент между VLAN. С Avahi не понадобилось никакой дополнительной настройки — просто работает.
P.S. Теперь у меня есть MikroTik, и та же конфигурация не работает. Устройства видны в списке «cast», но соединение всегда срывается, и в итоге я никуда не могу ничего транслировать. Пробовал кучу правил в фаерволе, чтобы разрешить соединения между разными устройствами, но, видимо, что-то упускаю.
slackspace
Guest
0
07.01.2023 11:53:00
Привет! На прошлой неделе я получил свой первый Mikrotik и готовлю его для дома, куда мы получим доступ на следующей неделе. Вчера вечером я установил Proxmox на старом мини-ПК, который у меня валялся, специально чтобы решить эту задачу. Так что новичок и в Mikrotik, и в Proxmox.
Тем не менее, у меня в основном всё работает. Avahi у меня запущен в LXC-контейнере (на базе Alpine) поверх Proxmox. Как бы я сам диагностировал проблему (если предположить, что у вас нет фильтров и блокировок):
- Запустите демон avahi вручную, что он показывает в выводе? - Во время запуска вы должны увидеть соответствующие VLAN’ы/подсети. - Если нет, возможно, что-то не так с Proxmox или Mikrotik, или с тем и другим. Если не уверены — покажите вывод. - Если вы используете DHCP, есть ли у avahi аренда IP на каждом VLAN? (/ip/dhcp-server/lease/print) - Какой вывод команды ‘ip addr’, видите ли вы IP для каждого VLAN, который ожидаете? С DHCP или статический? - Можете ли вы достучаться до нужных IP в каждом VLAN? - Добавьте логирование в любые правила ‘drop’ на вашем фаерволе и проверьте. - Получаете ли вы сбросы пакетов при связи VLAN без IoT с ним или наоборот?
Немного деталей моей конфигурации: WAN -> CCR2004 → Ether7 (проводной) → MiniPC (Proxmox) → LXC Alpine + Avahi.
На CCR Ether7 находится в бридже вместе со всеми не-WAN портами. Включая два порта для беспроводных точек доступа, где живут устройства Google Cast. На WiFi доступны VLAN’ы General, Guest и IoT. VLAN Services только по проводной сети. VLAN’ы настроены в бридже CCR. Ether7 считается tagged для соответствующих VLAN’ов.
В Proxmox я создал vmbr.XX для нужных VLAN’ов, при этом шлюз задан только для VLAN Services. На vmbr нет ни IP, ни шлюза. Эти интерфейсы в Proxmox настроены как ‘VLAN Aware’.
В сетевые настройки контейнера добавил дополнительные интерфейсы с VLAN ID для тех VLAN’ов, где должны видеть устройства. В Avahi включил только отражатель (reflector), остальное заводское. В контейнере интерфейсы и IP есть для всех нужных VLAN’ов. Мне нужен mDNS.
Что работает и что нет: Все устройства (Chromecast, Google Audio Cast, Google Homes и т.п.) видны. Но я не вижу никаких ‘комнат’, которые настроил (Кухня, Гостиная и т.д.). Сейчас я разбираюсь с этим, что и привело меня в эту тему. Увидел ваш последний пост и решил попробовать помочь добиться хотя бы первого результата.
Проблемы, с которыми столкнулся: Proxmox — это однокодовый сервер с одним Ethernet-портом. Мне нужно было, чтобы этот порт был tagged под трафик VLAN’ов. По умолчанию Proxmox настроен так, что IP назначается на сам мост без VLAN. Если добавить порт, к которому подключён Proxmox, как tagged для VLAN’ов, контейнер сможет получить IP по DHCP, но при этом потеряется доступ к админке/узлу Proxmox. Если оставить порт untagged в конкретном VLAN, контейнер доступа не получит, но самому узлу Proxmox можно будет попасть.
Решение — создать нужные VLAN’ы на самом узле, а затем добавить порт в нужные VLAN’ы, к которым нужен доступ. И для Proxmox самого, и для контейнера/виртуальной машины. Это логично с сетевой и mikrotik-позиции — просто хочу отметить основную «заминку», которая была у меня с plug’n’play.
Если не уверен в Proxmox, это видео хорошо объясняет:
В Mikrotik вы добавляете нужные порты в VLAN’ы в разделе /interface/bridge/vlans. Добавление/удаление ether7 — вот что запускало у меня эффект «курицы и яйца» с дефолтной установкой Proxmox, где IP назначался на сам мост vmbr.
VLAN 40 — ‘guest’. Ether10/12 — AP’ы. Ether7 — Proxmox. VLAN 199 — ‘iot’ (где находятся устройства). Ether4 — напрямую подключён к моему десктопу (access порт), соответственно проводной и untagged. Ether6 — ТВ-приставка (Chromecast встроенный), тоже проводная и untagged.
slackspace
Guest
0
09.01.2023 09:26:00
Просто добавлю к этому (возможно, для будущих гуглеров). Мне не удалось с помощью Avahi заставить как отдельные устройства Google Cast, так и группы устройств Google Cast отображаться на разных VLAN. Avahi с включённым отражателем стабильно показывал отдельные устройства через VLAN, но группы Chromecast так и не появлялись. Я делал захваты трафика в Wireshark на проводном устройстве, когда оно было в том же VLAN, в другом и так далее. Я не эксперт ни в mDNS, ни в Wireshark. Также использовал некоторые mDNS-инструменты на Android, чтобы просканировать и увидеть группы. Честно говоря, так и не понял, в чём была разница или в чём была проблема. Пробовал добавить дополнительные правила файрвола, даже разрешал «всё» в обе стороны. Добавлял логирование правил, чтобы понять, нужен ли какой-то трафик TCP/UDP. Но результаты были непоследовательными. Иногда группы вижу на проводном десктопе, но не на телефоне, или наоборот. Иногда, когда вроде бы всё работало, я отменял правило файрвола или другие изменения — и оно переставало работать. И обратно включить обратно уже не удавалось. Довольно раздражает. После мучений с avahi, файрволами, tcpdump и прочим я переключился на , который использует более старую версию mDNS Repeater. Большинство делают это прямо на роутере, но я лично не очень доверяю запускать контейнеры на роутере/файрволе и немного в замешательстве, почему все так делают. Так как у меня Proxmox, я настроил LXC-контейнер с mDNS repeater по аналогии с Dockerfile из репозитория. В итоге получил LXC, который при загрузке запускает mDNS repeater с передачей нескольких VLAN в аргументах. Сразу же показались и группы, и устройства на всех VLAN — и проводных, и беспроводных! Остановил контейнер — и всё исчезло. Запустил — снова появилось. Работает стабильно и надёжно. Я не до конца понимаю разницу между mDNS рефлектором и репитером — в интернете люди путают эти термины. Не знаю, в чём именно отличие бинарника из этого проекта и avahi как рефлектора или что-то ещё. Честно говоря, после того как всё заработало, интерес разбираться «почему» у меня пропал.
UpRunTech
Guest
0
21.02.2023 00:04:00
Посмотрите мой пост о том, как передавать mDNS-кадры через VLAN и EoIP.
anav
Guest
0
21.02.2023 16:02:00
С ходу это выглядит вполне разумно и, возможно, проще, но не стесняйтесь опровергнуть!! Решение 1: VLAN20 — стриминговые устройства VLAN30 — защищённые устройства WLAN1 — защищённый Wi-Fi, VLAN30, SSID = secure WLAN2 — стриминговые устройства, VLAN20, SSID = at_your_own_risk
++++++++++++++++++++++++++++++++++
Пользователь на iPhone/iPad/ноутбуке хочет получить доступ к стримингу — выбирает соответствующий Wi-Fi SSID. Пользователь на проводном подключении меняет Ethernet-кабель устройства на альтернативный порт на управляемом коммутаторе рабочего стола.
Решение 2: Добавить все стриминговые устройства, постоянно подключённые к сети Zerotier (большая среда уровня 2 с поддержкой multicast). Пользователь хочет посмотреть стриминговое устройство — активирует ZeroTier-подключение конкретного устройства и подключается к сети уровня 2. Готово!!