Internet Control Message Protocol

ICMP (Internet Control Message Protocol)
Rodina: Rodina internetového protokolu
Operační oblast: Povinný doplněk

na internetový protokol ,
chybové zprávy, diagnostika

ICMP v zásobníku protokolů TCP / IP
Internet ICMP
IPv4
Přístup k síti Ethernet Token
bus
Token
ring
FDDI ...
Standardy: RFC 792 (1981)

Internet Control Message Protocol ( ICMP ) je používán v počítačových sítích pro výměnu informací a chybových zpráv přes Internet Protocol verze 4 ( IPv4 ). Podobný protokol s názvem ICMPv6 existuje pro IPv6 .

ICMP je součástí IPv4, ale je s ním zacházeno jako se samostatným protokolem. Očekává se, že každý router a každý počítač „porozumí“ ICMP. Většina paketů ICMP obsahuje diagnostické informace: Jsou odeslány zpět ze směrovače ke zdroji, pokud směrovač zahodí pakety, například proto, že nelze dosáhnout cíle nebo vypršela platnost TTL . Platí následující zásady:

  • ICMP používá IP jako základ komunikace tím, že se interpretuje jako protokol vyšší vrstvy, tzn. H. Zprávy ICMP jsou zapouzdřeny v paketech IP.
  • ICMP detekuje některé chybové stavy, ale nedělá z IP spolehlivý protokol.
  • ICMP analyzuje chyby v každém IP paketu, s výjimkou těch, které nesou zprávu ICMP.
  • Zprávy ICMP nejsou odesílány jako odpověď na pakety na cílové adresy, které jsou vícesměrovými nebo vysílacími adresami.
  • Zprávy ICMP reagují pouze na jedinečnou zdrojovou IP adresu.

Typy paketů ICMP

Typ paketu ICMP je 8bitové číslo na začátku hlavičky ICMP . Čísla mají následující význam:

  • 0 = echo (odpověď)
  • 1–2 = nepřiřazeno
  • 3 = nelze dosáhnout cíle datagramu
  • 4 = žádost o omezení dodávky balíku
  • 5 = Doporučení přesměrování na jinou bránu ve stejné síti s rychlejším připojením k cíli
  • 6 = alternativní adresa hostitele
  • 7 = nepřiřazeno
  • 8 = požadavek na ozvěnu
  • 9 = nabídka routeru
  • 10 = nábor routeru
  • 11 = časový limit
  • 12 = Problém s parametry datagramu
  • 13 = časové razítko (usnadňuje synchronizaci času)
  • 14 = časové razítko (odpověď)
  • 15 = "Žádost o informace" (k určení čísla sítě, nahrazeno DHCP )
  • 16 = "Informační odpověď"
  • 17 = maska ​​požadavku
  • 18 = maska ​​odpovědi
  • 19 = vyhrazeno (pro zabezpečení)
  • 20–29 = vyhrazeno (pro experimenty odolnosti)
  • 30 = traceroute
  • 31 = Chyba při převodu datagramu
  • 32 = Přesměrování mobilního hostitele
  • 33 = Původně IPv6 Where-Are-You (nahrazeno ICMPv6 )
  • 34 = Původně IPv6 I-Am-Here (nahrazeno ICMPv6 )
  • 35 = Žádost o mobilní registraci
  • 36 = Odpověď na mobilní registraci
  • 37 = Žádost o doménové jméno
  • 38 = Odpověď na název domény
  • 39 = SKIP
  • 40 = photuris
  • 41 = používají experimentální protokoly mobility, jako je Seamoby
  • 42 = rozšířená ozvěna *
  • 43 = rozšířená ozvěna (odpověď) *
  • 44-252 = nepřiřazeno
  • 253 = experiment 1 podle RFC 3692
  • 254 = Experiment 2 podle RFC 3692

[†] zrušen

Čas žít

Aby se zabránilo nekonečnému odesílání paketů po síti (např. V kruhu mezi několika směrovači), router sníží hodnotu TTL o 1. Když hodnota TTL dosáhne hodnoty 0, paket se odstraní a odesílatel o tomto procesu informuje prostřednictvím zpráva ICMP. Traceroute využívá tohoto mechanismu .

Aby bylo možné určit trasu ( přeskoky ) paketu ke konkrétnímu cílovému hostiteli , program pro analýzu traceroute odešle datové pakety s přírůstkem Time-To-Live (TTL) (počínaje 1) a čeká na „překročení doby dožití“ v přenosu “nebo„ Cíl je nedostupný “jako reakce. V závislosti na implementaci nebo vybrané možnosti Traceroute to mohou být ICMP (např. Pod Windows) nebo UDP pakety (např. Pod Linuxem).

konstrukce

ICMP odesílá a přijímá širokou škálu zpráv. Zpráva ICMP je označena protokolem číslo 1 v záhlaví IP. ICMPv6 má naopak číslo protokolu 58. Formát zprávy ICMP se skládá pouze z několika polí:

0 4. místo 8. místo 12. místo 16 20. místo 24 28 31
Typ kód Kontrolní součet
Data (volitelně)

Pole typu určuje zprávu. Pole kódu interpretuje typ zprávy přesněji. Data obvykle obsahují část původní zprávy IP. Některé z běžnějších kombinací typových kódů jsou:

Typ Zadejte název kód význam
0 Echo odpověď 0 Echo odpověď
3 Cíl není dosažitelný 0 K síti se nelze připojit
1 Hostitele (cílové stanice) nelze dosáhnout
2 Protokol nelze dosáhnout
3 Do přístavu se nelze dostat
4. místo Fragmentace nutná D on't F ragment but set
5 Trasa není možná (směr je nesprávně uveden v poli možností záhlaví IP)
13 Komunikace je administrativně zakázána (paket je blokován bránou firewall příjemce)
4. místo Uvolněte zdroj 0 Datagram zahozen, protože fronta je plná
8. místo Žádost o echo 0 Žádost o echo (lépe známá jako „ ping “)
11 Časový limit překročen 0 Platnost TTL (Time To Live) vypršela
1 Časový limit defragmentace vypršel

V případě mnoha zpráv ICMP obsahuje další pole „Data“ podrobnější informace o přiřazení zprávy ICMP v prvním 32bitovém slově. Často se od druhého datového slova dále přenáší také IP záhlaví zahajovacího datagramu a prvních 32 bitů paketu. Pole „data“ však lze také zneužít k přenosu uživatelských dat ( tunelování ICMP ). Potřebné zpracování chyb nebo opravu chyb a podobně je však poté nutné implementovat na úrovni aplikace.

Aspekty související s bezpečností

Protokol Internet Control Message Protocol lze použít pro útok typu Denial-of-Service (DoS) nebo Distributed Denial-of-Service (DDoS) na zařízení. Zařízení může být také zneužito útočníkem v rámci útoku DDoS k útoku na třetí zařízení. Typickými způsoby útoku jsou šmoulí útok , záplavy nebo ping smrti . Další možností použití protokolu ICMP je použít jej k neoprávněnému přenosu dat prostřednictvím tunelového připojení ICMP .

webové odkazy

  • RFC 792 . - Internet Control Message Protocol . [Errata: RFC 792 ]. Září 1989. (Aktualizováno RFC 950  - anglicky).
  • RFC 1122 . - Požadavky na internetové hostitele - Komunikační vrstvy . [Errata: RFC 1122 ]. Říjen 1989. (Aktualizováno RFC 1349  - také pro další rozšíření ICMP - anglicky).
  • Parametry ICAN IANA - úplný seznam typů a kódů ICMP

Individuální důkazy

  1. Parametry ICMP (Internet Control Message Protocol). IANA, 15. června 2018, přístup 9. prosince 2018 .
  2. ^ J. Postel:  RFC 792  - Internet Control Message Protocol . Září 1989. s. 18. ( Specifikace protokolu internetového programu DARPA. Na str. 19 - angličtina).
  3. F. Gont:  RFC 6918 . - Formální ukončení podpory některých typů zpráv ICMPv4 . Duben 2013. (Nahrazuje RFC 1788 - anglicky).
  4. ^ R. Bonica, R. Thomas, J. Linkova, C. Lenart, M. Boucadair:  RFC 8335 . - PROBE: Nástroj pro snímání rozhraní . Únor 2018. (Navrhovaný standard).