ICMP (Protocolo de mensajes de control de Internet) se encuentra en la capa de red del modelo OSI (o justo encima de ella en la capa de Internet, como algunos argumentan), y es una parte integral de Internet Conjunto de protocolos (comúnmente conocido como TCP / IP).
A ICMP se le asigna el Protocolo número 1 en el conjunto de IP según IANA.org.
Diseñado para actuar como informe de errores y servicio de consulta, juega un papel crucial en el servicio de datagramas de host a host en la comunicación de red.
Es la parte del servicio IP que actúa como el sistema de retroalimentación en la comunicación IP de red, asegurándose de que Los paquetes que no se pueden entregar se informan al host emisor, como el enrutador o la puerta de enlace.
Cualquier dispositivo de red IP puede enviar datagramas ICMP, incluidas tarjetas de interfaz de red y otros dispositivos que se utilizan comúnmente en su entorno.
¿Qué es ICMP?
El papel de ICMP en la comunicación de red se puede comparar con un equipo que está armando un automobi utilizando piezas enviadas por el fabricante.
El fabricante está enviando las piezas una por una, asumiendo que están siendo recibidas por el equipo de ensamblaje.
Ocasionalmente, sin embargo, una pieza no llega según lo programado, o las piezas se ralentizan a través de su método de entrega habitual y existe una forma más rápida de hacer que las piezas se ensamblen.
El equipo de ensamblaje necesita una forma de notificar al fabricante para que reenvíe la pieza que falta o para enviar las piezas a través de un remitente o una ruta diferente y más rápida.
ICMP desempeña este papel de mensajero que transmite información del receptor al remitente.
Este protocolo es bastante complejo. No solo informa paquetes que no se pueden entregar y hosts inalcanzables, sino que también envía mensajes de redirección, mensajes de respuesta de eco y eco y otros que se describen a continuación.
(Los mensajes de respuesta de eco / eco son utilizados por el conocido comando PING, que permite a un usuario enviar un eco a un host receptor, que envía una respuesta de eco si se recibe eco).
Los mensajes ICMP proporcionan al sistema una forma de notificar al host de origen si el host remoto no está recibir los paquetes transmitidos.
ICMP no ayuda a que IP sea más confiable y no recibe ni envía datos reales. Simplemente existe como un sistema de retroalimentación, un recurso para identificar problemas con paquetes perdidos y enrutamiento de datos roto.
Uno de los mensajes más conocidos y útiles en un datagrama ICMP es el mensaje Destino inalcanzable.
Los mensajes de destino inalcanzable se generan por varias razones, incluida la imposibilidad de llegar a una red, un host, un puerto o un protocolo.
Un enrutador envía estos mensajes de destino inalcanzable al host, que luego generalmente lo envía a la aplicación que generó el paquete original.
Los mensajes de error le permiten a la aplicación que intente nuevamente y, si es necesario, la aplicación host puede generar un mensaje de error para el usuario de la aplicación , notificándoles sobre problemas de conectividad de red.
Es importante saber que aunque los mensajes de destino inalcanzable son los que las personas conocer mejor a través de la utilidad PING, no son todo lo que hay en ICMP.
Otros mensajes importantes incluyen e el mensaje Redirect, que utiliza una puerta de enlace para informar al host que debe enviar tráfico a un enrutador diferente.
Un enrutador usa el tiempo excedido para indicarle al host que un paquete ha excedido su tiempo de vida ( TTL) y ha sido descartado; cuando un host comienza a recibir paquetes de tiempo excedido, puede ser una indicación de que existe un bucle de retroalimentación en algún lugar aguas abajo.
Los mensajes Source Quench se envían desde un enrutador a un host, haciéndole saber que su capacidad de almacenamiento en búfer está llena y pausar brevemente las transmisiones para permitir que se pongan al día.
Otros tipos de mensajes incluyen Problema de parámetros, Solicitud de máscara de dirección & Responder y Marca de tiempo, entre otros.
ICMP no enviará mensajes sobre mensajes ICMP; si esto sucediera, crearía un ciclo de retroalimentación: un mensaje ICMP devuelto generaría un mensaje ICMP al otro lado, lo que generaría otro mensaje, y así sucesivamente, creando una tormenta de paquetes ICMP que inundaría rápidamente una red .
Por esta misma razón, ICMP no responderá a direcciones de difusión o multidifusión. A diferencia de otros protocolos IP como TCP y UDP, ICMP no intercambia datos entre hosts.
Como regla general, los usuarios finales no interactúan con este protocolo excepto por un número limitado de herramientas de diagnóstico, como ping y traceroute, que se utiliza para solucionar problemas de conexiones de red e Internet.
ICMP se puede explotar para atacar computadoras con lo que se conoce como «Ping of Death», que es un ciberataque común que puede causar problemas de denegación de servicio en sus redes.
Un paquete IP diseñado para desbordar el búfer de una computadora de destino se envía en un intento de bloquear su sistema.
Otro ataque consiste en una avalancha de solicitudes de ping que impiden que el tráfico normal llegue a la computadora objetivo.
Estos ataques son relativamente simples de prevenir mediante la implementación de verificaciones de fragmentos de IP en el proceso de reensamblaje .
Los mensajes ICMP son datagramas encapsulados dentro de paquetes IP y los utilizan los protocolos IPv4 (ICMPv4) e IPv6 (ICMPv6).
Estos paquetes comienzan con un encabezado IP, seguido de el encabezado ICMP, el tipo y código, la suma de comprobación y los datos.
Los datos dependen de los campos de tipo y código, que identifican el mensaje ICMP que se envía.
Uno de los más importantes ICMP, que forma parte del conjunto de protocolos de Internet, tiene un papel crucial en la comunicación de la red IP.
Garantiza que un host transmisor sepa si sus paquetes no están siendo recibidos por el host remoto, proporcionando información crucial sobre problemas de red como además de ayudar a los hosts a transmitir datos de manera más eficiente.
Los técnicos y administradores de red también lo usan como un diagnóstico herramienta stic para ayudar a identificar puntos de falla en la red.
Una herramienta en última instancia indispensable en nuestro flujo constante e interminable de miles de millones y miles de millones de paquetes IP enviados alrededor del mundo cada segundo de cada día.