Format of IPv6 Datagram
Concatenation of Headers

Optional and supplementary information are moved to a separate extension headers. These headers may or may not place after header. Each extension header is a separate block. To concatenate the extension headers, the Next Header Value field is used. This field contains a code that represents the type of extension or data. This way you can concatenate any number of headers.

Concatenation of Headers

The goal is that interesting information for the nodes are located immediately behind the header and other information that are interesting only for end nodes are located after them. When the concatenation of headers is used, the headers are concatenated in the following order:

  1. IPv6 header
  2. Hop-by-Hop Options header
  3. Destination Options header – for the first destination address
  4. Routing header
  5. Fragment header
  6. Authentication header
  7. Encapsulating Security Payload header
  8. Destination Options header – for the end node
  9. Mobility header

Each extension header can appear only once in the IPv6 datagram, except the Destination Options header.