ip6.7p (2010 09)
i
IPv6(7P) IPv6(7P)
NAME
IPv6, ipv6, ip6 - Internet Protocol Version 6
SYNOPSIS
#include <sys/socket.h>
#include <netinet/in.h>
s = socket(AF_INET6, SOCK_DGRAM, 0);
s = socket(AF_INET6, SOCK_STREAM, 0);
DESCRIPTION
IPv6 is the next generation network-layer protocol designed to be the successor to the current Internet
Protocol version 4 (IPv4). It provides the packet delivery service for TCP, UDP and ICMPv6.
IPv6 has significant advantages over IPv4 in terms of increased address space, simplified header format,
integrated QoS support and mandatory security.
IPv6 also allows optional internet-layer information to be encoded in separate headers called extension
headers which are placed between the IPv6 header and upper layer headers. Extension headers
currently supported are hop-by-hop option header, destination option header, fragment header and rout-
ing (type 0) header. An IPv6 packet may carry zero, one, or more extension headers, each identified by
the next header field of the preceding header.
IPv6 has extended the address size from 32 bits to 128 bits and they are textually represented in hex-
colon notation as x
:x:x:x:x:x:x:
x, where the x’s are the hexadecimal values of the eight 16-bit pieces
of the address. For example
fedc:83ff:fef6:417a:210:83ff:fef6:3dc0
.
IPv6 has three types of addresses: unicast, anycast, and multicast.
• An unicast address is an identifier for a single interface. A packet sent to an unicast address is
delivered to the interface identified by that address.
• An anycast address is an identifier for a set of interfaces. A packet sent to an anycast address
is delivered to one of the interfaces identified by that address.
• A multicast address is an identifier for a set of interfaces. A packet sent to a multicast address
is delivered to all interfaces identified by that address.
There are no broadcast addresses in IPv6, their function is superseded by multicast addresses.
Every IPv6 address has a scope associated with it. A scope is a topological span within which the
address may be used as an unique identifier for an interface or set of interfaces.
There are several types of unicast address.
• The loopback address
::1 is assigned to the loopback interface. It may be used by a node to send
an IPv6 packet to itself.
• Link-local address uniquely identifies interfaces within a single link and it has a fixed prefix of
fe80::/10. For example, fe80::210:84c0:ef6f:cd30.
• Global address uniquely identifies interfaces anywhere in the internet.
• Unique Local IPv6 Unicast address is defined in RFC 4193 and has a fixed prefix of
fc00::/7.
These addresses have a high probability of global uniqueness, and are intended for local com-
munications within a limited area such as a site.
Note: Site-local address with a fixed prefix of
fec0::/10 designed originally to uniquely iden-
tify interfaces within a single site only is deprecated by RFC 3879. The IPv6 Address Architec-
ture RFC 4291 removes the special meaning for the prefix feco::/10 and makes this prefix
part of the global unicast pool.
There are 2 special unicast addresses which hold an embedded IPv4 address in the low order 32-bits.
• The first type is termed as IPv4-compatible IPv6 address and is of the form
0:0:0:0:0:0:d.d.d.d. This type of address is used by dual stack (IPv4/IPv6) nodes to per-
form automatic IPv6-over-IPv4 tunneling where the IPv4 tunnel endpoint address is determined
from the IPv4 address embedded in the IPv4-compatible destination address of the IPv6 packet
being tunneled.
Note: Starting with RFC4291, the IPv4-compatible IPv6 address has been deprecated because
the current IPv6 transition mechanisms no longer use them.
HP-UX 11i Version 3: September 2010 − 1 − Hewlett-Packard Company 1