ICMP (Internet Control Message Protocol, protocolo de mensajes de control de Internet) es el protocolo que usan los equipos y los routers para avisar cuando algo sale mal con un paquete y para hacer pruebas de conectividad.
Es como el aviso que deja el cartero cuando no pudo entregar una carta: «dirección inexistente», «nadie atendió», «el camino es demasiado largo». No lleva tus datos; lleva información sobre la entrega.
En términos técnicos
- Está definido en el RFC 792 para IPv4. En IPv6 su equivalente es ICMPv6 (RFC 4443), que además hace el trabajo de ARP (NDP).
- Viaja dentro de IP, sin TCP ni UDP: es el protocolo número 1 en el encabezado IPv4 (58 en IPv6).
- Cada mensaje tiene un tipo y un código que dicen qué pasó.
- No hace que IP sea confiable: solo informa. Corregir el problema le toca a otros protocolos o a ti.
¿Dónde lo vas a encontrar?
Cada vez que haces ping o tracert, cuando un navegador no logra llegar a un servidor y el router avisa «destino inalcanzable», y en IPv6 todo el tiempo, porque sin ICMPv6 los equipos ni siquiera obtienen dirección.