ICMP TYPE NUMBERS (last updated 2010-01-26) Registries included below: - ICMP Type Numbers - Code Fields - ICMP Extension Object Classes Registry Name: ICMP Type Numbers Reference: [RFC2939] Registration Procedures: IESG Approval or Standards Action Note: The Internet Control Message Protocol (ICMP) has many messages that are identified by a "type" field. Registry: Type Name Reference ---- ------------------------- --------- 0 Echo Reply [RFC792] 1 Unassigned [JBP] 2 Unassigned [JBP] 3 Destination Unreachable [RFC792] 4 Source Quench [RFC792] 5 Redirect [RFC792] 6 Alternate Host Address [JBP] 7 Unassigned [JBP] 8 Echo [RFC792] 9 Router Advertisement [RFC1256] 10 Router Solicitation [RFC1256] 11 Time Exceeded [RFC792] 12 Parameter Problem [RFC792] 13 Timestamp [RFC792] 14 Timestamp Reply [RFC792] 15 Information Request [RFC792] 16 Information Reply [RFC792] 17 Address Mask Request [RFC950] 18 Address Mask Reply [RFC950] 19 Reserved (for Security) [Solo] 20-29 Reserved (for Robustness Experiment) [ZSu] 30 Traceroute [RFC1393] 31 Datagram Conversion Error [RFC1475] 32 Mobile Host Redirect [David Johnson] 33 IPv6 Where-Are-You [Bill Simpson] 34 IPv6 I-Am-Here [Bill Simpson] 35 Mobile Registration Request [Bill Simpson] 36 Mobile Registration Reply [Bill Simpson] 37 Domain Name Request [RFC1788] 38 Domain Name Reply [RFC1788] 39 SKIP [Markson] 40 Photuris [RFC2521] 41 ICMP messages utilized by experimental [RFC4065] mobility protocols such as Seamoby 42-255 Reserved [JBP] Registry Name: Code Fields Reference: [RFC2939] Registration Procedures: IESG Approval or Standards Action Note: Many of these ICMP types have a "code" field. Here we list the types again with their assigned code fields. Registry: Type Name Reference ---- ------------------------- --------- 0 Echo Reply [RFC792] Codes 0 No Code 1 Unassigned [JBP] 2 Unassigned [JBP] 3 Destination Unreachable [RFC792] Codes 0 Net Unreachable [RFC792] 1 Host Unreachable [RFC792] 2 Protocol Unreachable [RFC792] 3 Port Unreachable [RFC792] 4 Fragmentation Needed and Don't [RFC792] Fragment was Set [RFC792] 5 Source Route Failed [RFC792] 6 Destination Network Unknown [RFC1122] 7 Destination Host Unknown [RFC1122] 8 Source Host Isolated [RFC1122] 9 Communication with Destination [RFC1122] Network is Administratively Prohibited 10 Communication with Destination Host is [RFC1122] Administratively Prohibited 11 Destination Network Unreachable for Type [RFC1122] of Service 12 Destination Host Unreachable for Type of [RFC1122] Service 13 Communication Administratively Prohibited [RFC1812] 14 Host Precedence Violation [RFC1812] 15 Precedence cutoff in effect [RFC1812] 4 Source Quench [RFC792] Codes 0 No Code 5 Redirect [RFC792] Codes 0 Redirect Datagram for the Network (or subnet) 1 Redirect Datagram for the Host 2 Redirect Datagram for the Type of Service and Network 3 Redirect Datagram for the Type of Service and Host 6 Alternate Host Address [JBP] Codes 0 Alternate Address for Host 7 Unassigned [JBP] 8 Echo [RFC792] Codes 0 No Code 9 Router Advertisement [RFC1256] Codes 0 Normal router advertisement [RFC3344] 16 Does not route common traffic [RFC3344] 10 Router Selection [RFC1256] Codes 0 No Code 11 Time Exceeded [RFC792] Codes 0 Time to Live exceeded in Transit 1 Fragment Reassembly Time Exceeded 12 Parameter Problem [RFC792] Codes 0 Pointer indicates the error 1 Missing a Required Option [RFC1108] 2 Bad Length 13 Timestamp [RFC792] Codes 0 No Code 14 Timestamp Reply [RFC792] Codes 0 No Code 15 Information Request [RFC792] Codes 0 No Code 16 Information Reply [RFC792] Codes 0 No Code 17 Address Mask Request [RFC950] Codes 0 No Code 18 Address Mask Reply [RFC950] Codes 0 No Code 19 Reserved (for Security) [Solo] 20-29 Reserved (for Robustness Experiment) [ZSu] 30 Traceroute [RFC1393] 31 Datagram Conversion Error [RFC1475] 32 Mobile Host Redirect [David Johnson] 33 IPv6 Where-Are-You [Bill Simpson] 34 IPv6 I-Am-Here [Bill Simpson] 35 Mobile Registration Request [Bill Simpson] 36 Mobile Registration Reply [Bill Simpson] 39 SKIP [Markson] 40 Photuris [RFC2521] Codes 0 = Bad SPI 1 = Authentication Failed 2 = Decompression Failed 3 = Decryption Failed 4 = Need Authentication 5 = Need Authorization 41-252 Unassigned 253 RFC3692-style Experiment 1 (*) [RFC4727] 254 RFC3692-style Experiment 2 (*) [RFC4727] (*) It is only appropriate to use these values in explicitly- configured experiments; they MUST NOT be shipped as defaults in implementations. See RFC 3692 for details. ICMP Extension Object Classes and Class Sub-types - per [RFC4884] Registration Procedures: 0-246 First Come First Serve 247-255 Private Use Object Class Value Class Name Reference ------ -------------------------------------------- --------- 1 MPLS Label Stack Class [RFC4950] Sub-types [RFC4950] C-Type (Value) 0 Reserved [RFC4950] 1 Incoming MPLS Label Stack [RFC4950] 0x02-0xF6 Unassigned [RFC4950] 0xF7-0xFF Reserved for private use [RFC4950] Allocation Policy: C-Type values for Class-num 1 are assignable on a first-come-first-serve (FCFS) basis [RFC2434]. 2 Interface Information Object [RFC-atlas-icmp-unnumbered-09.txt] Sub-types [RFC-atlas-icmp-unnumbered-09.txt] C-Type (Bit Number) 0-1 Interface Role field [RFC-atlas-icmp-unnumbered-09.txt] Interface Roles 0 Incoming IP Interface [RFC-atlas-icmp-unnumbered-09.txt] 1 Sub-IP Component of Incoming IP Interface [RFC-atlas-icmp-unnumbered-09.txt] 2 Outgoing IP Interface [RFC-atlas-icmp-unnumbered-09.txt] 3 IP Next-hop [RFC-atlas-icmp-unnumbered-09.txt] 2 Unallocated - allocatable with Standards Action [RFC-atlas-icmp-unnumbered-09.txt] 3 Unallocated - allocatable with Standards Action [RFC-atlas-icmp-unnumbered-09.txt] 4 ifIndex included [RFC-atlas-icmp-unnumbered-09.txt] 5 IP Address Sub-object included [RFC-atlas-icmp-unnumbered-09.txt] 6 Name Sub-object included [RFC-atlas-icmp-unnumbered-09.txt] 7 MTU included [RFC-atlas-icmp-unnumbered-09.txt] REFERENCES ---------- [RFC792] Postel, J., "Internet Control Message Protocol", STD 5, RFC 792, USC/Information Sciences Institute, September 1981. [RFC950] Mogul, J., and J. Postel, "Internet Standard Subnetting Procedure", STD 5, RFC 950, Stanford, USC/Information Sciences Institute, August 1985. [RFC1108] Kent, S., "U.S. Department of Defense Security Options for the Internet Protocol", RFC 1108, November 1991. [RFC1122] R. Braden, Ed., "Requirements for Internet Hosts -- Communication Layers", RFC 1122, October 1989. [RFC1256] Deering, S., Editor, "ICMP Router Discovery Messages", RFC 1256, Xerox PARC, September 1991. [RFC1393] Malkin, G., "Traceroute Using an IP Option", RFC 1393, Xylogics, Inc., January 1993. [RFC1475] Ullmann, R., "TP/IX: The Next Internet", RFC 1475, Process Software Corporation, June 1993. [RFC1788] W. Simpson, "ICMP Domain Name Messages", RFC 1788, April 1995. [RFC1812] Baker, F., "Requirements for IP Version 4 Routers", RFC 1812, Cisco Systems, June 1995. [RFC2434] T. Narten and H. Alvestrand, "Guidelines for Writing an IANA Considerations Section in RFCs", RFC 2434, October 1998. [RFC2521] P. Karn and W. Simpson, "ICMP Security Failures Messages", RFC 2521, March 1999. [RFC2939] R. Droms, "Procedures and IANA Guidelines for Definition of New DHCP Options and Message Types", RFC 2939, September 2000. [RFC3344] C. Perkins, Ed., "IP Mobility Support for IPv4", RFC 3344, August 2002. [RFC4065] J. Kempf, "Instructions for Seamoby and Experimental Mobility Protocol IANA", RFC 4065, July 2005. [RFC4727] B. Fenner, "Experimental values In IPv4, IPv6, ICMPv4, ICMPv6, UDP and TCP Headers", RFC 4727, November 2006. [RFC4884] R. Bonica, D. Gan, P. Nikander, D. Tappan and C. Pignataro, "Extended ICMP to Support Multi-part Messages", RFC 4884, April 2007. [RFC4950] R. Bonica, D. Gan, D. Tappan and C. Pignataro, "ICMP Extensions for MultiProtocol Label Switching", RFC 4950, August 2007. [RFC-atlas-icmp-unnumbered-09.txt] A. Atlas, Ed., R. Bonica, Ed., C. Pignataro, Ed., JR. Rivers, N. Shen, "Extending ICMP for Interface and Next-hop Identification", RFC XXXX, Month Year. PEOPLE ------ [JBP] Jon Postel, , September 1995. [David Johnson] [Markson] Tom Markson, , September 1995. [Simpson] Bill Simpson, , October 1995. [Solo] [ZSu] Zaw-Sing Su []