Interneta vadības ziņojumu protokols (ICMP) ir trešā slāņa (tīkla slāņa) protokols OSI septiņu slāņu modelī. Protokols diagnosticē tīkla savienojamības vai datu pārraides problēmas starp ierīcēm. Tas palīdz, nosūtot, saņemot un apstrādājot ICMP ziņojumus, lai ziņotu par savienojuma problēmām avota tīkla ierīcei.
Tādējādi ICMP protokola galvenais mērķis ir ziņot par kļūdām tīkla slānī. Tomēr ļaunprātīgi dalībnieki var manipulēt ar tā funkcionalitāti, lai uzsāktu tādus uzbrukumus kā izplatītā pakalpojuma atteikuma (DDoS) un nāves zvana uzbrukumi. Šeit jūs uzzināsit par ICMP protokolu, tā lietošanas gadījumu un parametriem, kas ir svarīgi, lai izprastu ICMP ziņojumus.
Kā darbojas ICMP?
Maršrutētāji izmanto ICMP protokolu, lai veiktu tīkla pārvaldību un problēmu diagnostiku. Tas ģenerē un nosūta kļūdu ziņojumus sūtītāja ierīcei, kad tīkls atspējo pakešu piegādi mērķa ierīcei. Šie kļūdu ziņojumi ietver pārsniegto laiku, parametru problēmu, nesasniedzamo galamērķi, tīkla pārslodzi utt.
Piemēram, ja sūtītājs nosūta datus no vienas ierīces uz galamērķa ierīci IP datagrammas veidā, tas pārvietojas caur vairākiem maršrutētājiem vai starpniekierīcēm. Reizēm, pārsūtot šo IPV4 datagrammu, var rasties kļūda. Tādējādi ICMP ziņojumi ir sadalīti divās plašās kategorijās: kļūdu ziņojumi un vaicājuma ziņojumi.
Ziņojumi par kļūdām
Šie ir ziņojumi, ar kuriem maršrutētājs vai starpnieka resursdators var saskarties, apstrādājot datagrammu:
- Pārsniegtais laiks: ICMP paketei ir darbības laiks, kad tas sasniedz 0, maršrutētājs vai resursdators izmet datagrammu un nosūta kļūdas ziņojumu par pārsniegto laiku. Ziņojums tiek nosūtīts arī tad, ja adresāts nesaņem visus datu fragmentus.
- Galamērķis nav sasniedzams: Savienojuma iniciatora ierīce saņem nesasniedzama mērķa kļūdas ziņojumu, ja maršrutētājs vai starpnieka resursdators to nevar piegādāt. Līdz ar to ierīces izmet datagrammu.
- Avots Quench: Ja ierīcēm tīkla pārslodzes dēļ neizdodas piegādāt datagrammu, tās ziņojuma sūtītājam nosūta ICMP "avota dzēšanas ziņojumu". Kļūdas ziņošanas ziņojums pievieno plūsmas kontroli tīkla slānī, informējot avota ierīci par sastrēgumiem ceļā un palēninot datu sūtīšanas procesu.
- Novirzīšana: Maršrutētājs, kas atrodas neoptimālā ceļā, novirza paketi uz maršrutētāju ar optimālu ceļu starp avotu un galamērķi. Tādējādi tas atjaunina avotu par izmaiņām maršrutā.
- Parametru problēma: Avota ierīce saņem šo ziņojumu, ja datagrammas galvenē trūkst kādas vērtības. Piemēram, atšķirība starp aprēķināto kontrolsummu galamērķī no avota ģenerē šo ICMP kļūdas ziņojumu.
Vaicājiet ziņas
Vaicājuma ziņojumi parādās pa pāriem un sniedz konkrētu informāciju no starpierīcēm uz avota ierīci.
- Atbalss pieprasījums un atbalss atbildes ziņojums: Šie ziņojumi palīdz atrisināt tīkla diagnostikas problēmas.
- Laikspiedola pieprasījums un atbilde: Šie laika zīmogu pieprasījumi un atbildes ziņojumi palīdz noteikt ceļojuma laiku starp ierīcēm.
Izpratne par ICMP parametriem
ICMP ziņojumu dati ir iekapsulēti zem IP galvenes, kas nozīmē, ka ICMP datagrammas galvene nāk pēc IPv4/v6 informācijas. ICMP paketes galvenes pirmajā daļā ir parametri, kas palīdz tīkla ierīcēm noteikt kļūdas vai vaicājuma ziņojumu.
Starp pirmajiem 32 bitiem pirmie 8 biti nosaka ziņojuma veidu, nākamie 8 biti nosaka ziņojuma kodu, bet atlikušie biti satur informāciju, kas saistīta ar datu integritāti. Tādējādi trīs informācijas lauki ir: ICMP veidi, ICMP kods un kontrolsumma.
ICMP veidi
Tips nosaka ICMP paketes mērķi. Tas īsi izskaidro, kāpēc avota ierīce saņem šo ziņojumu. Ir 0–255 ICMP ziņojumu veidi, tāpēc katrs veids sniedz atšķirīgu informāciju. Daži svarīgi ICMP veidi ir:
0: Atbalss pieprasījums
3. Galamērķis nav sasniedzams
4: Source Quench
5: novirzīšana
8: Echo Reply
11: Pārsniegts laiks
12: Parametru problēma
30: Traceroute
ICMP kods
ICMP kods sniedz papildu informāciju par ziņojumiem. Piemēram, ICMP tips 3 ar kodu 0-15 norāda, kāpēc galamērķis nav sasniedzams; tas ir, ja kods ir 0, tas ir tāpēc, ka tīkls nav pieejams. Līdzīgi 3. tipa kodam 1 ziņojums norāda, ka resursdators nav sasniedzams.
Turklāt 8. tipa kods 0 un 0. tipa kods 0 apzīmē atbalss pieprasījuma un atbalss atbildes ziņojumus. Tādējādi katrs ziņojuma veids ar vienādu koda vērtību sniedz atšķirīgu tīkla informāciju.
Kontrolsumma
Kontrolsumma ir kļūdu noteikšanas mehānisms, kas nosaka datu integritāti. Kontrolsummas vērtība apzīmē bitus pārraides ziņojumā. Sūtītājs aprēķina un iekļauj datu kontrolsummu, un saņēmējs pārrēķina vērtību un salīdzina to ar sākotnējo, lai noteiktu visas sākotnējā ziņojuma izmaiņas laikā pārnešana.
Otrā galvenes daļa norāda uz baita vērtību, kas ir sākotnējā ziņojuma problēmas cēlonis. Visbeidzot, ICMP paketes beigu daļa ir faktiskā datagramma.
ICMP lietošanas gadījums
Šeit ir daži ICMP protokola piemēri dažādās jomās tīkla pārvaldība un administratīvie pakalpojumi.
Ping
Ping ir komandrindas utilīta, kas paļaujas uz ICMP atbalss pieprasījuma un atbalss atbildes ziņojumiem, lai pārbaudītu tīkla pieejamību un latentumu starp ierīcēm. Lietderība vienkārši nosaka mērķa servera pieejamību, novērtējot kopējo nosūtīto vai saņemto pakešu skaitu un pakešu zuduma procentuālo daudzumu. Tas arī palīdz noteikt kopējo maksimālo pārraides vienības (MTU) lielumu.
Izmantot ping lai noteiktu google.com pieejamību:
Traceroute
Traceroute ir vēl viena komandrindas utilīta, kas izmanto atbalss pieprasījuma un atbalss atbildes ziņojumus ar TTL mainīgo, lai kartētu ceļu starp avota un mērķa ierīcēm. Tas ir arī noderīgi, lai noteiktu atbildes aizkavēšanos un nodrošina precizitāti, vaicājot katru lēcienu vairākas reizes.
Kā ICMP darbojas bez porta?
No iepriekš minētā skaidrojuma ICMP ir bezsavienojuma protokols, kas datus nosūta neatkarīgi kā datagrammu, un tā galvene parādās pēc IPv4 informācijas. Tomēr jūs varat arī pamanīt, ka nav porta numura, kas rada jautājumu par to, kā ierīces saņem ICMP datus vai uzzina par jebkādu savienojumu?
Atbilde ir diezgan vienkārša. ICMP protokols tika izstrādāts, lai darbotos OSI modeļa tīkla slānī un sazinātos starp maršrutētājiem un resursdatoriem, lai kopīgotu informāciju. Portu numuri ir daļa no transporta slāņa, un ICMP nav ne TCP, ne UDP protokols. Visbeidzot, ICMP tipa un koda kombinācija palīdz ierīcēm noteikt ziņojumu un iegūt visu informāciju par tīklu.
Kļūdu un plūsmas kontrole ar ICMP
Iepriekš sniegtā informācija par ICMP protokolu parāda, kā tas nodrošina plūsmas kontroli un datu kļūdu kontroli OSI modeļa trešajā slānī. Protokola ziņojumi un parametri ICMP pakešu galvenes pirmajā daļā aptver visus tīkla pārvaldības un diagnostikas jautājumu aspektus.
Ir svarīgi zināt, ka nepareizi ugunsmūra iestatījumi var ļaut uzbrucējiem veikt ping slaucīšanu pa organizācijas tīklu un padarīt to pakļautu DDOS, nāves ping un ICMP plūdu uzbrukumiem. Tu vari izmantot Wireshark, lai uztvertu paketes no interneta un veiciet detalizētu ICMP pakešu analīzi labākai izpratnei.
5 veidi, kā novērst kļūdu "Trūkst viena vai vairāku tīkla protokolu" operētājsistēmā Windows 10
Lasiet Tālāk
Saistītās tēmas
- Paskaidrota tehnoloģija
- Datoru tīkli
Par autoru
Rumaisa ir MUO ārštata rakstniece. Viņa ir nēsājusi daudzas cepures, sākot no matemātiķa līdz informācijas drošības entuziastei, un tagad strādā par SOC analītiķi. Viņas interesēs ir lasīt un rakstīt par jaunām tehnoloģijām, Linux izplatīšanu un jebko, kas saistīts ar informācijas drošību.
Abonējiet mūsu biļetenu
Pievienojieties mūsu informatīvajam izdevumam, lai saņemtu tehniskos padomus, pārskatus, bezmaksas e-grāmatas un ekskluzīvus piedāvājumus!
Noklikšķiniet šeit, lai abonētu