1

Я использую mDNSResponder от Apple. Работает в единой сети. Есть ли способ заставить его работать, даже если есть роутер между компьютером, который просматривает сервисы, и компьютером, который является поставщиком услуг?

Я плохо разбираюсь в сетях, но мне кажется, что обычно многоадресные пакеты не проходят через маршрутизатор.

Итак, я имею в виду два возможных варианта:

  1. В каком-то сетевом протоколе может быть какой-то ключ, который заставляет маршрутизатор ретранслировать многоадресный пакет в другую сеть.
  2. Для этого на маршрутизаторе можно установить программу (если нет, то можно ли ее написать?).

1 ответ1

0

Есть методы для многоадресной маршрутизации, да. В настоящее время предпочтительным протоколом является PIM, который заменяет старый DVMRP. Он даже поддерживается в различных академических сетях, таких как GÉANT. (Например, вот статья о многоадресной рассылке через CUDN.)

(Я сам не пробовал; маршрутизаторам в сетях, которыми я управляю, не хватает поддержки.)


Кроме того, есть IGMP-прокси. Это более широко поддерживается и проще в настройке ... Но, с другой стороны, он направленный (возможно, предназначен для использования с IPTV) - вместо правильной маршрутизации вы должны настроить один сетевой интерфейс как "восходящий" (источник многоадресных данных), а остальные как "нисходящий" (пассивный). получатели).

Таким образом, это может работать для одноранговых сценариев, таких как mDNS, но я не трачу время впустую.

Кроме того, некоторые реализации mDNS используют TTL = 1, поэтому маршрутизаторы в любом случае откажутся от этого. (Это проблема как с маршрутизацией, так и с IGMP-прокси.)


Таким образом, ваш третий вариант - прокси mDNS. Если роутер работает под управлением Linux с Avahi, вы можете найти параметры " оотражателя "в avahi-daemon.conf:

[reflector]
enable-reflector=yes

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .