IGMP

IGMP
Navn Internet Group Management Protocol
Niveau (ifølge OSI-modellen ) netværk
Familie TCP/IP
Formål med protokollen Multicast Routing Management
Specifikation RFC 3376

IGMP ( engelsk  Internet Group Management Protocol  - protokol til styring af internetgrupper) er en protokol til styring af gruppe (multicast) datatransmission i netværk baseret på IP-protokollen . IGMP bruges af routere og IP-værter til at organisere netværksenheder i grupper.

Denne protokol er en del af IP Multicast - specifikationen . IGMP er placeret på netværkslaget [1] . Det ligner på mange måder ICMP for unicast . IGMP kan bruges til at understøtte videostreaming og onlinespil , for disse typer applikationer tillader det brugen af ​​netværksressourcer mere effektivt. IGMP er sårbar over for nogle angreb [2] [3] [4] [5] , og firewalls tillader normalt brugeren at deaktivere denne protokol, hvis det ikke er nødvendigt.

IGMP bruges kun i IPv4 -netværk , da multicast-pakketransmission i IPv6 implementeres gennem Multicast Listener Discovery -protokollen .

Arkitektur

Et netværk, der leverer multicast-tjenester (såsom video) ved hjælp af IGMP, kan have følgende grundlæggende arkitektur:

IGMP bruges af klientcomputeren og tilstødende switches til at forbinde klienten og den lokale multicast-router. Protocol Independent Multicast (PIM)-protokollen bruges derefter mellem de lokale og eksterne routere til at dirigere multicast-trafik fra videoserveren til flere multicast-klienter.

Standarder

Ifølge Request for Comments (RFC), et Internet Engineering Task Force (IETF) fællesskabsdokument, er der tre versioner af IGMP. IGMPv1 er defineret i RFC 1112 , IGMPv2 i RFC 2236 og IGMPv3 i RFC 3376 .

Den største forbedring i IGMPv3 i forhold til IGMPv2 er understøttelse af IP-adressefiltrering . Med denne mekanisme kan en vært fortælle, hvilke adresser den ønsker at modtage pakker fra, og hvilke den ikke gør.

Implementering

IGMP-protokollen er implementeret i form af server- og klientdele, hvoraf den første kører på routeren, den anden - i netværksknuden, der modtager multicast-trafik. Klienten sender en meddelelse om at tilhøre en gruppe til den lokale router, på dette tidspunkt venter routeren på meddelelser og sender periodisk anmodninger til klienter.

Operativsystemer i BSD- , Linux- og Windows -familierne understøtter klientsiden af ​​protokollen. På et Linux-system blev IGMPv3 tilføjet i kerneversion 2.5. Til FreeBSD blev IGMPv3 tilføjet i version 8.0.

Linux bruger dæmoner til at implementere IGMP-backend , for eksempel kan mrouted fungere som en IGMP-router. Der er også hele softwarepakker (såsom XORP ), der giver dig mulighed for at forvandle en almindelig computer til en multicast-router med alle funktioner.

I OpenBSD inkluderer IGMP-understøttelse i kernen oprindeligt grundlæggende routing-understøttelse, mens mrouted- og dvmrpd- dæmonerne, der er tilgængelige i OS'et, giver dig mulighed for at løse mere komplekse opgaver (for eksempel tunneling af multicast-trafik).

IGMPv3-pakkestruktur

Defineret af RFC 3376 .

Forespørgsel om medlemskab

Medlemskabsanmodninger sendes af routere for at bestemme for hver node dens medlemskab i en hvilken som helst gruppe (gruppemedlemsstat) og en liste over informationskilder, hvorfra denne node ønsker at modtage beskeder (modtagelsestilstand). Der er tre typer af sådanne anmodninger:

Oktet 0 en 2 3 fire 5 6 7 otte 9 ti elleve 12 13 fjorten femten 16 17 atten 19 tyve 21 22 23 24 25 26 27 28 29 tredive 31
0-3 Type = 0x11 Max Resp kode Kontrolsum
4-7 Gruppe adresse
8-11 Resv S QRV QQIC Antal kilder (N)
12-15 Kildeadresse [1]
  Kildeadresse [N]

Medlemskabsrapport Besked

Oktet 0 en 2 3 fire 5 6 7 otte 9 ti elleve 12 13 fjorten femten 16 17 atten 19 tyve 21 22 23 24 25 26 27 28 29 tredive 31
0-3 Type = 0x22 Reserveret Kontrolsum
4-7 Reserveret Antal grupperekord (M)
8-11 Gruppepost [1]
  Gruppepost [M]
0 en 2 3 fire 5 6 7 otte 9 ti elleve 12 13 fjorten femten 16 17 atten 19 tyve 21 22 23 24 25 26 27 28 29 tredive 31
posttype Aux datalinje Antal kilder (N)
multicast-adresse
Kildeadresse [1]
Kildeadresse [N]
Hjælpedata

Andre typer pakker

Type Navn Beskrivelse
0x12 Version 1 Medlemsrapport Skal understøttes for kompatibilitet med tidligere versioner
0x16 Version 2 Medlemsrapport
0x17 Version 2 Forlad gruppen
0x13 Distance Vector Multicast Routing Protocol Eksperimentel protokol

Se også

Noter

  1. Network Sorcery - IGMP . Dato for adgang: 21. december 2009. Arkiveret fra originalen den 27. april 2006.
  2. Spoofed IGMP rapport lammelsesangreb Arkiveret 10. juni 2011 ved Wayback Machine - sårbarheden.
  3. Fragmenteret IGMP-pakke Arkiveret 13. februar 2005 på Wayback-maskinen kan fremme "Denial of Service"-angreb.
  4. IGMP-sikkerhedsproblemerklæring og -krav Arkiveret 13. oktober 2006. .
  5. Microsoft Security Bulletin MS06-007: Sårbarhed i TCP/IP kan tillade Denial of Service (913446) Arkiveret 31. marts 2007 på Wayback Machine .

Links