ICMP (Internet Control Message Protocol) bevindt zich op de netwerklaag van het OSI-model (of net erboven in de internetlaag, zoals sommigen beweren), en is een integraal onderdeel van internet Protocolsuite (gewoonlijk TCP / IP genoemd).
ICMP krijgt protocolnummer 1 toegewezen in de IP-suite volgens IANA.org.
Ontworpen om te fungeren als foutrapportage en query-service, het speelt een cruciale rol in de host-to-host datagramservice in netwerkcommunicatie.
Het is het deel van de IP-service dat fungeert als het feedbacksysteem in netwerk-IP-communicatie en ervoor zorgt dat onbestelbare pakketten worden gerapporteerd aan de verzendende host, zoals de router of de gateway.
Elk IP-netwerkapparaat kan ICMP-datagrammen verzenden, inclusief netwerkinterfacekaarten en andere apparaten die vaak in uw omgeving worden gebruikt.
Wat is ICMP?
De rol van ICMP in netwerkcommunicatie kan worden vergeleken met een team dat een automobi bestand met onderdelen die door de fabrikant worden verzonden.
De fabrikant verzendt de onderdelen één voor één, ervan uitgaande dat ze worden ontvangen door de montageploeg.
Af en toe kan een onderdeel echter arriveert niet zoals gepland, of onderdelen worden vertraagd via hun gebruikelijke leveringsmethode en er is een snellere manier om onderdelen voor montage te krijgen.
De montageploeg heeft een manier nodig om de fabrikant op de hoogte te stellen om het ontbrekende onderdeel opnieuw te verzenden of om de onderdelen via een andere, snellere verzender of route te verzenden.
ICMP speelt deze rol van de boodschapper die informatie doorgeeft van de ontvanger naar de afzender.
Dit protocol is een redelijk complex. Het rapporteert niet alleen onbestelbare pakketten en onbereikbare hosts, het verstuurt ook omleidingsberichten, echo- en echo-antwoordberichten en andere die hieronder worden besproken.
(Echo / echo-antwoordberichten worden gebruikt door het bekende PING-commando, waarmee een gebruiker een echo naar een ontvangende host kan sturen, die een echo-antwoord stuurt als een echo wordt ontvangen).
ICMP-berichten bieden het systeem een manier om de bronhost te informeren als de externe host dat niet is het ontvangen van de verzonden pakketten.
ICMP helpt IP niet om betrouwbaarder te zijn en het ontvangt of verzendt geen feitelijke gegevens. Het bestaat gewoon als een feedbacksysteem, een hulpmiddel om problemen met verloren pakketten en defecte gegevensroutering te identificeren.
Een van de bekendste en nuttigste berichten in een ICMP-datagram is het bericht Destination Unreachable.
Destination Unreachable-berichten worden om verschillende redenen gegenereerd, waaronder het niet kunnen bereiken van een netwerk, een host, een poort of een protocol.
Een router stuurt deze Destination Unreachable-berichten terug naar de host, die het dan meestal naar de applicatie stuurt die het originele pakket heeft gegenereerd.
De foutmeldingen laten de applicatie weten om het opnieuw te proberen en, indien nodig, kan de hostapplicatie een foutmelding genereren voor de gebruiker van de applicatie door hen op de hoogte te stellen van netwerkconnectiviteitsproblemen.
Het is belangrijk om te weten dat, hoewel Destination Unreachable berichten zijn die mensen weet het beste via het PING-hulpprogramma, ze zijn niet alles wat er is voor ICMP.
Andere belangrijke berichten zijn e het Redirect-bericht, dat een gateway gebruikt om de host te laten weten dat het verkeer naar een andere router stuurt.
Time Exceeded wordt door een router gebruikt om de host te laten weten dat een pakket zijn Time to Live ( TTL) en is verwijderd; wanneer een host Time Exceeded-pakketten begint te ontvangen, kan dit een indicatie zijn dat er ergens stroomafwaarts een feedbacklus bestaat.
Source Quench-berichten worden van een router naar een host gestuurd, om deze te laten weten dat de buffercapaciteit vol is en om transmissies kort te pauzeren om het in te halen.
Andere soorten berichten zijn onder andere Parameterprobleem, Adresmaskerverzoek & Antwoord en Tijdstempel.
ICMP zal geen berichten over ICMP-berichten verzenden; als dit zou gebeuren, zou het een feedbacklus creëren – een geretourneerd ICMP-bericht zou een ICMP-bericht naar de andere kant genereren, dat een ander bericht zou genereren, enzovoort, waardoor een storm van ICMP-pakketten zou ontstaan die snel een netwerk zouden overspoelen .
Om dezelfde reden zal ICMP niet antwoorden op uitzend- of multicast-adressen. In tegenstelling tot andere IP-protocollen zoals TCP en UDP, wisselt ICMP geen gegevens uit tussen hosts.
Als algemene regel geldt dat eindgebruikers geen interactie hebben met dit protocol, behalve met een beperkt aantal diagnostische tools, zoals ping en traceroute, gebruikt om netwerk- en internetverbindingen op te lossen.
ICMP kan worden misbruikt om computers aan te vallen met wat bekend staat als de “Ping of Death”, een veel voorkomende cyberaanval die Denial of Service-problemen kan veroorzaken in uw netwerken.
Een IP-pakket dat is ontworpen om de buffer van een doelcomputer te overlopen, wordt verzonden in een poging zijn systeem te laten crashen.
Een andere aanval bestaat uit een stortvloed aan ping-verzoeken die verhinderen dat normaal verkeer de beoogde computer bereikt.
Deze aanvallen zijn relatief eenvoudig te voorkomen door controles van IP-fragmenten uit te voeren tijdens het opnieuw samenstellen. .
ICMP-berichten zijn datagrammen die zijn ingekapseld in IP-pakketten en worden gebruikt door zowel IPv4- (ICMPv4) als IPv6- (ICMPv6) -protocollen.
Deze pakketten beginnen met een IP-header, gevolgd door de ICMP-header, type en code, checksum en gegevens.
De gegevens zijn afhankelijk van het type en de codevelden die het ICMP-bericht identificeren dat wordt verzonden.
Een van de belangrijkste delen van de Internet Protocol-suite, speelt ICMP een cruciale rol in IP-netwerkcommunicatie.
Het zorgt ervoor dat een verzendende host weet of zijn pakketten niet worden ontvangen door de externe host, en biedt cruciale informatie over netwerkproblemen, zoals en helpt hosts om gegevens efficiënter te verzenden.
Netwerktechnici en beheerders gebruiken het ook als een diagnose stic tool om faalpunten in het netwerk te identificeren.
Een uiteindelijk onmisbaar hulpmiddel in onze constante, eindeloze stroom van miljarden en miljarden IP-pakketten die elke seconde van de dag de wereld rond worden gestuurd.