When configuring IPv6, go to these sections
for information you are interested in:
l
IPv6 Overview
l
IPv6 Configuration Task
List
l
IPv6 Configuration Example
l
The term “router” in this document
refers to a router in a generic sense or an Ethernet switch running a routing
protocol.
l
H3C S5600 Series Ethernet Switches support IPv6
management features, but do not support IPv6 forwarding and related features.
Internet Protocol Version 6 (IPv6), also
called IP next generation (IPng), was designed by the Internet Engineering Task
Force (IETF) as the successor to Internet Protocol Version 4 (IPv4). The
significant difference between IPv6 and IPv4 is that IPv6 increases the IP
address size from 32 bits to 128 bits.
1.1.1 IPv6 Features
I. Header format simplification
IPv6 cuts down some IPv4 header fields or
moves them to extension headers to reduce the overhead of the basic IPv6 header.
IPv6 uses a fixed-length header, thus making IPv6 packet handling simple and
improving the forwarding efficiency. Although the IPv6 address size is four
times that of IPv4 addresses, the size of the IPv6 header is only twice that of
the IPv4 header (excluding the Options field). For the specific IPv6 header
format, see Figure 1-1.

Figure 1-1 Comparison between IPv4 header format and IPv6 header format
II. Adequate address space
The source IPv6 address and the destination
IPv6 address are both 128 bits (16 bytes) long. IPv6 can provide 3.4 x 1038
addresses to completely meet the requirements of hierarchical address division
as well as allocation of public and private addresses.
III. Hierarchical address
structure
IPv6 adopts the hierarchical address
structure to quicken route search and reduce the system source occupied by the
IPv6 routing table by means of route aggregation.
IV. Automatic address
configuration
To simplify the host configuration, IPv6
supports stateful address configuration and stateless address configuration.
l
Stateful address configuration means that a host
acquires an IPv6 address and related information from the server (for example,
DHCP server).
l
Stateless address configuration means that the
host automatically configures an IPv6 address and related information based on
its own link-layer address and the prefix information issued by the router.
In addition, a host can automatically generate
a link-local address based on its own link-layer address and the default prefix
(FE80::/64) to communicate with other hosts on the link.
V. Built-in security
IPv6 uses IPSec as its standard extension
header to provide end-to-end security. This feature provides a standard for
network security solutions and improves the interoperability between different
IPv6 applications.
VI. Support for QoS
The Flow Label field in the IPv6 header
allows the device to label packets in a flow and provide special handling for
these packets.
VII. Enhanced neighbor discovery
mechanism
The IPv6 neighbor discovery protocol is
implemented by a group of Internet Control Message Protocol Version 6 (ICMPv6)
messages. The IPv6 neighbor discovery protocol manages message exchange between
neighbor nodes (nodes on the same link). The group of ICMPv6 messages takes the
place of Address Resolution Protocol (ARP), Internet Control Message Protocol Version
4 (ICMPv4), and ICMPv4 redirect messages to provide a series of other
functions.
VIII. Flexible extension headers
IPv6 cancels the Options field in IPv4 packets but introduces
multiple extension headers. In this way, IPv6 enhances the flexibility greatly
to provide scalability for IP while improving the processing efficiency. The
Options field in IPv4 packets contains only 40 bytes, while the size of IPv6
extension headers is restricted by that of IPv6 packets.
1.1.2 Introduction to IPv6 Address
I. IPv6 addresses
An IPv6 address is represented as a series
of 16-bit hexadecimals, separated by colons. An IPv6 address is divided into
eight groups, 16 bits of each group are represented by four hexadecimal numbers
which are separated by colons, for example,
2001:0000:130F:0000:0000:09C0:876A:130B.
To simplify the representation of IPv6
addresses, zeros in IPv6 addresses can be handled as follows:
l
Leading zeros in each group can be removed. For
example, the above-mentioned address can be represented in shorter format as
2001:0:130F:0:0:9C0:876A:130B.
l
If an IPv6 address contains two or more
consecutive groups of zeros, they can be replaced by the double-colon :: option.
For example, the above-mentioned address can be represented in the shortest
format as 2001:0:130F::9C0:876A:130B.
Caution:
The double-colon ::
can be used only once in an IPv6 address. Otherwise, the device is unable to
determine how many zeros the double-colon represents when converting it to
zeros to restore the IPv6 address to a 128-bit address.
An IPv6 address consists of two parts:
address prefix and interface ID. The address prefix and the interface ID are
respectively equivalent to the network ID and the host ID in an IPv4 address.
An IPv6 address prefix is written in
IPv6-address/prefix-length notation, where IPv6-address is an IPv6 address in
any of the notations and prefix-length is a decimal number indicating how many
bits from the left of an IPv6 address are the address prefix.
II. IPv6 address classification
IPv6 addresses mainly fall into three
types: unicast address, multicast address and anycast address.
l
Unicast address: An identifier for a single
interface, similar to an IPv4 unicast address .A packet sent to a unicast
address is delivered to the interface identified by that address.
l
Multicast address: An identifier for a set of
interfaces (typically belonging to different nodes), similar to an IPv4
multicast address. A packet sent to a multicast address is delivered to all
interfaces identified by that address.
l
Anycast address: An identifier for a set of
interfaces (typically belonging to different nodes).A packet sent to an anycast
address is delivered to one of the interfaces identified by that address (the
nearest one, according to the routing protocols’ measure of distance).
There are no
broadcast addresses in IPv6. Their function is superseded by multicast
addresses.
The type of an IPv6 address is designated
by the format prefix. Table
1-1 lists the mapping between major address types
and format prefixes.
Table 1-1 Mapping
between address types and format prefixes
|
Type
|
Format prefix (binary)
|
IPv6 prefix ID
|
|
Unicast address
|
Unassigned address
|
00...0 (128 bits)
|
::/128
|
|
Loopback address
|
00...1 (128 bits)
|
::1/128
|
|
Link-local address
|
1111111010
|
FE80::/10
|
|
Site-local address
|
1111111011
|
FEC0::/10
|
|
Global unicast address
|
other forms
|
—
|
|
Multicast address
|
11111111
|
FF00::/8
|
|
Anycast address
|
Anycast addresses are taken from unicast
address space and are not syntactically distinguishable from unicast
addresses.
|
III. Unicast address
There are several forms of unicast address
assignment in IPv6, including global unicast address, link-local address, and
site-local address.
l
The global unicast address, equivalent to an
IPv4 public address, is used for aggregatable links and provided for network
service providers. This type of address allows efficient routing aggregation to
restrict the number of global routing entries.
l
The link-local address is used in the neighbor
discovery protocol and the stateless autoconfiguration process. Routers must
not forward any packets with link-local source or destination addresses to
other links.
l
IPv6 unicast site-local addresses are similar to
private IPv4 addresses. Routers must not forward any packets with site-local
source or destination addresses outside of the site (equivalent to a private
network).
l
Loopback address: The unicast address
0:0:0:0:0:0:0:1 (represented in shorter format as ::1) is called the loopback
address and may never be assigned to any physical interface. Like the loopback
address in IPv4, it may be used by a node to send an IPv6 packet to itself.
l
Unassigned address: The unicast address :: is
called the unassigned address and may not be assigned to any node. Before
acquiring a valid IPv6 address, a node may fill this address in the source
address field of an IPv6 packet, but may not use it as a destination IPv6
address.
IV. Multicast address
Multicast addresses listed in Table 1-2
are reserved for special purpose.
Table 1-2 Reserved IPv6 multicast addresses
|
Address
|
Application
|
|
FF01::1
|
Node-local scope all-nodes multicast
address
|
|
FF02::1
|
Link-local scope all-nodes multicast
address
|
|
FF01::2
|
Node-local scope all-routers multicast
address
|
|
FF02::2
|
Link-local scope all-routers multicast
address
|
|
FF05::2
|
Site-local scope all-routers multicast
address
|
Besides, there is another type of multicast
address: solicited-node address. The solicited-node multicast address is used
to acquire the link-layer addresses of neighbor nodes on the same link and is
also used for duplicate address detection. Each IPv6 unicast or anycast address
has one corresponding solicited-node address. The format of a solicited-node
multicast address is as follows:
FF02:0:0:0:0:1:FFXX:XXXX
Where,
FF02:0:0:0:0:1:FF is permanent and consists of 104 bits, and XX:XXXX is the
last 24 bits of an IPv6 address.
V. Interface identifier in IEEE
EUI-64 format
Interface identifiers in IPv6 unicast
addresses are used to identify interfaces on a link and they are required to be
unique on that link. Interface identifiers in IPv6 unicast addresses are
currently required to be 64 bits long. An interface identifier is derived from
the link-layer address of that interface. Interface identifiers in IPv6
addresses are 64 bits long, while MAC addresses are 48 bits long. Therefore,
the hexadecimal number FFFE needs to be inserted in the middle of MAC addresses
(behind the 24 high-order bits).To ensure the interface identifier obtained
from a MAC address is unique, it is necessary to set the universal/local (U/L)
bit (the seventh high-order bit) to “1”. Thus, an interface
identifier in EUI-64 format is obtained.

Figure 1-2 Convert a MAC address into an EUI-64 address
1.1.3 Introduction to IPv6 Neighbor Discovery Protocol
The IPv6 Neighbor Discovery Protocol (NDP) uses
five types of ICMPv6 messages to implement the following functions:
l
Address resolution
l
Neighbor unreachability detection
l
Duplicate address detection
l
Router/prefix discovery
l
Address autoconfiguration
l
Redirection
Table 1-3 lists the types and functions
of ICMPv6 messages used by the NDP.
Table 1-3 Types
and functions of ICMPv6 messages
|
ICMPv6 message
|
Function
|
|
Neighbor solicitation (NS) message
|
Used to acquire the link-layer address of
a neighbor
|
|
Used to verify whether the neighbor is
reachable
|
|
Used to perform a duplicate address
detection
|
|
Neighbor advertisement (NA) message
|
Used to respond to a neighbor
solicitation message
|
|
When the link layer address changes, the
local node initiates a neighbor advertisement message to notify neighbor
nodes of the change.
|
|
Router solicitation (RS) message
|
After started, a host sends a router
solicitation message to request the router for an address prefix and other
configuration information for the purpose of autoconfiguration.
|
|
Router
advertisement (RA) message
|
Used to
respond to a router solicitation message
|
|
With the RA
message suppression disabled, the router regularly sends a router
advertisement message containing information such as address prefix and flag
bits.
|
|
Redirect message
|
When a certain condition is satisfied,
the default gateway sends a redirect message to the source host so that the
host can reselect a correct next hop router to forward packets.
|
l
H3C S5600 Series Ethernet Switches do not
support the RS, RA, or Redirect message.
l
Of the above mentioned IPv6 NDP functions, H3C S5600
Series Ethernet Switches support the following three functions: address
resolution, neighbor unreachability detection, and duplicate address detection.
The subsequent sections present a detailed description of these three functions
and relevant configuration.
The NDP mainly provides the following
functions:
I. Address resolution
Similar to the ARP function in IPv4, a node
acquires the link-layer address of neighbor nodes on the same link through NS
and NA messages. Figure
1-3 shows how node A acquires the link-layer address of node B.

Figure 1-3 Address resolution
The address resolution procedure is as
follows:
1)
Node A multicasts an NS message. The source
address of the NS message is the IPv6 address of the interface of node A and
the destination address is the solicited-node multicast address of node B. The
NS message contains the link-layer address of node A.
2)
After receiving the NS message, node B judges
whether the destination address of the packet is the corresponding solicited-node
multicast address of its own IPv6 address. If yes, node B learns the link-layer
address of node A and returns an NA message containing the link-layer address
of node B in the unicast mode.
3)
Node A acquires the link-layer address of node B
from the NA message. After that, node A and node B can communicate with each
other.
II. Neighbor unreachability detection
After node A acquires the link-layer
address of its neighbor node B, node A can verify whether node B is reachable
according to NS and NA messages.
1)
Node A sends an NS message whose destination
address is the IPv6 address of node B.
2)
If node A receives an NA message from node B,
node A considers that node B is reachable. Otherwise, node B is unreachable.
III. Duplicate address detection
After a node acquires an IPv6 address, it
should perform the duplicate address detection to determine whether the address
is being used by other nodes (similar to the gratuitous ARP function). The
duplication address detection is accomplished through NS and NA messages. Figure 1-4 shows the
duplicate address detection procedure.

Figure 1-4 Duplicate address detection
The duplicate address detection procedure
is as follows:
1)
Node A sends an NS message whose source address
is the unassigned address :: and the destination address is the corresponding
solicited-node multicast address of the IPv6 address to be detected. The NS
message also contains the IPv6 address.
2)
If node B uses this IPv6 address, node B returns
an NA message. The NA message contains the IPv6 address of node B.
3)
Node A learns that the IPv6 address is being
used by node B after receiving the NA message from node B. Otherwise, node B is
not using the IPv6 address and node A can use it.
1.1.4 Introduction to IPv6 DNS
In the IPv6 network, a Domain Name System
(DNS) supporting IPv6 converts domain names into IPv6 addresses. Different from
an IPv4 DNS, an IPv6 DNS converts domain names into IPv6 addresses, instead of
IPv4 addresses.
However, just like an IPv4 DNS, an IPv6 DNS
also covers static domain name resolution and dynamic domain name resolution. The
function and implementation of these two types of domain name resolution are
the same as those of an IPv4 DNS. For details, refer to DNS Operation in
this manual.
Usually, the DNS
server connecting IPv4 and IPv6 networks contain not only A records (IPv4
addresses) but also AAAA records (IPv6 addresses). The DNS server can convert
domain names into IPv4 addresses or IPv6 addresses. In this way, the DNS server
has the functions of both IPv6 DNS and IPv4 DNS.
1.1.5 Protocols and Standards
Protocol specifications related to IPv6
include:
l
RFC 1881: IPv6 Address Allocation Management
l
RFC 1887: An Architecture for IPv6 Unicast
Address Allocation
l
RFC 1981: Path MTU Discovery for IP version 6
l
RFC 2375: IPv6 Multicast Address Assignments
l
RFC 2460: Internet Protocol, Version 6 (IPv6)
Specification.
l
RFC 2461: Neighbor Discovery for IP Version 6
(IPv6)
l
RFC 2462: IPv6 Stateless Address
Autoconfiguration
l
RFC 2463: Internet Control Message Protocol
(ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification
l
RFC 2464: Transmission of IPv6 Packets over
Ethernet Networks
l
RFC 2526: Reserved IPv6 Subnet Anycast Addresses
l
RFC 3307: Allocation Guidelines for IPv6
Multicast Addresses
l
RFC 3513: Internet Protocol Version 6 (IPv6)
Addressing Architecture
l
RFC 3596: DNS Extensions to Support IP Version 6
1.2 IPv6 Configuration Task List
Complete the following tasks to configure
IPv6:
l
An IPv6 address is required for a host to access
an IPv6 network. A host can be assigned a global unicast address, a site-local
address, or a link-local address.
l
To enable a host to access a public IPv6 network,
you need to assign an IPv6 global unicast address to it.
IPv6 site-local addresses and global
unicast addresses can be configured in either of the following ways:
l
EUI-64 format: When the EUI-64 format is adopted
to form IPv6 addresses, the IPv6 address prefix of an interface is the
configured prefix and the interface identifier is derived from the link-layer
address of the interface.
l
Manual configuration: IPv6 site-local addresses
or global unicast addresses are configured manually.
IPv6 link-local addresses can be acquired
in either of the following ways:
l
Automatic generation: The device automatically
generates a link-local address for an interface according to the link-local
address prefix (FE80::/64) and the link-layer address of the interface.
l
Manual assignment: IPv6 link-local addresses can
be assigned manually.
Follow these steps to configure an IPv6
unicast address:
|
To do...
|
Use the command...
|
Remarks
|
|
Enter system view
|
system-view
|
—
|
|
Enter VLAN interface view
|
interface interface-type interface-number
|
—
|
|
Configure
an IPv6 global unicast address or site-local address
|
Manually
assign an IPv6 address
|
ipv6
address { ipv6-address prefix-length | ipv6-address/prefix-length
}
|
Use either
command
By
default, no site-local address or global unicast address is configured for an
interface.
Note that
the prefix specified by the prefix-length argument in an EUI-64
address cannot exceed 64 bits in length.
|
|
Adopt the
EUI-64 format to form an IPv6 address
|
ipv6
address ipv6-address/prefix-length eui-64
|
|
Configure
an IPv6 link-local address
|
Automatically
generate a link-local address
|
ipv6
address auto link-local
|
Optional
By
default, after an IPv6 site-local address or global unicast address is
configured for an interface, a link-local address will be generated automatically.
|
|
Manually
assign a link-local address for an interface.
|
ipv6
address ipv6-address link-local
|
l
If an IRF fabric port on an H3C S5600 switch is
enabled with IRF fabric, no IPv6 address can be configured for the switch. To
do so, you need to disable IRF fabric on all IRF fabric ports.
l
IPv6 unicast addresses can be configured for
only one VLAN interface on an H3C S5600 Ethernet switch. The total number of
global unicast addresses and site-local addresses on the VLAN interface can be
up to four.
l
After an IPv6 site-local address or global
unicast address is configured for an interface, a link-local address will be
generated automatically. The automatically generated link-local address is the
same as the one generated by using the ipv6 address auto link-local command.
l
The manual assignment takes precedence over the
automatic generation. That is, if you first adopt the automatic generation and
then the manual assignment, the manually assigned link-local address will
overwrite the automatically generated one. If you first adopt the manual
assignment and then the automatic generation, the automatically generated
link-local address will not take effect and the link-local address of an
interface is still the manually assigned one. If the manually assigned
link-local address is deleted, the automatically generated link-local address
takes effect.
l
You must have carried out the ipv6 address
auto link-local command before you carry out the undo ipv6 address auto
link-local command. However, if an IPv6 site-local address or global
unicast address is already configured for an interface, the interface still has
a link-local address because the system automatically generates one for the
interface. If no IPv6 site-local address or global unicast address is configured,
the interface has no link-local address.
1.2.2
Configuring IPv6 NDP
The IPv6 address of a neighbor node can be
resolved into a link-layer address dynamically through NS and NA messages or
statically through manual configuration.
You can configure a static neighbor entry
in two ways:
l
Mapping a VLAN interface to an IPv6 address and a
link-layer address
l
Mapping a port in a VLAN to an IPv6 address and a
link-layer address
If you configure a static neighbor entry in
the second way, make sure the corresponding VLAN interface exists. In this
case, the device associates the VLAN interface to the IPv6 address to uniquely
identify a static neighbor entry.
Follow these
steps to configure a static neighbor entry:
|
To do...
|
Use the command...
|
Remarks
|
|
Enter
system view
|
system-view
|
—
|
|
Configure
a static neighbor entry
|
ipv6
neighbor ipv6-address mac-address { vlan-id port-type port-number | interface interface-type
interface-number }
|
Required
|
The device can dynamically acquire the
link-layer address of a neighbor node through NS and NA messages and add it to
the neighbor table. Too large a neighbor table may lead to the forwarding
performance degradation of the device. Therefore, you can restrict the size of
the neighbor table by setting the maximum number of neighbors that an interface
can dynamically learn. When the number of dynamically learned neighbors reaches
the threshold, the interface will stop learning neighbor information.
Follow these steps
to configure the maximum number of neighbors dynamically learned:
|
To do…
|
Use the command…
|
Remarks
|
|
Enter system view
|
system-view
|
|