This notes introduce Internet Protocol version 6 (IPv6), focusing on the motivation for a new protocol, the enlarged addressing space, and routing scalability. It explains IPv6 address notation and the major unicast, multicast, link-local, unique local, embedded, loopback, unspecified, and anycast address types. They detail protocol architecture changes, the fixed-size IPv6 header, and the role of extension headers. They then cover link-layer encapsulation, multicast mapping, Neighbor Discovery and Address Resolution, ICMPv6 message families including multicast listener management, and device configuration options, including EUI-64–based interface identifiers and privacy extensions. The final part presents router and prefix discovery, redirects, duplicate address detection, and stateless configuration workflows.
IPv6 was designed primarily to provide a larger address space, with additional benefits such as
The long adoption path required interim IPv4 measures, including porting IPv6-inspired solutions back into IPv4 and workarounds such as Network Address Translation (NAT). When IPv6 reached production maturity, many IPv4 workarounds were already acceptable in practice. Address scarcity in IPv4 stems from the 32-bit space, classful divisions, reserved blocks (e.g., multicast), hierarchical use, and non-reusable prefixes per physical network; growth in home users, mobile devices, and the Internet of Things intensified demand.
Interim IPv4 measures included: