Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

It contains information carried in the IP header that may be present but that isn't required to be present, i.e. it's "optional".

For IPv4, see RFC 791, section 3.1 "Internet Header Format", which says:

Options:  variable

  The options may appear or not in datagrams.  They must be
  implemented by all IP modules (host and gateways).  What is optional
  is their transmission in any particular datagram, not their
  implementation.

It describes the first few options supported by IPv4; the list of "registered" IPv4 options is on Internet Protocol Version 4 (IPv4) Parameters, under IP Option Numbers.

For IPv6, see RFC 8200, section 4 "IPv6 Extension Headers", which says:

In IPv6, optional internet-layer information is encoded in separate
headers that may be placed between the IPv6 header and the upper-
layer header in a packet.  There is a small number of such extension
headers, each one identified by a distinct Next Header value.

and section 4.2 "Options", which says:

Two of the currently defined extension headers specified in this
document -- the Hop-by-Hop Options header and the Destination Options
header -- carry a variable number of "options" that are type-length-
value (TLV) encoded in the following format:

and describes the padding options; the list of "registered" IPv6 options is on Internet Protocol Version 6 (IPv6) Parameters, under Destination Options and Hop-by-Hop Options.