Internet Control Message Protocol (ICMP) je protokol tretej vrstvy (sieťová vrstva) v sedemvrstvovom modeli OSI. Protokol diagnostikuje problémy so sieťovým pripojením alebo prenosom dát medzi zariadeniami. Pomáha odosielaním, prijímaním a spracovaním správ ICMP na hlásenie problémov s pripojením do zdrojového sieťového zariadenia.

Primárnym účelom protokolu ICMP je preto hlásiť chyby na sieťovej vrstve. Škodliví aktéri však môžu manipulovať s jeho funkčnosťou, aby spustili útoky, ako sú útoky Distributed Denial of Service (DDoS) a Ping of Death. Tu sa dozviete o protokole ICMP, jeho prípade použitia a parametroch, ktoré sú dôležité na pochopenie správ ICMP.

Ako funguje ICMP?

Smerovače používajú protokol ICMP na správu siete a diagnostiku problémov. Generuje a odosiela chybové správy do odosielacieho zariadenia, keď sieť zakáže doručovanie paketov do cieľového zariadenia. Tieto chybové hlásenia zahŕňajú prekročený čas, problém s parametrami, nedostupnosť cieľa, preťaženie siete atď.

Napríklad, keď odosielateľ odošle údaje z jedného zariadenia do cieľového zariadenia vo forme IP datagramu, prejde cez viacero smerovačov alebo sprostredkovateľských zariadení. Príležitostne môže nastať chyba pri preposielaní datagramu IPV4. Preto sú správy ICMP rozdelené do dvoch širokých kategórií: chybové správy a správy s dotazmi.

instagram viewer

Správy o hlásení chýb

Toto sú správy, ktorým môže smerovač alebo sprostredkovateľský hostiteľ čeliť pri spracovaní datagramu:

  1. Prekročený čas: Paket ICMP má parameter time-to-live, ktorý keď dosiahne 0, router alebo hostiteľ zahodí datagram a pošle chybovú správu o prekročení času. Správa sa odošle aj vtedy, keď cieľ neprijme všetky dátové fragmenty.
  2. Cieľ nedostupný: Zariadenie iniciujúce pripojenie dostane chybové hlásenie o nedosiahnuteľnom cieli, keď ho smerovač alebo sprostredkujúci hostiteľ nedokáže doručiť. V dôsledku toho zariadenia zahodia datagram.
  3. Zdroj zhášania: Keď zariadenia nedokážu doručiť datagram z dôvodu preťaženia siete, odosielateľovi správy pošlú ICMP „zdrojovú zhášaciu správu“. Správa o hlásení chýb pridáva riadenie toku v sieťovej vrstve informovaním zdrojového zariadenia o preťažení cesty a spomalením procesu odosielania údajov.
  4. presmerovanie: Smerovač v neoptimálnej ceste presmeruje paket na smerovač s optimálnou cestou medzi zdrojom a cieľom. Ako taký aktualizuje zdroj o zmene svojej trasy.
  5. Problém s parametrami: Zdrojové zariadenie dostane túto správu, keď v hlavičke datagramu chýba akákoľvek hodnota. Napríklad rozdiel vo vypočítanom kontrolnom súčte v cieli od zdroja generuje toto chybové hlásenie ICMP.

Dopytové správy

Správy dotazov sa vyskytujú v pároch a poskytujú špecifické informácie zo sprostredkujúcich zariadení do zdrojového zariadenia.

  1. Echo-žiadosť a echo-odpoveď: Tieto správy pomáhajú vyriešiť problémy s diagnostikou siete.
  2. Žiadosť o časovú pečiatku a odpoveď: Tieto žiadosti o časovú pečiatku a správy s odpoveďou pomáhajú určiť spiatočný čas medzi zariadeniami.

Pochopenie parametrov ICMP

Údaje správ ICMP sú zapuzdrené pod hlavičkou IP, čo znamená, že hlavička datagramu ICMP nasleduje po informáciách IPv4/v6. Prvá časť hlavičky paketu ICMP obsahuje parametre, ktoré pomáhajú sieťovým zariadeniam určiť chybovú alebo dotazovaciu správu.

Medzi prvými 32 bitmi prvých 8 bitov určuje typ správy, ďalších 8 bitov určuje kód správy a zvyšné bity obsahujú informácie týkajúce sa integrity údajov. Tri informačné polia sú teda: typy ICMP, kód ICMP a kontrolný súčet.

Typy ICMP

Typ určuje účel paketu ICMP. Stručne vysvetľuje, prečo zdrojové zariadenie prijíma túto správu. Existuje 0 až 255 typov správ ICMP, takže každý typ poskytuje iné informácie. Niektoré dôležité typy ICMP sú:

0: Požiadavka na odozvu

3: Cieľ nedostupný

4: Zdrojové zhášanie

5: Presmerovanie

8: Echo Reply

11: Prekročený čas

12: Problém s parametrami

30: Traceroute

Kód ICMP

Kód ICMP poskytuje dodatočné informácie o správach. Napríklad ICMP typ 3 s kódom 0-15 špecifikuje, prečo je cieľ nedostupný; to znamená, že ak je kód 0, je to preto, že sieť je nedostupná. Podobne pre typ 3 kód 1 správa uvádza, že hostiteľ je nedostupný.

Okrem toho, typ 8 kód 0 a typ 0 kód 0 predstavujú echo-request a echo odpovede správy. Preto každý typ správy s rovnakou hodnotou kódu poskytuje rôzne informácie o sieti.

Kontrolný súčet

Kontrolný súčet je mechanizmus zisťovania chýb, ktorý určuje integritu údajov. Hodnota kontrolného súčtu predstavuje bity v prenosovej správe. Odosielateľ vypočíta a zahrnie kontrolný súčet údajov a príjemca prepočíta hodnotu a porovná ju s pôvodnou správou, aby zistil prípadné zmeny pôvodnej správy počas prenos.

Druhá časť hlavičky ukazuje na bajtovú hodnotu, ktorá je príčinou problému v pôvodnej správe. Nakoniec, koncová časť ICMP paketu je skutočný datagram.

Prípad použitia ICMP

Tu je niekoľko pracovných príkladov protokolu ICMP v rôznych verziách správy siete a administratívne nástroje.

Ping

Ping je pomôcka príkazového riadka, ktorá sa spolieha na správy ICMP echo-request a echo-reply na testovanie dostupnosti siete a latencie medzi zariadeniami. Nástroj jednoducho určí dostupnosť cieľového servera odhadom celkového počtu odoslaných alebo prijatých paketov a percenta straty paketov. Pomáha tiež určiť veľkosť celkovej maximálnej prenosovej jednotky (MTU).

Použite ping na určenie dostupnosti google.com:

Traceroute

Traceroute je ďalší nástroj príkazového riadka, ktorý používa správy s požiadavkami na odozvu a odozvou s premennou TTL na mapovanie cesty medzi zdrojovým a cieľovým zariadením. Je tiež užitočný pri určovaní oneskorení odozvy a zabezpečuje presnosť opakovaným dopytovaním každého skoku.

Ako funguje ICMP bez portu?

Z vyššie uvedeného vysvetlenia vyplýva, že ICMP je protokol bez pripojenia, ktorý odosiela údaje nezávisle ako datagram a jeho hlavička sa zobrazuje za podrobnosťami IPv4. Môžete si však všimnúť aj absenciu čísla portu, čo vyvoláva otázku, ako zariadenia prijímajú údaje ICMP alebo sa dozvedia o akomkoľvek pripojení?

Odpoveď je celkom jednoduchá. Protokol ICMP bol navrhnutý tak, aby fungoval na sieťovej vrstve modelu OSI a komunikoval medzi smerovačmi a hostiteľmi za účelom zdieľania informácií. Čísla portov sú súčasťou transportnej vrstvy a ICMP nie je protokol TCP ani UDP. A napokon, kombinácia typu ICMP a kódu pomáha zariadeniam určiť správu a získať všetky informácie o sieti.

Kontrola chýb a toku pomocou ICMP

Vyššie uvedené podrobnosti o protokole ICMP ukazujú, ako zabezpečuje riadenie toku a kontrolu chýb údajov na tretej vrstve modelu OSI. Protokolové správy a parametre v prvej časti hlavičky ICMP paketu pokrývajú všetky aspekty správy siete a problémov diagnostiky.

Je dôležité vedieť, že nesprávne nastavenia brány firewall môžu útočníkom umožniť prechádzať sieťou organizácie pomocou príkazu ping a spôsobiť, že bude náchylná na útoky typu DDOS, ping of death a ICMP flood. Môžeš použiť Wireshark na zachytávanie paketov z internetu a vykonať podrobnú analýzu ICMP paketov pre lepšie pochopenie.

5 spôsobov, ako opraviť chybu „Chýba jeden alebo viac sieťových protokolov“ v systéme Windows 10

Prečítajte si ďalej

zdieľamTweetujtezdieľamEmail

Súvisiace témy

  • Technológia vysvetlená
  • Počítačové siete

O autorovi

Rumaisa Niazi (24 publikovaných článkov)

Rumaisa je spisovateľkou na voľnej nohe v MUO. Nosila veľa klobúkov, od matematičky až po nadšenca informačnej bezpečnosti, a teraz pracuje ako analytička SOC. Medzi jej záujmy patrí čítanie a písanie o nových technológiách, distribúciách Linuxu a všetkom okolo informačnej bezpečnosti.

Viac od Rumaisa Niaziho

prihlásiť sa ku odberu noviniek

Pripojte sa k nášmu bulletinu a získajte technické tipy, recenzie, bezplatné e-knihy a exkluzívne ponuky!

Kliknutím sem sa prihlásite na odber