RFC 792: ICMP – Diagnostika siete od PING-u po traceroute | CCNA tipy

Ak sa pripravujete na certifikáciu CCNA alebo CCNP, pochopenie protokolu ICMP (Internet Control Message Protocol) je kľúčové. V tomto článku rozoberieme RFC 792, ktoré definuje ICMP pre IPv4. Dozviete sa, ako funguje komunikácia typu echo request/reply (ping), čo znamenajú hlásenia ako Destination Unreachable či Time Exceeded a ako sa ICMP využíva pri diagnostike siete.

Čo je RFC 792 a prečo je dôležité?

RFC 792 bolo publikované v septembri 1981 a definuje, ako IP zariadenia komunikujú o chybách alebo diagnostických udalostiach. Keďže IP samo o sebe nezabezpečuje spoľahlivosť ani spätnú väzbu, ICMP tieto limity rieši doplnkovými správami. ICMP je teda neoddeliteľnou súčasťou protokolu IPv4 – nie je nad ním, ale v rámci neho.

Bez ICMP by sieťová diagnostika ako ping či traceroute vôbec neexistovali. Zariadenia by nevedeli, že cieľ nie je dostupný alebo že paket expiroval po ceste. Preto ICMP predstavuje "hlas siete" – a jeho porozumenie je esenciálne pre každého správcu.

Typy ICMP správ podľa RFC 792

ICMP definuje niekoľko typov správ. Každý typ má svoj Type kód, a niektoré aj Code pre bližšie rozlíšenie dôvodu. Tu sú najdôležitejšie:

Praktický príklad: Ako funguje ping

Keď zadáte ping 8.8.8.8, vaše zariadenie vyšle ICMP Echo Request na danú IP. Ak je cieľ dostupný a reaguje, vráti ICMP Echo Reply. Každý paket obsahuje:

Cisco CLI príklad:
ping 8.8.8.8

Wireshark pri zachytení ICMP paketu zobrazí:

Internet Control Message Protocol
  Type: 8 (Echo (ping) request)
  Code: 0
  Checksum: 0x5db9
  Identifier: 0x0100
  Sequence number: 1

Vysvetlenie: Type 8 označuje požiadavku, Code 0 znamená bežný ping, checksum zabezpečuje integritu, a sequence number sa používa pre sledovanie odpovedí.

Čo je Traceroute a ako používa ICMP

traceroute je diagnostický nástroj, ktorý využíva ICMP na zistenie cesty paketu cez internet. Funguje tak, že postupne zvyšuje TTL (Time to Live):

  1. TTL = 1 → paket dorazí len po prvý router, ten ho zahodí a pošle späť ICMP Time Exceeded
  2. TTL = 2 → druhý router pošle odpoveď, a tak ďalej…

Na konci, ak cieľ odpovie s Echo Reply, traceroute zistí celú cestu až po koncové zariadenie. Výsledok:

traceroute to google.com (142.250.74.206), 30 hops max
1  router.local (192.168.1.1)  1.23 ms
2  isp-gw (10.0.0.1)  5.12 ms
3  ...
10  google (142.250.74.206)  17.45 ms

Bezpečnostné riziká a filtre ICMP

ICMP je užitočný, ale môže byť aj zneužitý. Útočníci môžu napríklad:

Preto sa ICMP často filtroval – niekedy až príliš. Dnes sa odporúča filtrovať rozumne: neblokovať Echo Reply, ale napríklad Redirect alebo Source Quench. Cisco ACL príklad:

access-list 101 deny icmp any any redirect
access-list 101 permit icmp any any echo-reply

Najčastejšie otázky (FAQ)

  1. Čo je ICMP?
    Protokol na odosielanie správ o chybách alebo diagnostike medzi zariadeniami v IPv4 sieti.
  2. Čím sa líši ICMPv4 a ICMPv6?
    ICMPv6 (RFC 4443) obsahuje nové typy správ a zohráva väčšiu rolu – napr. v SLAAC alebo ND.
  3. Je ICMP nebezpečný?
    Sám o sebe nie, ale môže byť zneužitý. Rozumná filtrácia znižuje riziko.
  4. Ako zistím, že je cieľ nedostupný?
    Prijmete správu ICMP Destination Unreachable – podľa kódu identifikujete dôvod.
  5. Na ktorom leveli OSI pracuje ICMP?
    Formálne patrí do sieťovej vrstvy (rovnako ako IP).

Top 5 zaujímavých faktov o ICMP podľa RFC 792

  1. ICMP nie je transportný protokol – nepracuje ako TCP či UDP, ale je "súčasťou" IP.
  2. Niektoré ICMP správy môžu byť v reakcii na iné ICMP správy – to môže viesť k cyklom, ktoré RFC odporúča blokovať.
  3. ICMP pakety môžu byť fragmentované – ak sú väčšie než MTU, aj tieto riadiace správy sa delia.
  4. ICMP má pevne daný formát hlavičky – prvých 4 byty sú vždy Type, Code, Checksum, zvyšok závisí od typu.
  5. ICMP Echo (ping) je najčastejšie používaný nástroj sieťovej diagnostiky – no v niektorých prostrediach býva blokovaný.

Záver

ICMP je základným stavebným kameňom sieťovej komunikácie. Bez neho by nefungoval ping, traceroute, ani mnohé ďalšie nástroje. Pochopenie správ ako Echo, Destination Unreachable či Time Exceeded je kľúčové pre každého sieťového technika. RFC 792 je stále aktuálne a objasňuje, ako tieto mechanizmy pracujú.

Ako začať programovať?

Úvod do programovania pre každého bez prechádzajúcich znalostí.

Stiahnite si náš ebook teraz výnimočne zdarma!!!

Viac informacií preberáme na kurze:

Kurz NA0 - Administrácia LAN/WAN a návrh TCP/IP sietí - základné koncepty

Marián Knězek

 

Súvisiace články: