Internet Control Message Protocol ICMP (Internet Control Message Protocol) on veateate mehhanism, oluline alamprotokoll TCP/IP protokolli klastris, mida tavaliselt kasutavad IP-kihi või kõrgema kihi protokollid (TCP või UDP), kuulub võrgukihi protokolli, mida kasutatakse peamiselt kontrollsõnumite edastamiseks IP hostide ja ruuterite vahel, aruandluseks, kas host on kättesaadav, kas marsruut on saadaval jne. Kuigi need juhtimissõnumid ei edasta kasutajaandmeid, mängivad need olulist rolli erinevate võrguandmete kogumisel, erinevate võrgurikete diagnoosimisel ja tõrkeotsingul ning kasutajaandmete edastamisel.
Miks sul on ICMP-d vaja?
Andmeedastuse protsessis pakub IP parimat teenust, mis tähendab oma parima pingutust andmepakettide saatmiseks sihtaadressile. See ei kontrolli, kas sihthost saab paketi kätte või mitte, ning ei saa teha voojuhtimist ega veakontrolli. Seetõttu on pakettide edastamise protsessis vältimatu mitmesugune viga. ICMP loodi selleks, et edastada IP-pakette tõhusamalt ja suurendada pakettide edukuse võimalusi. ICMP puhul, kui võrgus tekib probleem pakettide edastusega, teatab host või seade veaolukorrast ülemise kihi protokollile ja annab aruande ebanormaalse olukorra kohta, et ülemise kihi protokoll saaks hinnata suhtluse korrektsust omaenda liiklus- ja veakontrolli veakontrolli programmi kaudu, et tagada teenuse kvaliteet.
Millised on ICMP rakendusstsenaariumid?
Veateated
ICMP veateated teatavad võrguvigadest, nagu sihtkoha kättesaamatus, ajapiirangud või segmenteerimisprobleemid. Need sõnumid on eriti olulised User Datagram Protocoli (UDP) puhul, mis kasutab ühenduseta suhtlusmudelit.
UDP ei paku usaldusväärset ja korrapärast pakettide edastust. UDP pakettide saatmisel võivad paketid kaduma minna või ebaõnnestuda, näiteks kontrollsumma vead edastuse ajal. Kui see juhtub, saadab vastuvõtja saatjale ICMP veateate, et teavitada probleemist.
Diagnoosi
Võrgudiagnostika jaoks saab kasutada ICMP-d. Seda kasutatakse kõige sagedamini pingi ja traceroute käskude jaoks.
Pingikäsk testib võrguseadmete ligipääsetavust, saates sihtseadmele ICMP kaja päringupakette. Kui seade on ligipääsetav, tagastatakse ICMP kaja vastus. See kontrollib usaldusväärselt võrgu latentsust ja tagab seadme kättesaadavuse.
Traceroute käsk jälgib paketti teekonda allikast sihtkohta. Selleks saadab käsk echo päringu ja echo vastuse sõnumi soovitud sihtkohta.
Echo-päringutel on eluajaline (TTL) väärtus, mis väheneb iga ruuteri kohta, millest pakett läbib, ühe võrra. Kui pakett jõuab null TTL-iga ruuterisse, saadab ruuter ICMP sõnumi allikaotsa.
Sõnum sisaldab infot paketi marsruudi kohta. Traceroute näitab täpset paketi trajektoori ja saab anda infot sinu võrgu jõudluse kohta.
Küberjulgeolek
ICMP-d saab kasutada volitamata võrguliikluse tuvastamiseks ja lubada ainult legitiimsel liiklusel läbi võrgu. Tulemüürid kasutavad ICMP-d, et lubada või blokeerida teatud tüüpi liiklust. Võrguadministraatorid kasutavad ka ICMP jälgimistööriistu, et jälgida võrguseadmete olekut ja ühenduvust ning tuvastada tundmatuid seadmeid.
Seda saab kasutada ka ebatavaliste liiklusmustrite märkamiseks, mis võivad viidata volitamata tegevusele.
ICMP protokolli sõnumivorming
ICMP paketiformaat on joonisel näidatud ning iga ICMP sõnum sisaldab paketi täielikku IP-päist, mis ICMP sõnumi algatas, ning ICMP pakett on kapseldatud IP-paketi sees osana IP-paketist. ICMP päises sisalduvad kolm fikseeritud välja on peamine alus, miks lähteseade määrab esineva vea tüübi.
Tüübiväli näitab ICMP sõnumi tüüpi; Koodiväli esindab ICMP sõnumitüübi segmendi alamtüüpi; Kontrollsumma väli esindab ICMP pakettide kontrollsummat.
Erinevat tüüpi ICMP pakette jagunevad kaheks tüübiks: veapaketid ja päringupaketid, nagu on näidatud ICMP pakettide klassifikatsioonitabelis.
ICMP pakettide klassifikatsioon
Tüüp | | | | 0-Echo vastus | 0 | Echo vastab sõnumile | Küsida | 3- Eesmärk on saavutamatu | 0 | Sihtvõrk ei jõua paketini | Viga | 1 | Sihthost ei saa paketti kätte | Viga | 2 | Sihtleping ei saa jõuda paketini | Viga | 3 | Sihtport ei saa paketti jõuda | Viga | 4 | Segmentimine ja DF lipusõnumid | Viga | 5 | Lähtemarsruudi ebaõnnestunud paketid | Viga | 6 | Tundmatud sihtvõrgu paketid | Viga | 7 | Tundmatud sihthosti paketid | Viga | 8 | Lähtehost isoleerib pakette | Viga | 9 | võrgupaketid, millele ligipääs on keelatud | Viga | 10 | Hostisõnumid, millele on keelatud ligi pääseda | Viga | 11 | Paketid ei ole kättesaadavad konkreetse TOS-võrgu jaoks | Viga | 12 | Paketid ei ole kättesaadavad konkreetsele TOS-hostile | Viga | 13 | Paketid summutatakse võrguliikluse filtreerimise tõttu | Viga | 14 | Hosti volituste ületamise sõnum | Viga | 15 | Prioriteedi lõpetamise tõhus sõnum | Viga | 5- Suunamine ümber | 0 | Võrgupakettide ümbersuunamine | Viga | 1 | Suuna hostpaketid | Viga | 2 | TOS-põhised võrgu ümbersuunamispaketid | Viga | 3 | TOS-põhised hosti ümbersuunamispaketid | Viga | 8- Kaja palve | 0 | Echo pärib pakette | Küsida | 9- Ruuteri teade | 0 | Marsruutimise teadete sõnumid | Küsida | 10 - Ruuteri päring | 0 | Avasta/vali/taotle ruuterite pakette | Küsida | 11 - ICMP timeout | 0 | TTL ajapiirangu sõnum | Viga | 1 | Ajapiirangute pakettide jaotus ja ümberkorraldamine | Viga | 12- Parameetrite probleemid | 0 | IP-aruande esimene parameetri veateate | Viga | 1 | Puuduvad vajalikud valikupaketid | Viga | 2 | Toetamata pikkusega paketid | Viga | 13- Ajatempli taotlus | 0 | Ajatemplite taotluspaketid | Küsida | 14-ajatempliga vastus | 0 | Ajatempliga vastusepaketid | Küsida | 15- Teabepäring | 0 | Infopäringu paketid | Küsida | 16- Informatsioonivastus | 0 | Sõnumi vastuspaketid | Küsida |
Erinevus ICMP ja TCP vahel
TCP on ühenduspõhine protokoll usaldusväärseks, veakontrollitud andmeedastuseks. Seda kasutatakse sageli veebisirvimiseks, e-posti jaoks, kaugsisselogimiseks ja failiedastusrakendusteks. TCP nõuab käepigistust, mis on sõnumite jada, mis loob usalduse ja autentimise saatja ja saaja vahel. TCP tagab sõnumi edastamise.
Vastupidiselt sellele on Internet Control Message Protocol (ICMP) ühenduseta protokoll. See ei garanteeri sõnumi kohaletoimetamist. Kuna ICMP-d kasutatakse ainult vearaporteerimiseks, on ICMP sõnumid samuti väiksemad kui TCP paketid.
ICMP ja TCP kasutatakse koos TCP edastuse rikke põhjuse määramiseks. |