GNU/Linux >> Znalost Linux >  >> Linux

Použijte ip route add k přidání multicastových tras do více rozhraní

To, že máte multicast procházející vaším Linuxovým boxem pomocí unicastového směrování, je kombinací několika šťastných okolností.

Směrování vícesměrového vysílání není totéž jako směrování jednosměrového vysílání. Unicast směrování je založeno na tom, že provoz je odesílán na jednu adresu, ale multicastový provoz je odesílán na skupinovou adresu, která představuje hostitele, kteří se chtějí přihlásit k odběru skupiny multicast.

Hostitelé používají protokol IGMP, aby sdělili směrovači vícesměrového vysílání, že se chtějí připojit ke skupině vícesměrového vysílání, a směrovač vícesměrového vysílání pak začne posílat vícesměrový provoz pro tuto skupinu do sítě hostitelů, kteří to požadují.

Moderní přepínače budou používat IGMP Snooping k určení, které porty přepínače mají hostitele požadující připojení ke konkrétní skupině vícesměrového vysílání, a budou posílat provoz pro tuto skupinu vícesměrového vysílání pouze na porty přepínače, kde hostitelé požádali o připojení ke skupině vícesměrového vysílání.

Linux sám o sobě nepodporuje směrování vícesměrového vysílání a je třeba do zařízení Linux přidat něco, aby podporovalo směrování vícesměrového vysílání. Podívejte se na níže uvedený diagram:

Když zdroj multicastu začne posílat multicastový provoz pro multicastovou skupinu, přepínač pravděpodobně nezaznamenal žádné požadavky IGMP na připojení ke skupině multicast, takže multicastový provoz pro tuto skupinu nikam nevede.

Když se jeden z počítačů na stejném přepínači chce připojit k multicastové skupině, odešle zprávu IGMP Join a přepínač ji zachytí a odešle multicastový provoz na port, ke kterému je připojen žádající počítač.

Pokud se chce PC na druhé straně linuxového routeru připojit k multicastové skupině, má smůlu, protože multicastový provoz neproudí na tuto stranu linuxového routeru. Linuxový směrovač se ani nepřipojil ke skupině multicast, takže do něj přepínač nikdy neposílá multicastový provoz.

Když na routeru spustíte směrování vícesměrového vysílání, směrovač odpoví na požadavek hostitele IGMP a přepínač bude vědět, že se jedná o směrovač vícesměrového vysílání, a odešle vícesměrový provoz do portu přepínače, ke kterému je směrovač vícesměrového vysílání připojen. Zjednodušeně řečeno, router nebude odesílat multicastový provoz na jiné rozhraní, pokud není aktivní přijímač na jiném rozhraní (to závisí na verzi multicastu, například PIM-DM začne odesílat, ale ustoupí, pokud nejsou vidět žádné požadavky IGMP) .

Pokud je na směrovači povoleno směrování vícesměrového vysílání, počítač připojený k druhému rozhraní odešle zprávu IGMP Join a směrovač Linux začne posílat do rozhraní vícesměrový provoz pro požadovanou skupinu. Přepínač požadavek zachytí a odešle multicastový provoz na port přepínače, ke kterému je připojen počítač, který požádal o připojení ke skupině multicast.

Je to složitější, pokud potřebujete směrovat přes více směrovačů. IGMP se používá mezi hostiteli a místním směrovačem pro vícesměrové vysílání. Mezi směrovači vícesměrového vysílání se používá PIM (nebo nějaký jiný směrovací protokol pro vícesměrové vysílání).

To vše zabraňuje tomu, aby multicastový provoz směřoval tam, kde není žádoucí.

Linux má doplňky, které mu pomáhají správně zpracovávat IGMP a multicastové směrování.


Linux
  1. Jak přidat novou statickou trasu na RHEL7 Linux

  2. Jak přidat nebo odebrat uživatele ze skupiny v Linuxu

  3. Linux – nelze přidat uživatele do skupiny bez restartu?

  1. Jak zjistit, zda je povoleno vícesměrové vysílání IP?

  2. Přidat uživatele do skupiny, který má přístup k síťovým rozhraním?

  3. Jak přidat více tras v Linuxu pomocí příkladů příkazů ip

  1. Přidat uživatele do skupiny v Linuxu, jak na to (s příklady)

  2. Jak přidat více hostitelů v phpMyAdmin

  3. Jak přidám uživatele do jiné skupiny uživatelů?