Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Новинка
Распродажа
Новости
Доставка
Оплата
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Настройка
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    Форум
    RouterOS
    Мультикаст между коммутаторами не работает (CRS3xx)

    Мультикаст между коммутаторами не работает (CRS3xx)

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Мультикаст между коммутаторами не работает (CRS3xx), RouterOS
     
    subway
    Guest
    #1
    0
    31.01.2024 11:38:00
    Привет! Я пытаюсь реализовать этот пример: https://help.mikrotik.com/docs/pages/viewpage.action?pageId=59277403#BridgeIGMP/MLDsnooping-IGMPsnoopingconfigurationwithVLANs. Единственное отличие — это ID multicast VLAN (201 вместо 10), и то, что у меня нет компьютеров (то есть нет VLAN 20), только один multicast VID (201) и management VID (99). Всё настроено точно так же, как в примере, но мультикаст не работает на втором свитче. На первом свитче всё работает как положено, плюс уникаст работает на обоих свитчах. Похоже, проблема где-то между двумя свитчами (CRS326 и CRS328), оба на ROS 7.13. Я несколько раз перепроверял настройку по примеру, но никак не могу найти проблему… Буду благодарен за любую помощь.
     
     
     
    subway
    Guest
    #2
    0
    16.02.2024 16:31:00
    Привет, Tangent!

    Прежде всего, спасибо, что уделил время. Я прикрепил изображение с архитектурой (игнорируй, пожалуйста, правый верхний угол). Это IGMPv2, и вообще не IPTV, а цифрованные радиоданные (IQ). Мультикаст-сервер отправляет два разных типа мультикаст- и юникаст-трафика без тегов, которые нужно доставить IGMP-клиентам так, чтобы один из потоков был без тегов (PVID=vlan46), а другой — с тегом (vlan48). VLAN'ы не должны никак между собой взаимодействовать (ни по мультикасту, ни по юникасту), и с точки зрения коммутаторов это всё на уровне L2. Каждый IGMP-клиент будет присоединяться к нескольким группам на двух VLAN'ах (PVID и tagged). И таких IGMP-клиентов может быть много на обоих коммутаторах, при этом топология VLAN точно такая же. На коммутаторах вообще не настроен ни один IP, кроме management VLAN (99).

    Что интересно: при работе с одним коммутатором всё работает как положено, даже если “unknown multicast flood = no”. Явно проблема в линке между коммутаторами. Ручная настройка групп IGMP не подходит, так как из-за трафика и мобильности IGMP-клиенты будут сами присоединяться и отключаться от групп, заранее нельзя предсказать, какие группы будут использоваться через коммутаторы, а какие нет.

    Кроме того, на той странице есть предупреждение о том, что базовый IGMP querier в ROS 7 не умеет корректно работать с VLAN-тегами. Думаю, это по крайней мере частично и есть причина проблемы.

    Я пытался настроить PIM между двумя коммутаторами, но пример на ROS7 совсем не даёт подробностей, как это сделать правильно. Сделал так, чтобы работало, но примерно каждый час подключённые группы сбрасывались на пару секунд. Неясно, нужно ли добавлять PIM-интерфейс для каждого VLAN, и должны ли они между собой общаться по юникасту (для этого нужны IP-интерфейсы). Также непонятно, при настройке PIM нужно ли отключать мультикаст-querier на первом коммутаторе, или выключать snooping на каком-либо из коммутаторов?

    Надеюсь, этих деталей достаточно. Ещё раз спасибо за помощь.
     
     
     
    tangent
    Guest
    #3
    0
    17.02.2024 06:20:00
    Отчасти верно, но технически — нет. Это одна из тех ситуаций, где модель OSI дает сбой. Мультимедийные адреса вроде 239.255.1.2 явно относятся к уровню L3, но часть того, что делает IGMP snooping — запоминает, что он видел на этом уровне, и поддерживает MDB, который основан на (L2) Ethernet-мультикаст-адресах, а не на IP-мультикастах. При этом между ними нет прямого соответствия 1:1. Я понимаю, о чём ты говоришь, но слушай и меня: не зацикливайся на L2 против L3 и не будь излишне категоричен в этом вопросе. Реальный мир намного сложнее, чем хотелось бы тем, кто проектировал X.25, живя в своих башнях из слоновой кости. Интересно: при работе всего с одним коммутатором всё работает как надо, даже с "unknown multicast flood = no" — проблема явно в связке между коммутаторами. Возможно, ты наткнулся на баг в реализации мультикаста. Мне недавно ответили по заявке в техподдержку MT, касающейся мультикаст-документации, что они не хотят этим заниматься, пока мультикаст “не исправят и не доведут до ума в версии 7”. Значит, по сути, сейчас это сломано и не готово? Было бы грустно, если так и есть. Если сможешь свести тест-кейс к чему-то, что инженер поддержки сможет проверить за пару минут, лучше сразу оформить баг-репорт — так решение могут найти быстрее, чем пытаться обойти проблему с помощью форумчан вроде меня, которые не являются поддержкой MT.

    PIM... в общем, сработал, но каждую часовую группу на несколько секунд отбрасывало. Это обнадеживает. Значит, ты на правильном пути, осталось только найти и устранить причину этого временного срыва. И я подозреваю, что ты примерно знаешь, в чём проблема… нужно ли отключить multicast querier на первом коммутаторе? Симптомы очень похожи на неправильную настройку querier. Его задача — гасить нежелательные мультикаст-потоки. Единственное сомнение — заявленный тобой интервал в “каждый час” гораздо длиннее типичных таймаутов querier. Обычно они считаются в пределах 1-15 минут, хотя, признаю, повторные запросы могут увеличить этот интервал примерно в 3 раза. 45 минут — это ещё можно допустить, но целый час? Только если таймауты специально увеличили до 20-30 минут. Один из вариантов — увеличить таймауты еще больше. Если система должна работать только один день, пара секунд сбоев глубокой ночью, возможно, не критична. Либо можно полностью отключить querier. Тогда, правда, со временем потоки будут «течь» на порты, которые давно к ним не проявляли интереса, но периодическая перезагрузка коммутаторов это исправит. Если unknown multicast flood отключён, порты поначалу тихие, но со временем уровень шума будет нарастать, пока не придёт пора сделать перезагрузку.

    Нужно ли отключать snooping на каком-то из коммутаторов? Нет. Вернёмся к твоему неправильному восприятию: snooping — это L2, а PIM — L3. В целом, на одну сеть должен быть один-единственный querier. Думаю, по одной штуке с каждой стороны границы PIM, но признаюсь — я больше пользователь мультикаста, чем инженер. Знаю, как это должно работать при правильной настройке, но никогда не управлял большой мультикастовой сетью, RouterOS или нет.
     
     
     
    subway
    Guest
    #4
    0
    17.02.2024 15:42:00
    Происходит интересное явление (без PIM): как и раньше, на всех портах установлено «unknown multicast flood = no», чтобы убедиться, что мультикаст действительно работает и у нас нет широковещательной рассылки. На втором свитче (где проблема) время от времени IGMP-клиенты могут присоединяться к мультикаст-группам как в PVID, так и в тегированном VLAN, в MDB правильные записи, но спустя некоторое время их сбрасывает. Я проверил — оба свитча имеют стандартные параметры IGMP snooping, разницы нет.

    Я приложил страницу состояния моста, не мог бы ты проверить, правильно ли настроен multicast querier? (конфигурация основана на официальном примере MikroTik, кстати). Этот адрес 0.0.0.0 немного настораживает. Нужны ли в querier какие-то IP-адреса на двух мостах, чтобы они могли общаться друг с другом по unicast? В примере только MGMT VLAN имеет IP, больше ничего...

    Теоретически, эта настройка не требует PIM, так как я не хочу маршрутизировать мультикаст-трафик вообще, даже два VLAN не должны между собой общаться, но неясное утверждение из примера IGMP MLD («Bridge IGMP querier implementation can only send untagged IGMP queries»)...
     
     
     
    tangent
    Guest
    #5
    0
    17.02.2024 15:54:00
    И IGMP, и PIM-SM — это протоколы на основе IP, так что да, я считаю, что отсутствие IP на втором коммутаторе — это проблема.
     
     
     
    subway
    Guest
    #6
    0
    17.02.2024 16:13:00
    Даже если я назначаю IP-адреса на двух свитчах (они успешно пингуют друг друга), второй свитч всё равно показывает «0.0.0.0» в качестве multicast querier. МОД: Хорошо, я настроил PIM так: на обоих свитчах есть мост 1-1, оба имеют PVID46, назначены unicast IP: 10.10.10.1 и 10.10.10.2. В PIM-инстансах мост указан как IF-шаблон, приоритет PIM выставлен так, что Switch1 стал designated router (DR). Мультикаст-квериер показывает правильный IF и IP switch2. У второго свитча в PIM UIB-G и UIB SG отображаются верные две IGMP-группы для PVID46. Поскольку я не добавлял VLAN48 (tagged) трафик в PIM-интерфейсный шаблон, он не отслеживается PIM, но при этом работает нормально и присутствует в MDB как «динамически изученный». Значит, получается, ROS умеет корректно форвардить и учиться по VLAN-тегированному трафику, но не по нетегированному (PVID)… Баг отображения в Winbox: PIM-SM → Neighbor → Значение таймаута постоянно уменьшается до 0, потом начинает расти вперёд. Закрыть и заново открыть соседа не помогает, нужно переключиться на другую вкладку, потом вернуться, и тогда значение отображается правильно. Этот таймаут должен сбрасываться каждый раз при получении hello от соседа.
     
     
     
    subway
    Guest
    #7
    0
    17.02.2024 19:17:00
    Ну, каждые 1-2 часа трафик IGMP всё равно теряется, теперь у меня есть расширенный лог:

    21:10:16 route,pim,packet instance { 0 IP } interface { bridge } GMP: Отправка общего запроса  
    21:10:16 route,pim,packet instance { 0 IP } interface { bridge } GMP: Получен запрос от 10.10.10.2  
    21:10:16 route,pim,packet instance { 0 IP } interface { bridge } GMP: Получен запрос от 10.10.10.1  
    21:10:16 route,pim,packet instance { 0 IP } interface { bridge } GMP: Получен отчёт о членстве v3 от 10.10.10.2  
    21:10:16 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 224.0.0.22 с источниками { }  
    21:10:16 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 224.0.0.13 с источниками { }  
    21:10:16 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 224.0.0.106 с источниками { }  
    21:10:16 route,pim,packet instance { 0 IP } interface { bridge } neighbor { 10.10.10.1 } получен hello  
    21:10:17 route,pim,packet instance { 0 IP } interface { bridge } GMP: Получен отчёт о членстве v3 от 10.10.10.1  
    21:10:17 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 224.0.0.22 с источниками { }  
    21:10:17 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 224.0.0.13 с источниками { }  
    21:10:17 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 224.0.0.106 с источниками { }  
    21:10:17 route,pim,packet instance { 0 IP } interface { bridge } GMP: Получен отчёт о членстве v3 от 10.223.1.24  
    21:10:17 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 239.0.1.0 с источниками { }  
    21:10:19 route,pim,packet instance { 0 IP } interface { bridge } GMP: Получен отчёт о членстве v3 от 10.223.1.21  
    21:10:19 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 239.0.1.0 с источниками { }  
    21:10:21 route,pim,packet instance { 0 IP } interface { bridge } GMP: Получен отчёт о членстве v3 от 10.223.1.25  
    21:10:21 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 239.0.1.0 с источниками { }  
    21:10:34 route,pim,packet instance { 0 IP } interface { bridge } отправка Hello  
    21:10:46 route,pim,packet instance { 0 IP } interface { bridge } neighbor { 10.10.10.1 } получен hello  
    21:11:04 route,pim,packet instance { 0 IP } interface { bridge } отправка Hello  
    21:11:16 route,pim,packet instance { 0 IP } interface { bridge } neighbor { 10.10.10.1 } получен hello  
    21:11:34 route,pim,packet instance { 0 IP } interface { bridge } отправка Hello  
    21:11:46 route,pim,packet instance { 0 IP } interface { bridge } neighbor { 10.10.10.1 } получен hello  
    21:12:04 route,pim,packet instance { 0 IP } interface { bridge } отправка Hello  
    21:12:16 route,pim,packet instance { 0 IP } interface { bridge } neighbor { 10.10.10.1 } получен hello  
    21:12:34 route,pim,packet instance { 0 IP } interface { bridge } отправка Hello  
    21:12:46 route,pim,packet instance { 0 IP } interface { bridge } neighbor { 10.10.10.1 } получен hello  
    21:13:04 route,pim,packet instance { 0 IP } interface { bridge } отправка Hello  
    21:13:16 route,pim,packet instance { 0 IP } interface { bridge } neighbor { 10.10.10.1 } получен hello  
    21:13:34 route,pim,packet instance { 0 IP } interface { bridge } отправка Hello  
    21:13:46 route,pim,packet instance { 0 IP } interface { bridge } neighbor { 10.10.10.1 } получен hello  
    21:14:04 route,pim,packet instance { 0 IP } interface { bridge } отправка Hello  
    21:14:16 route,pim,packet instance { 0 IP } interface { bridge } neighbor { 10.10.10.1 } получен hello  
    21:14:31 route,pim,packet instance { 0 IP } interface { bridge } GMP: Получен запрос от 10.10.10.1  
    21:14:31 route,pim,packet instance { 0 IP } interface { bridge } GMP: Получен отчёт о членстве v3 от 10.10.10.2  
    21:14:31 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 224.0.0.22 с источниками { }  
    21:14:31 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 224.0.0.13 с источниками { }  
    21:14:31 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 224.0.0.106 с источниками { }  
    21:14:34 route,pim,packet instance { 0 IP } interface { bridge } отправка Hello  
    21:14:35 route,pim,packet instance { 0 IP } interface { bridge } GMP: Получен отчёт о членстве v3 от 10.10.10.1  
    21:14:35 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 224.0.0.22 с источниками { }  
    21:14:35 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 224.0.0.13 с источниками { }  
    21:14:35 route,pim,packet instance { 0 IP } interface { bridge } GMP: Изменение IS EXCLUDE для 224.0.0.106 с источниками { }  
    21:14:41 route,pim,debug instance { 0 IP } uib { grp: 239.0.1.0 } обновление  
    21:14:41 route,pim,info instance { 0 IP } uib { grp: 239.0.1.0 } уничтожено  
    21:14:46 route,pim,packet instance { 0 IP } interface { bridge } neighbor { 10.10.10.1 } получен hello  
    21:15:04 route,pim,packet instance { 0 IP } interface { bridge } отправка Hello  
    21:15:16 route,pim,packet instance { 0 IP } interface { bridge } neighbor { 10.10.10.1 } получен hello  
    21:15:34 route,pim,packet instance { 0 IP } interface { bridge } отправка Hello  
    21:15:46 route,pim,packet instance { 0 IP } interface { bridge } neighbor { 10.10.10.1 } получен hello  

    Кто видит, где сбой?  
    21:10:16 — GMP: Отправка общего запроса  
    21:14:31 — тут мы должны увидеть следующий «GMP: Отправка общего запроса», но этого не происходит (отсутствует)  
    21:14:41 — uib { grp: 239.0.1.0 } уничтожено ← это причина пропадания multicast-трафика, но не причина самого сбоя. Причина в том, что отсутствует общий запрос, поэтому multicast-клиенты не опрашиваются, поэтому группа 239.0.1.0 истекает по таймауту и удаляется.  
    И глядя на полный лог, это случается время от времени, но не регулярно каждые x минут или y часов.  
    Это баг в реализации PIM-SM или IGMP?
     
     
     
    subway
    Guest
    #8
    0
    18.02.2024 09:43:00
    Я запустил систему на ночь, вот что получилось:  
    Line 1002: 00:00:42 route,pim,info instance { 0 IP } uib { grp: 239.0.1.0 } destroyed  
    Line 1407: 00:51:43 route,pim,info instance { 0 IP } uib { grp: 239.0.1.0 } destroyed  
    Line 1675: 01:25:43 route,pim,info instance { 0 IP } uib { grp: 239.0.1.0 } destroyed  
    Line 1807: 01:42:42 route,pim,info instance { 0 IP } uib { grp: 239.0.1.0 } destroyed  
    Line 1939: 01:59:41 route,pim,info instance { 0 IP } uib { grp: 239.0.1.0 } destroyed  
    Line 2003: 02:08:14 route,pim,info instance { 0 IP } uib { grp: 239.0.1.0 } destroyed  
    Line 2068: 02:16:43 route,pim,info instance { 0 IP } uib { grp: 239.0.1.0 } destroyed  
    Line 4989: 08:22:09 route,pim,info instance { 0 IP } uib { grp: 239.0.1.0 } destroyed  
    Line 5257: 08:56:10 route,pim,info instance { 0 IP } uib { grp: 239.0.1.0 } destroyed  
    Line 5354: 09:08:59 route,pim,info instance { 0 IP } uib { grp: 239.0.1.0 } destroyed  

    Каждый раз при уничтожении группы grp: 239.0.1.0 отсутствовало сообщение "GMP: Sending general query", так что дело не в сбое клиента IGMP, который не ответил на общий запрос. Эта конкретная группа (grp: 239.0.1.0) также отлично подходит для тестирования, поскольку она обеспечивает синхронизацию с IGMP-клиентами, и поэтому клиенты никогда не покидают эту группу.  

    Вопрос остаётся прежним: почему иногда отсутствуют сообщения "GMP: Sending general query", которые должен отправлять экземпляр PIM?
     
     
     
    tangent
    Guest
    #9
    0
    18.02.2024 11:18:00
    Похоже, у тебя достаточно доказательств, чтобы обратиться в службу поддержки MT.
     
     
     
    subway
    Guest
    #10
    0
    20.02.2024 14:55:00
    Открыт тикет, как только будут какие-то выводы, я тоже здесь ими поделюсь.
     
     
     
    subway
    Guest
    #11
    0
    27.03.2024 15:15:00
    Заявка SUP-144274 была создана 19 февраля, ответа с тех пор нет — «ожидаю поддержки». Я обновил заявку, указав, что проблема точно такая же на ROS 7.14.1.
     
     
     
    subway
    Guest
    #12
    0
    03.05.2024 10:40:00
    После двух месяцев пришёл ответ от поддержки: Здравствуйте, большое спасибо за ваш отчёт. Мы знаем об этой проблеме и надеемся, что её скоро исправят. Так что проблема существует, но мы не знаем, если и когда её решат. Очень странно, что у компании с одной стороны банальные проблемы с multicast, а с другой — они начинают внедрять IS-IS… Очевидно, что такой расплывчатый ответ совершенно неприемлем, поэтому мы перешли на Ruckus, где точно такая же настройка работает без нареканий.
     
     
     
    futurion
    Guest
    #13
    0
    13.03.2025 14:17:00
    Извиняюсь за это оживление темы, но хочу добавить пару слов. За последние несколько лет я не раз сообщал в поддержку MikroTik о разных проблемах, связанных с IGMP и мультикастом. Тогда реализация была плохой, и, к сожалению, с тех пор особо не изменилась. Всё ещё есть куча нерешённых вопросов с поведением igmp querier, igmp snooping, igmp router ports, мультикаст-флудом, IGMP на bonding интерфейсах и так далее, как на устройствах с RouterOS, так и на SwOS. Лично я уже сообщил минимум о пяти подтверждённых багах, связанных с IGMP, и до сих пор ни один не исправили... Грустно это признавать, но у MikroTik отличное оборудование, хороший софт и масса возможностей, а вот с IGMP/мультикастом явно надо поработать. Просто мои пять копеек... с уважением.
     
     
     
    jjwhite
    Guest
    #14
    0
    17.04.2025 23:45:00
    Я тоже замечаю, что querier не отправляет запросы. Запускаю это на RB1100, который выполняет только IGMP snooping и querier, и при этом работает DUDE. У него один порт, выходящий в остальную сеть. В сети три радиостанции, которые используют multicast. Должен ли я иметь возможность просмотреть этот порт с помощью torch и увидеть IGMP-трафик от 0.0.0.0 — то есть от querier?
     
     
     
    krzysztof
    Guest
    #15
    0
    11.06.2025 18:20:00
    Как и «futurion», я много раз сообщал, что IGMP/multicast работает неправильно. Mikrotik врет, что это работает в SwOS, и ничего не делает, чтобы исправить ситуацию. Использовать Mikrotik, если вы хотите работать с IGMP/multicast — пустая трата времени. Я проверяю это каждые пару месяцев, и ничего не меняется. Mikrotik делает кучу ненужных функций, но исправить серьёзные баги не может.
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2026 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры