IGMP

IGMP
namn Internet Group Management Protocol
Nivå (enligt OSI-modellen ) nätverk
Familj TCP/IP
Syftet med protokollet Multicast Routing Management
Specifikation RFC 3376

IGMP ( engelsk  Internet Group Management Protocol  - protokoll för att hantera Internetgrupper) är ett protokoll för att hantera grupp (multicast) dataöverföring i nätverk baserat på IP-protokollet . IGMP används av routrar och IP-värdar för att organisera nätverksenheter i grupper.

Detta protokoll är en del av IP Multicast - specifikationen . IGMP finns på nätverkslagret [1] . Det liknar på många sätt ICMP för unicast . IGMP kan användas för att stödja videoströmning och onlinespel , för dessa typer av applikationer tillåter det användningen av nätverksresurser mer effektivt. IGMP är sårbart för vissa attacker [2] [3] [4] [5] , och brandväggar tillåter vanligtvis användaren att inaktivera detta protokoll om det inte behövs.

IGMP används endast i IPv4 -nätverk , eftersom multicast-paketöverföring i IPv6 implementeras genom Multicast Listener Discovery- protokollet .

Arkitektur

Ett nätverk som tillhandahåller multicast-tjänster (som video) som använder IGMP kan ha följande grundläggande arkitektur:

IGMP används av klientdatorn och närliggande switchar för att ansluta klienten och den lokala multicast-routern. Protocol Independent Multicast (PIM)-protokollet används sedan mellan de lokala och avlägsna routrarna för att dirigera multicast-trafik från videoservern till flera multicast-klienter.

Standarder

Enligt Request for Comments (RFC), ett communitydokument för Internet Engineering Task Force (IETF), finns det tre versioner av IGMP. IGMPv1 definieras i RFC 1112 , IGMPv2 i RFC 2236 och IGMPv3 i RFC 3376 .

Den huvudsakliga förbättringen i IGMPv3 jämfört med IGMPv2 är stöd för IP -adressfiltrering . Med denna mekanism kan en värd avgöra vilka adresser den vill ta emot paket från och vilka den inte vill.

Implementering

IGMP-protokollet implementeras i form av server- och klientdelar, varav den första körs på routern, den andra - i nätverksnoden som tar emot multicast-trafik. Klienten skickar ett meddelande om att tillhöra någon grupp till den lokala routern, vid denna tidpunkt väntar routern på meddelanden och skickar med jämna mellanrum förfrågningar till klienter.

Operativsystem i familjerna BSD , Linux och Windows stödjer klientsidan av protokollet. På ett Linux-system lades IGMPv3 till i kärnversion 2.5. För FreeBSD lades IGMPv3 till i version 8.0.

Linux använder demoner för att implementera IGMP-backend , till exempel kan mrouted fungera som en IGMP-router. Det finns också hela mjukvarupaket (som XORP ) som låter dig förvandla en vanlig dator till en fullfjädrad multicast-router.

I OpenBSD inkluderar IGMP-stöd i kärnan initialt grundläggande routingstöd, medan demonerna mrouted och dvmrpd som finns tillgängliga i operativsystemet tillåter dig att lösa mer komplexa uppgifter (till exempel tunnling av multicast-trafik).

IGMPv3-paketstruktur

Definierat av RFC 3376 .

Medlemskapsfråga meddelande

Medlemskapsförfrågningar skickas av routrar för att för varje nod bestämma dess medlemskap i valfri grupper (gruppmedlemskap) och en lista över informationskällor från vilka denna nod vill ta emot meddelanden (mottagningstillstånd). Det finns tre typer av sådana förfrågningar:

Oktett 0 ett 2 3 fyra 5 6 7 åtta 9 tio elva 12 13 fjorton femton 16 17 arton 19 tjugo 21 22 23 24 25 26 27 28 29 trettio 31
0-3 Typ = 0x11 Max Resp kod Kontrollsumma
4-7 Gruppadress
8-11 Resv S QRV QQIC Antal källor (N)
12-15 Källadress [1]
  Källadress [N]

Medlemsrapport Meddelande

Oktett 0 ett 2 3 fyra 5 6 7 åtta 9 tio elva 12 13 fjorton femton 16 17 arton 19 tjugo 21 22 23 24 25 26 27 28 29 trettio 31
0-3 Typ = 0x22 Reserverad Kontrollsumma
4-7 Reserverad Antal gruppposter (M)
8-11 Grupprekord [1]
  Grupppost [M]
0 ett 2 3 fyra 5 6 7 åtta 9 tio elva 12 13 fjorton femton 16 17 arton 19 tjugo 21 22 23 24 25 26 27 28 29 trettio 31
inspelningstyp Aux datalinje Antal källor (N)
multicast-adress
Källadress [1]
Källadress [N]
Hjälpdata

Andra typer av paket

Sorts namn Beskrivning
0x12 Version 1 Medlemsrapport Måste stödjas för kompatibilitet med tidigare versioner
0x16 Version 2 Medlemsrapport
0x17 Version 2 Lämna gruppen
0x13 Distance Vector Multicast Routing Protocol Experimentellt protokoll

Se även

Anteckningar

  1. ^ Network Sorcery - IGMP . Datum för åtkomst: 21 december 2009. Arkiverad från originalet den 27 april 2006.
  2. Förfalskad IGMP-rapport över denial of service Arkiverad 10 juni 2011 vid Wayback Machine- sårbarheten.
  3. Fragmenterat IGMP-paket Arkiverat 13 februari 2005 på Wayback Machine kan främja "Denial of Service"-attack.
  4. IGMP-säkerhetsproblembeskrivning och -krav Arkiverad 13 oktober 2006. .
  5. Microsofts säkerhetsbulletin MS06-007: Sårbarhet i TCP/IP kan tillåta denial of service (913446) Arkiverad 31 mars 2007 på Wayback Machine .

Länkar