Packet format
An IPv6 packet has two parts: a header and payload.
The header consists of a fixed portion with minimal functionality required for all packets and may be followed by optional extensions to implement special features.
The fixed header occupies the first 40 octets (320 bits) of the IPv6 packet. It contains the source and destination addresses, traffic classification options, a hop counter, and the type of the optional extension or payload which follows the header. This Next Header field tells the receiver how to interpret the data which follows the header. If the packet contains options, this field contains the option type of the next option. The "Next Header" field of the last option, points to the upper-layer protocol that is carried in the packet's payload.
Extension headers carry options that are used for special treatment of a packet in the network, e.g., for routing, fragmentation, and for security using the IPsec framework.
Without special options, a payload must be less than 64kB. With a Jumbo Payload option (in a Hop-By-Hop Options extension header), the payload must be less than 4 GB.
Unlike in IPv4, routers never fragment a packet. Hosts are expected to use Path MTU Discovery to make their packets small enough to reach the destination without needing to be fragmented.
Addressing
IPv6 addresses are classified by three types of networking methodologies: unicast addresses identify each network interface, anycast addresses identify a group of interfaces, usually at different locations of which the nearest one is automatically selected, and multicast addresses are used to deliver one packet to many interfaces. The broadcast method is not implemented in IPv6. Each IPv6 address has a scope, which specifies in which part of the network it is valid and unique. Some addresses are unique only on the local (sub-)network. Others are globally unique.
Some IPv6 addresses are reserved for special purposes, such as loopback, 6to4 tunneling, and Teredo tunneling. Also, some address ranges are considered special, such as link-local addresses for use on the local link only, Unique Local addresses (ULA), and solicited-node multicast addresses used in the Neighbor Discovery Protocol.
IPv6 in the Domain Name System
In the Domain Name System, hostnames are mapped to IPv6 addresses by AAAA resource records, so-called quad-A records. For reverse resolution, the IETF reserved the domain ip6.arpa, where the name space is hierarchically divided by the 1-digit hexadecimal representation of nibble units (4 bits) of the IPv6 address.
Address format
An IPv6 address is represented by 8 groups of 16-bit values, each group represented as 4 hexadecimal digits and separated by colons (:). For example:2001:0db8:0000:0000:0000:ff00:0042:8329
The hexadecimal digits are not case-sensitive; e.g., the groups 0DB8 and 0db8 are equivalent.
An IPv6 address may be abbreviated by using one or more of the following rules:
- Remove one or more leading zeroes from one or more groups of hexadecimal digits; this is usually done to either all or none of the leading zeroes. (For example, convert the group 0042 to 42.)
- Omit consecutive sections of zeroes, using a double colon (::) to denote the omitted sections. The double colon may only be used once in any given address, as the address would be indeterminate if the double colon was used multiple times. A double colon may not be used to denote an omitted single section of zeroes.(For example, 2001:db8::1:2 is valid, but 2001:db8::1::2 or 2001:db8::1:1:1:1:1 are not permitted.)
No comments:
Post a Comment