Hvad er ICMP ?
ICMP eller Internet Control Message Protocol er Internet eller Netværk lagprotokol. Generelt bruges det til at kontrollere tilgængeligheden af en vært eller router i et netværk.
Hvem bruger ICMP?
Ping eller traceroute bruger ICMP som indre protokol. Ping bruger ICMP-ekko-anmodning og ICMP-ekko-svarmeddelelser for at kontrollere, om destinationsværten kan nås eller ej.
Typer af ICMP-pakke?
Generelt to typer ICMP-pakke
- ICMP ekko anmodningsmeddelelser.
- ICMP ekko-svarmeddelelser.
Sådan får du ICMP-pakke i Wireshark?
Trin 1: Vi kan bruge ping-værktøj til at få ICMP-anmodning og svar.
Trin2: Åbn kommandolinje eller terminal i henholdsvis Windows eller Linux.
Trin 3: Kør Wireshark.
Trin4: Kør under kommandoen
ping www.google.comSørg for, at du har internetforbindelse, eller at ping mislykkesJ. Her er snapshotet for vellykket ping til Google. Vi kan se 0% tab. Det betyder ICMP-anmodningspakker = ICMP-svarpakker.
Her er de flere detaljer:
I dette tilfælde ping vi til Googles websted. I stedet kan vi også ping til ip-adresse.
ELLER
ping 192.168.1.1 [Dette er min router-IP-adresse]
Her er vellykket ping til min router
Trin 5: Stop Wireshark og sæt "ICMP" som filter i Wireshark.
Analyse af ICMP:
Lad os kontrollere, hvad der sker i Wireshark, når vi pinger til Google eller 192.168.1.1.
Her er ICMP-anmodning og svarpakker til Google Ping.
Bemærk: Vi er nødt til at sætte filteret 'icmp', da vi kun er interesseret i ICMP-pakker.
Antal ICMP-anmodninger: Fra capture kan vi se, at der er 4 ICMP-anmodningspakker.
Kontroller de markerede pakker.
Antal ICMP-svar: Fra capture kan vi se, at der er 4 ICMP-svarpakker.
Kontroller de markerede pakker.
ICMP-anmodning:
Vælg nu ICMP-anmodningspakke i Wireshark og se på IPv4-laget.
Da dette er ICMP-anmodningspakke, så vi kan se kilde-IP som mit system-IP-adresse og destinations-IP som Googles ene IP-adresse. Også IP-laget nævnte protokollen som ICMP.
Her er skærmbilledet
Vælg nu den samme pakke til den samme pakke ICMP-del i Wireshark.
Vi kan se vigtige felter nedenfor:
Type: 8 [Betyder sin ICMP-anmodning]Kode: 0 [Altid 0 for ICMP-pakker]
Identifikator (BE): 1
Identifikator (LE): 256
Sekvensnummer (BE): 6
Sekvensnummer (LE): 1536
* BE -> Big Endian
* LE -> Lille Endian
Data -> Data til stede i ICMP-pakke.
Her er skærmbilledet
ICMP-svar:
Vælg nu ICMP-svarpakke i Wireshark, og se på IPv4-laget.
Da dette er ICMP-svarpakke, så kan vi se destinations-IP som min system-IP-adresse og kilde-IP som Googles ene IP-adresse. Også IP-laget nævnte protokollen som ICMP.
Her er skærmbilledet
Vælg nu den samme pakke for den samme pakke i Wireshark.
Vi kan se vigtige felter nedenfor:
Type: 0 [Betyder dets ICMP-svar]Kode: 0 [Altid 0 for ICMP-pakker]
Identifikator (BE): 1
Identifikator (LE): 256
Sekvensnummer (BE): 6
Sekvensnummer (LE): 1536
* BE -> Big Endian
* LE -> Lille Endian
Data -> Data til stede i ICMP-pakke.
Her er skærmbilledet
Lad os nu se ICMP-anmodning og ICMP-svar side om side på et billede.
* Rød betyder, at det er anderledes
* Grøn betyder, at det er det samme.
Særlig observation:
Lad os se på Identifikation felt inde i IPv4 .Vi vil se noget interessant.
Hvad sker der, hvis IP-adresse ikke kan rekvireres:
Lad os pinge en ip-adresse, som ikke er tilgængelig. Så vi ser nedenfor output.
Her er øjebliksbillede af Wireshark
Det betyder, at vi ikke modtog noget ICMP-svar på nogen ICMP-anmodning.
Enkel konklusion:
Så hvis vi vil kontrollere, at enhver IP eller et websted kan nås eller ej, kan vi bruge det ping eller traceroute som internt bruger ICMP-protokol.
Hurtig reference:
Hvis du er interesseret i at kende andre typer ICMP, skal du følge nedenstående link
https: // da.wikipedia.org / wiki / Internet_Control_Message_Protocol