ICMPv6 TYPE NUMBERS

(last updated 2006-08-30)

Registries included below:
- ICMP Message types
- ICMP type "code" fields
- IPv6 NEIGHBOR DISCOVERY OPTION FORMATS
- Trust Anchor option Name Type field
- Certificate option Cert Type field
- Qtypes

The Internet Control Message Protocol (ICMPv6) has many messages 
that are identified by a "type" field [RFC2463].  Error messages 
have message Types from 0 to 127.  Informational messages have 
message Types from 128 to 255.
Registration Procedures: 
Type codes - IETF RFC Publication (standards track, informational or experimental)
Code values - Standards action or IESG approval

Type  Name                                             Reference
----  -----------------------------------------------  ---------
   1  Destination Unreachable                          [RFC2463]
   2  Packet Too Big                                   [RFC2463]
   3  Time Exceeded                                    [RFC2463]
   4  Parameter Problem                                [RFC2463]
 100  Private experimentation                          [RFC4443]
 101  Private experimentation                          [RFC4443]

 127  Reserved for expansion of ICMPv6 error messages  [RFC4443]
 128  Echo Request                                     [RFC2463]
 129  Echo Reply                                       [RFC2463]
 130  Multicast Listener Query                         [RFC2710]
 131  Multicast Listener Report                        [RFC2710]
 132  Multicast Listener Done                          [RFC2710]
 133  Router Solicitation                              [RFC2461]
 134  Router Advertisement                             [RFC2461]
 135  Neighbor Solicitation                            [RFC2461]
 136  /eighbor Advertisement                           [RFC2461]
 137  Redirect Message                                 [RFC2461]
 138  Router Renumbering                               [Crawford]
 139  ICMP Node Information Query                      [RFC4620]
 140  ICMP Node Information Response                   [RFC4620]
 141  Inverse Neighbor Discovery Solicitation Message  [RFC3122]
 142  Inverse Neighbor Discovery Advertisement Message [RFC3122]
 143  Version 2 Multicast Listener Report              [RFC3810]       
 144  Home Agent Address Discovery Request Message     [RFC3775]
 145  Home Agent Address Discovery Reply Message       [RFC3775]
 146  Mobile Prefix Solicitation                       [RFC3775]
 147  Mobile Prefix Advertisement                      [RFC3775]
 148  Certification Path Solicitation Message          [RFC3971]
 149  Certification Path Advertisement Message         [RFC3971]
 150  ICMP messages utilized by experimental           [RFC4065]
      mobility protocols such as Seamoby
 151  Multicast Router Advertisement                   [RFC4286]
 152  Multicast Router Solicitation                    [RFC4286]
 153  Multicast Router Termination                     [RFC4286]
 200  Private experimentation                          [RFC4443]
 201  Private experimentation                          [RFC4443]
 255  Reserved for expansion of ICMPv6 informational   [RFC4443]
      messages

Many of these ICMP types have a "code" field.  Here we list the types
again with their assigned code fields.

Type    Name                                    Reference
----    -------------------------               ---------
   1    Destination Unreachable                 [RFC2463]
   Code           0 - no route to destination
                  1 - communication with destination
                      administratively prohibited
                  2 - beyond scope of source address  [RFC4443]
                  3 - address unreachable
                  4 - port unreachable
                  5 - source address failed ingress/egress policy [RFC4443]
                  6 - reject route to destination  [RFC4443]        

   2    Packet Too Big                          [RFC2463]
   Code           0

   3    Time Exceeded                           [RFC2463]
   Code           0 - hop limit exceeded in transit
                  1 - fragment reassembly time exceeded

   4    Parameter Problem                       [RFC2463]
   Code           0 - erroneous header field encountered
                  1 - unrecognized Next Header type encountered
                  2 - unrecognized IPv6 option encountered

 128     Echo Request                           [RFC2463]
   Code           0

 129     Echo Reply                             [RFC2463]
   Code           0

 130     Multicast Listener Query               [RFC2710]
   Code           0

 131     Multicast Listener Report              [RFC2710]
   Code           0

 132     Multicast Listener Done                [RFC2710]
   Code           0

 133     Router Solicitation                    [RFC2461]
   Code           0

 134     Router Advertisement                   [RFC2461]
   Code           0

 135     Neighbor Solicitation                  [RFC2461]
   Code           0

 136     Neighbor Advertisement                 [RFC2461]
   Code           0

 137     Redirect Message                       [RFC2461]
   Code           0

 138     Router Renumbering                     [Crawford]
   Code           0 - Router Renumbering Command
                  1 - Router Renumbering Result
                255 - Sequence Number Reset  

 139     ICMP Node Information Query            [RFC4620]
   Code           0 - The Data field contains an               [RFC4620]
                      IPv6 address which is the Subject 
                      of this Query.
                  1 - The Data field contains a name           [RFC4620]
                      which is the Subject of this Query,
                      or is empty, as in the case of a NOOP.
                  2 - The Data field contains an               [RFC4620] 
                      IPv4 address which is the Subject
                      of this Query.

 140     ICMP Node Information Response         [RFC4620] 
   Code           0 - A successful reply.  The Reply           [RFC4620]
                      Data field may or may not be empty.
                  1 - The Responder refuses to supply          [RFC4620]
                      the answer.  The Reply Data field 
                      will be empty.
                  2 - The Qtype of the Query is unknown        [RFC4620]
                      to the Responder.  The Reply Data
                      field will be empty.

 141     Inverse Neighbor Discovery             [RFC3122]
         Solicitation Message
   Code           0                              

 142     Inverse Neighbor Discovery             [RFC3122]
         Advertisement Message
   Code           0                              
 144     Home Agent Address Discovery           [RFC3775]
         Request Message
   Code           0

 145     Home Agent Address Discovery           [RFC3775]
         Reply Message
   Code           0

 146     Mobile Prefix Solicitation             [RFC3775]
   Code           0

 147     Mobile Prefix Advertisement            [RFC3775]
   Code           0   



IPv6 NEIGHBOR DISCOVERY OPTION FORMATS
--------------------------------------

The IPv6 Neighbor Discovery has options that are identified by an Option
Format Type field [RFC2461].

Type    Description                             Reference
----    -----------                             ---------       
1       Source Link-layer Address               [RFC2461]
2       Target Link-layer Address               [RFC2461]
3       Prefix Information                      [RFC2461]
4       Redirected Header                       [RFC2461]
5       MTU                                     [RFC2461]

6       NBMA Shortcut Limit Option              [IPV6-NBMA]
7       Advertisement Interval Option           [RFC3775]
8       Home Agent Information Option           [RFC3775]

9       Source Address List                     [RFC3122]
10      Target Address List                     [RFC3122]
11      CGA option                              [RFC3971]
12      RSA Signature option                    [RFC3971]
13      Timestamp option                        [RFC3971] 
14      Nonce option                            [RFC3971]
15      Trust Anchor option                     [RFC3971]
16      Certificate option                      [RFC3971]
17      IP Address Option                       [RFC4068]  
18      New Router Prefix Information Option    [RFC4068]
19      Link-layer Address Option               [RFC4068]
20      Neighbor Advertisement Acknowledgment   [RFC4068]
        Option
21      CARD Request option                     [RFC4065]
22      CARD Reply option                       [RFC4065]
23      MAP Option                              [RFC4140]
24      Route Information Option                [RFC4191]
253     RFC3692-style Experiment 1 (*)          [RFC-fenner-iana-exp-2780-05.txt]
254     RFC3692-style Experiment 2 (*)          [RFC-fenner-iana-exp-2780-05.txt]

   (*) 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.

Trust Anchor option Name Type field  - per [RFC3971]
Registration Procedures: Standards Action
Value  Description                              Reference
-----  ------------------------------------     ---------
   1   DER Encoded X.501 Name                   [RFC3971]
   2   FQDN                                     [RFC3971]

Certificate option Cert Type field - per [RFC3971]
Registration Procedures: Standards Action
Value  Description                              Reference
-----  ------------------------------------     ---------
   1   X.509v3 Certificate                      [RFC3971]


Qtypes - per [RFC4620]
Registration Procedures: IETF Consensus
Value  Description                              Reference
-----  ------------------------------------     ---------
   0   NOOP                                     [RFC4620] 
   1   Unused                                   [RFC4620]
   2   Node Name                                [RFC4620]
   3   Node Addresses                           [RFC4620]
   4   IPv4 Addresses                           [RFC4620]

REFERENCES
----------
[RFC2461]  Narten, T., E. Nordmark, and W. Simpson, "Neighbor
           Discovery for IP Version 6 (IPv6)", RFC 2461, December 1998.

[RFC2463]  Conta, A., and S. Deering, " Internet Control Message
           Protocol (ICMPv6) for the Internet Protocol Version 6
           (IPv6) Specification", RFC 2463, December 1998.

[RFC2710]  S. Deering, W. Fenner and B. Haberman, "Multicast Listener 
           Discovery (MLD) for IPv6", RFC 2710, October 1999.

[RFC3122]  A. Conta, "Extensions to IPv6 Neighbor Discovery for
           Inverse Discovery", RFC 3122, June 2001.

[RFC3775]  D. Johnson, C. Perkins, and J. Arkko, "Mobility Support in IPv6", 
           RFC 3775, June 2004.

[RFC3810]  R. Vida,  L. Costa, Eds., "Multicast Listener Discovery Version 2 
           (MLDv2) for IPv6", RFC 3810, June 2004.

[RFC3971]  J. Arkko, Ed., J. Kempf, B. Sommerfeld, B. Zill, and P. Nikander,
           "SEcure Neighbor Discovery (SEND)", RFC 3971, March 2005.

[RFC4065]  J. Kempf, "Instructions for Seamoby and Experimental 
           Mobility Protocol IANA Allocations", RFC 4065, July 2005.

[RFC4068]  R. Koodli, Ed., "Fast Handovers for Mobile IPv6", RFC 4068,
           July 2005.

[RFC4140]  H. Soliman, C. Catelluccia, K. El Malki, and L. Bellier,
           "Hierarchical Mobile IPv6 mobility management (HMIPv6)",
           RFC 4140, August 2005.

[RFC4191]  R. Draves and D. Thaler, "Default Router Preferences and 
           More-Specific Routes", RFC 4191, November 2005.

[RFC4286]  B. Haberman and J. Martin, "Multicast Router Discovery", 
           RFC 4286, December 2005.

[RFC4443]  A. Conta, S. Deering and M. Gupta, "Internet Control Message 
           Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) 
           Specification", RFC 4443, March 2006.

[IPV6-NBMA]  Armitage, G., P. Schulter, M. Jork, G. Harter, "IPv6 over
           Non-Broadcast Multiple Access (NBMA) network", Internet
           Draft, March 1998.

[RFC4620]  M. Crawford and  B. Haberman, "IPv6 Node Information Queries", 
           RFC 4620, August 2006.

[RFC-fenner-iana-exp-2780-05.txt]
          B. Fenner, "Experimental values In IPv4, IPv6, ICMPv4, ICMPv6,
          UDP and TCP Headers",  RFC XXXX,  Month Year.


PEOPLE
------
[Crawford]    Matt Crawford <crawdad@gungnir.fnal.gov>, January 1998,
              April 1999.

[]
