The Network's Diagnostic Language
How ping, traceroute, and error messages keep networks running
tracert — uses ICMP Echo Requeststraceroute — uses UDP by defaulttraceroute -IWatch the capture below. The first five packets are normal ping traffic — then something changes at packet 6.
ICMP = IP Protocol Number 1. Not TCP (6) or UDP (17). No ports assigned.
ICMP Echo Request. The packet ping sends to the target. Type 8, Code 0.
ICMP Echo Reply. The packet the target sends back. Type 0, Code 0.
Destination Unreachable. Sub-codes 0-13 tell you exactly what failed.
Time Exceeded. TTL hit zero. Traceroute exploits this to map each hop.
ICMP has no port numbers. Encapsulated directly in IP, not TCP or UDP.
ping tests reachability. traceroute maps the path. Different tools, both use ICMP.
Blocking all ICMP breaks Path MTU Discovery (Type 3, Code 4). VPN black holes result.
ICMP operates at Layer 3 (Network). Not Layer 4. No transport-layer services.
icmp