Internet Control Message Protocol (ICMP) je protokol tretje plasti (omrežna plast) v sedemplastnem modelu OSI. Protokol diagnosticira težave z omrežno povezljivostjo ali prenosom podatkov med napravami. Pomaga s pošiljanjem, prejemanjem in obdelavo sporočil ICMP za poročanje o težavah s povezljivostjo izvorni omrežni napravi.

Zato je glavni namen protokola ICMP poročanje o napakah na omrežni plasti. Vendar pa lahko zlonamerni akterji manipulirajo z njegovo funkcionalnostjo, da sprožijo napade, kot sta porazdeljeno zavrnitev storitve (DDoS) in napadi Ping of Death. Tukaj boste izvedeli o protokolu ICMP, njegovem primeru uporabe in parametrih, ki so pomembni za razumevanje sporočil ICMP.

Kako deluje ICMP?

Usmerjevalniki uporabljajo protokol ICMP za upravljanje omrežja in diagnozo težav. Generira in pošilja sporočila o napakah pošiljateljski napravi, ko omrežje onemogoči dostavo paketov ciljni napravi. Ta sporočila o napakah vključujejo prekoračen čas, težavo s parametri, cilj nedosegljiv, preobremenjenost omrežja itd.

instagram viewer

Na primer, ko pošiljatelj pošlje podatke iz ene naprave ciljni napravi v obliki datagrama IP, potuje skozi več usmerjevalnikov ali vmesnih naprav. Včasih lahko pride do napake pri posredovanju tega datagrama IPV4. Zato so sporočila ICMP razdeljena v dve široki kategoriji: sporočila o napakah in sporočila poizvedbe.

Sporočila za poročanje o napakah

To so sporočila, s katerimi se lahko usmerjevalnik ali vmesni gostitelj sooči pri obdelavi datagramov:

  1. Presežen čas: Paket ICMP ima parameter časa do življenja, da ko doseže 0, usmerjevalnik ali gostitelj zavrže datagram in pošlje sporočilo o napaki prekoračitve časa. Sporočilo se pošlje tudi, če cilj ne prejme vseh fragmentov podatkov.
  2. Cilj nedosegljiv: Naprava, ki sproži povezavo, prejme sporočilo o napaki nedosegljivega cilja, ko ga usmerjevalnik ali vmesni gostitelj ne dostavi. Posledično naprave zavržejo datagram.
  3. Source Quench: Ko naprave ne uspejo dostaviti datagrama zaradi prezasedenosti omrežja, pošljejo ICMP "sporočilo za ugasnitev vira" pošiljatelju sporočila. Sporočilo o poročanju o napakah doda nadzor pretoka v omrežni plasti tako, da obvesti izvorno napravo o prezasedenosti poti in upočasni postopek pošiljanja podatkov.
  4. preusmeritev: Usmerjevalnik na neoptimalni poti preusmeri paket na usmerjevalnik z optimalno potjo med izvorom in ciljem. Tako posodablja vir o spremembi svoje poti.
  5. Težava s parametrom: Izvorna naprava prejme to sporočilo, ko v glavi datagrama manjka kakšna vrednost. Na primer, razlika v izračunani kontrolni vsoti na cilju od vira ustvari to sporočilo o napaki ICMP.

Poizvedbena sporočila

Sporočila poizvedbe se pojavljajo v parih in zagotavljajo specifične informacije od vmesnih naprav do izvorne naprave.

  1. Sporočilo odmevne zahteve in odmevnega odgovora: Ta sporočila pomagajo rešiti težave pri diagnostiki omrežja.
  2. Zahteva za časovni žig in odgovor: Te zahteve za časovni žig in odgovorna sporočila pomagajo določiti čas povratne vožnje med napravama.

Razumevanje parametrov ICMP

Podatki sporočil ICMP so zajeti pod glavo IP, kar pomeni, da je glava datagrama ICMP za informacijo IPv4/v6. Prvi del glave paketa ICMP vsebuje parametre, ki omrežnim napravam pomagajo določiti sporočilo o napaki ali poizvedbi.

Med prvimi 32 biti prvih 8 bitov določa vrsto sporočila, naslednjih 8 bitov določa kodo sporočila, preostali biti pa vsebujejo informacije, povezane z integriteto podatkov. Zato so tri informativna polja: vrste ICMP, koda ICMP in kontrolna vsota.

Vrste ICMP

Tip določa namen paketa ICMP. Ker na kratko pojasnjuje, zakaj izvorna naprava prejema to sporočilo. Obstaja 0-255 vrst sporočil ICMP, tako da vsaka vrsta zagotavlja različne informacije. Nekatere pomembne vrste ICMP so:

0: Zahteva za odmev

3: Cilj nedosegljiv

4: Ugasnitev vira

5: Preusmeritev

8: Odmev odgovor

11: Čas je presežen

12: Težava s parametri

30: Traceroute

Koda ICMP

Koda ICMP zagotavlja dodatne informacije o sporočilih. Na primer, tip ICMP 3 s kodo 0-15 določa, zakaj je cilj nedosegljiv; če je koda 0, je to zato, ker omrežje ni na voljo. Podobno za kodo 1 tipa 3 sporočilo določa, da je gostitelj nedosegljiv.

Poleg tega koda tipa 8 0 in koda tipa 0 0 predstavljata sporočila z odmevnim zahtevkom in odmevnim odgovorom. Zato vsaka vrsta sporočila z enako vrednostjo kode daje različne informacije o omrežju.

kontrolna vsota

Kontrolna vsota je mehanizem za odkrivanje napak, ki določa celovitost podatkov. Vrednost kontrolne vsote predstavlja bite v sporočilu za prenos. Pošiljatelj izračuna in vključi kontrolno vsoto podatkov, prejemnik pa ponovno izračuna vrednost in ga primerja z izvirnim, da ugotovi morebitne spremembe izvirnega sporočila med prenos.

Drugi del glave kaže na bajtno vrednost, ki je vzrok za težavo v izvirnem sporočilu. Končni del paketa ICMP je dejanski datagram.

Primer uporabe ICMP

Tukaj je nekaj delovnih primerov protokola ICMP v različnih upravljanje omrežja in administrativni pripomočki.

Ping

Ping je pripomoček ukazne vrstice, ki se zanaša na sporočila ICMP echo-request in echo-reply za testiranje razpoložljivosti omrežja in zakasnitve med napravami. Pripomoček preprosto določi razpoložljivost ciljnega strežnika z oceno celotnega poslanega ali prejetega paketa in odstotka izgube paketa. Prav tako pomaga določiti skupno največjo velikost enote prenosa (MTU).

Uporaba ping za določitev razpoložljivosti google.com:

Traceroute

Traceroute je še en pripomoček ukazne vrstice, ki uporablja sporočila echo-request in echo-reply s spremenljivko TTL za preslikavo poti med izvorno in ciljno napravo. Uporaben je tudi pri določanju zamud pri odzivu in zagotavlja natančnost z večkratnim poizvedovanjem po vsakem skoku.

Kako ICMP deluje brez vrat?

Glede na zgornjo razlago je ICMP protokol brez povezave, ki pošilja podatke neodvisno kot datagram, njegova glava pa je prikazana za podrobnostmi IPv4. Vendar pa lahko opazite tudi odsotnost številke vrat, ki postavlja vprašanje, kako naprave prejmejo podatke ICMP ali zaznajo kakršno koli povezavo?

Odgovor je precej preprost. Protokol ICMP je bil zasnovan tako, da deluje na omrežni plasti modela OSI in komunicira med usmerjevalniki in gostitelji za izmenjavo informacij. Številke vrat so del transportne plasti, ICMP pa ni ne protokol TCP ne UDP. Nazadnje, kombinacija vrste ICMP in kode pomaga napravam določiti sporočilo in pridobiti vse informacije o omrežju.

Nadzor napak in pretoka z ICMP

Zgornje podrobnosti o protokolu ICMP kažejo, kako zagotavlja nadzor pretoka in nadzor napak podatkov na nivoju 3 modela OSI. Sporočila in parametri protokola v prvem delu glave paketa ICMP pokrivajo vse vidike upravljanja omrežja in težav pri diagnostiki.

Pomembno je vedeti, da lahko neustrezne nastavitve požarnega zidu napadalcem omogočijo, da ping počistijo omrežje organizacije in jo naredijo nagnjeno k napadom DDOS, ping smrti in napadom poplav ICMP. Lahko uporabiš Wireshark za zajemanje paketov iz interneta in opravite podrobno analizo paketov ICMP za boljše razumevanje.

5 načinov za odpravo napake "Eden ali več omrežnih protokolov manjka" v sistemu Windows 10

Preberite Naprej

DelitiTweetDelitiE-naslov

Povezane teme

  • Razložena tehnologija
  • Računalniška omrežja

O avtorju

Rumaisa Niazi (24 objavljenih člankov)

Rumaisa je svobodna pisateljica pri MUO. Nosila je veliko klobukov, od matematike do navdušenca za informacijsko varnost, zdaj pa dela kot analitik SOC. Njena zanimanja vključujejo branje in pisanje o novih tehnologijah, distribucijah Linuxa in karkoli v zvezi z informacijsko varnostjo.

Več od Rumaisa Niazi

Naročite se na naše novice

Pridružite se našemu glasilu za tehnične nasvete, ocene, brezplačne e-knjige in ekskluzivne ponudbe!

Kliknite tukaj, da se naročite