This is a complete listing of all ICMP types. Note the reference pointing to the RFC or person who introduced the type and code. For a complete and absolute up to date listing of all ICMP types and codes, look at the icmp-parameters document at Internet Assigned Numbers Authority.
|  | Iptables and netfilter uses ICMP type 255 internally since it is not reserved for any real usage, and most likely will never have any real usage. If you set a rule to match iptables -A INPUT -p icmp --icmp-type 255 -j DROP, this will DROP all ICMP packets. It is in other words used to match all ICMP types. | 
Table C-1. ICMP types
| TYPE | CODE | Description | Query | Error | Reference | 
|---|---|---|---|---|---|
| 0 | 0 | Echo Reply | x | RFC792 | |
| 3 | 0 | Network Unreachable | x | RFC792 | |
| 3 | 1 | Host Unreachable | x | RFC792 | |
| 3 | 2 | Protocol Unreachable | x | RFC792 | |
| 3 | 3 | Port Unreachable | x | RFC792 | |
| 3 | 4 | Fragmentation needed but no frag. bit set | x | RFC792 | |
| 3 | 5 | Source routing failed | x | RFC792 | |
| 3 | 6 | Destination network unknown | x | RFC792 | |
| 3 | 7 | Destination host unknown | x | RFC792 | |
| 3 | 8 | Source host isolated (obsolete) | x | RFC792 | |
| 3 | 9 | Destination network administratively prohibited | x | RFC792 | |
| 3 | 10 | Destination host administratively prohibited | x | RFC792 | |
| 3 | 11 | Network unreachable for TOS | x | RFC792 | |
| 3 | 12 | Host unreachable for TOS | x | RFC792 | |
| 3 | 13 | Communication administratively prohibited by filtering | x | RFC1812 | |
| 3 | 14 | Host precedence violation | x | RFC1812 | |
| 3 | 15 | Precedence cutoff in effect | x | RFC1812 | |
| 4 | 0 | Source quench | RFC792 | ||
| 5 | 0 | Redirect for network | RFC792 | ||
| 5 | 1 | Redirect for host | |||
| 5 | 2 | Redirect for TOS and network | RFC792 | ||
| 5 | 3 | Redirect for TOS and host | RFC792 | ||
| 8 | 0 | Echo request | x | RFC792 | |
| 9 | 0 | Router advertisement - Normal router advertisement | RFC1256 | ||
| 9 | 16 | Router advertisement - Does not route common traffic | RFC2002 | ||
| 10 | 0 | Route selection | RFC1256 | ||
| 11 | 0 | TTL equals 0 during transit | x | RFC792 | |
| 11 | 1 | TTL equals 0 during reassembly | x | RFC792 | |
| 12 | 0 | IP header bad (catchall error) | x | RFC792 | |
| 12 | 1 | Required options missing | x | RFC1108 | |
| 12 | 2 | IP Header bad length | x | RFC792 | |
| 13 | 0 | Timestamp request (obsolete) | x | RFC792 | |
| 14 | Timestamp reply (obsolete) | x | RFC792 | ||
| 15 | 0 | Information request (obsolete) | x | RFC792 | |
| 16 | 0 | Information reply (obsolete) | x | RFC792 | |
| 17 | 0 | Address mask request | x | RFC950 | |
| 18 | 0 | Address mask reply | x | RFC950 | |
| 20-29 | Reserved for robustness experiment | Zaw-Sing Su | |||
| 30 | 0 | Traceroute | x | RFC1393 | |
| 31 | 0 | Datagram Conversion Error | x | RFC1475 | |
| 32 | 0 | Mobile Host Redirect | David Johnson | ||
| 33 | 0 | IPv6 Where-Are-You | x | Bill Simpson | |
| 34 | 0 | IPv6 I-Am-Here | x | Bill Simpson | |
| 35 | 0 | Mobile Registration Request | x | Bill Simpson | |
| 36 | 0 | Mobile Registration Reply | x | Bill Simpson | |
| 39 | 0 | SKIP | Tom Markson | ||
| 40 | 0 | Photuris | RFC2521 |