Documente Academic
Documente Profesional
Documente Cultură
Version: 2.00.10
ZTE CORPORATION
No. 55, Hi-tech Road South, ShenZhen, P.R.China
Postcode: 518057
Tel: +86-755-26771900
Fax: +86-755-26770801
URL: http://support.zte.com.cn
E-mail: support@zte.com.cn
LEGAL INFORMATION
Copyright 2014 ZTE CORPORATION.
The contents of this document are protected by copyright laws and international treaties. Any reproduction or
distribution of this document or any portion of this document, in any form by any means, without the prior written
consent of ZTE CORPORATION is prohibited. Additionally, the contents of this document are protected by
contractual confidentiality obligations.
All company, brand and product names are trade or service marks, or registered trade or service marks, of ZTE
CORPORATION or of their respective owners.
This document is provided as is, and all express, implied, or statutory warranties, representations or conditions
are disclaimed, including without limitation any implied warranty of merchantability, fitness for a particular purpose,
title or non-infringement. ZTE CORPORATION and its licensors shall not be liable for damages resulting from the
use of or reliance on the information contained herein.
ZTE CORPORATION or its licensors may have current or pending intellectual property rights or applications
covering the subject matter of this document. Except as expressly provided in any written license between ZTE
CORPORATION and its licensee, the user of this document shall not acquire any license to the subject matter
herein.
ZTE CORPORATION reserves the right to upgrade or make technical change to this product without further notice.
Users may visit the ZTE technical support website http://support.zte.com.cn to inquire for related information.
The ultimate right to interpret this product resides in ZTE CORPORATION.
Revision History
II
III
IV
VI
Intended Audience
This manual is intended for:
l Network planning engineers
l Commissioning engineers
l Maintenance engineers
Chapter Summary
1, IPv6 Basic Configuration Describes the chief changes of IPv6 relative to IPv4, and the
configuration commands of ICMPv6 and TCPv6.
2, IPv6 Address Configuration Describes the IPv6 Address principle, configuration commands
and configuration examples.
4, IPv6 Static Route Configuration Describes the IPv6 Static Route principle, configuration
commands and configuration examples.
9, IPv6 Route-Map Policy Describes the IPv6 route policy and its principles, configuration
Configuration commands and configuration examples.
10, IPv6 Multicast Describes the IPv6 Multicast principle, configuration commands
and configuration examples.
11, IPv6 Static Multicast Describes the IPv6 Static Multicast principle, configuration
Configuration commands and configuration examples.
12, MLD Configuration Describes the MLD principle, configuration commands and
configuration examples.
13, IPv6 PIM-DM Configuration Describes the IPv6 PIM-DM principle, configuration commands
and configuration examples.
14, IPv6 PIM-SM Configuration Describes the IPv6 PIM-SM principle, configuration commands
and configuration examples.
15, IPv6 PIM-SSM Configuration Describes the IPv6 PIM-SSM principle, configuration commands
and configuration examples.
16, IPv6 Tunnel Configuration Describes the IPv6 Tunnel principle, configuration commands
and configuration examples.
17, 6RD Configuration Describes the 6RD principle, configuration commands and
configuration examples.
18, 6PE Configuration Describes the 6PE principle, configuration commands and
configuration examples.
19, 6VPE Configuration Describes the 6VPE principle, configuration commands and
configuration examples.
20, IPv6 ACL Configuration Describes the IPv6 ACL principle, configuration commands and
configuration examples.
21, IPv6 URPF Configuration Describes the IPv6 URPF principle, configuration commands
and configuration examples.
22, IPv6 QoS Configuration Describes the IPv6 QoS principle, configuration commands and
configuration examples.
23, IPv6 VRRP Configuration Describes the IPv6 VRRP principle, configuration commands
and configuration examples.
24, DHCPv6 Configuration Describes the DHCPv6 principle, configuration commands and
configuration examples.
Conventions
This manual uses the following typographical conventions:
Typeface Meaning
Italics Variables in commands. It may also refer to other related manuals and documents.
Bold Menus, menu options, function names, input fields, option button names, check boxes,
drop-down lists, dialog box names, window names, parameters, and commands.
Constant Text that you type, program codes, filenames, directory names, and function names.
width
II
[] Optional parameters.
{} Mandatory parameters.
III
IV
1-1
Steps
1. Configure ICMPv6.
If a router cannot process an IP packet due to some reasons (no route can be found
or the packet contains a wrong layer 3 protocol number), an ICMP error packet is
generated possibly and sent back to the source node of the IP packet. The source
node corrects the reported error.
2. Configure TCPv6.
TCPv6 is based on IPv6. TCPv6 has the same functions as TCPv4, so this manual
does not cover those functions again.
1-2
Command Function
Command Function
1-3
4. Maintain IPv6.
Command Function
1-4
Command Function
1-5
1-6
Note:
Features such as IP Security Protocol (IPSec) and QoS have been specified for both
versions of IP.
Internet Protocol Version 6 (IPv6) features a huge address capacity up to 128 bits, which
is described as follows:
l It provides 2128 different IPv6 addresses, that is, the
number of the allocable addresses around the world is
340,282,366,920,938,463,463,374,607,431,768,211,456.
l It provides 2.2*1020 addresses per cm2 if addresses are allocated based on ground
area.
2-1
IPv6 header is simpler than IPv4 header in structure because many fields in IPv4 header
that are not frequently used are deleted from IPv6 header, and are put into its options and
header extension, which are defined more strictly.
l IPv4 contains ten fields with fixed length, two address spaces and some options, while
IPv6 contains only six fields and two address spaces.
l Although IPv6 header occupies 40 bytes, which is 1.6 times of IPv4 header with
24-bytes, it does not consume too much memory capacity due to its fixed length (the
length of the IPv4 header is variable).
l The following six fields are deleted from IPv4 header: header length, type of service,
identifier, flags, fragmented offsets and header checksum. Names and some functions
of the three fields of total length, protocol and Time to Live (TTL) are changed, and
its optional functions are completely changed. Apart from this, two fields are added:
traffic type and flow label.
l IPv6 header format is greatly simplified, which effectively pares down overhead of
processing headers by a router or switch. At the same time, IPv6 enhances the
2-2
support to the extension header and options, which not only allows more efficient
forwarding, but also provides sufficient support for future loading of new applications
to networks. Each IPv6 packet can have 0, 1 or more extension headers. Each
extension header is determined by the "next header" domain of the previous header.
2-3
Note:
The hex number in [] in this table refers to the starting and ending hex numbers of the
corresponding address.
Broadcast address in IPv6 is not valid any more. RFC defines three types of IPv6 address:
l Unicast
It is the identifier of a single interface. The packets sent to a unicast address are
transmitted to the interface with this address identifier.
l Multicast
l Anycast
It is the identifier of a group of interfaces. These interfaces belong to different nodes.
The packets sent to an anycast address are transmitted to an interface with this
address identifier (selecting the nearest one by calculating the distance based on
routing protocol).
An IPv6 unicast address can be regarded as an entity with two fields. One field is used
to identify networks and the other is used to identify interfaces of nodes on this network.
In the subsequent description of the specific unicast address types, the user finds that
the network identifier can be divided into several parts, each of which identifies different
network parts.
Unicast Address
Functions of an IPv6 unicast address are subject to Classless Inter-Domain Routing
(CIDR), which is the same as that of an IPv4 address. That is, an address is divided into
two parts upon a specific boundary. The high bit part of an address includes a prefix for
routing and the low bit part includes identifiers of network interfaces.
In the IPv6 addressing system structure, any IPv6 unicast address requires an interface
identifier. An interface identifier is very similar to the 48-bit Media Access Control (MAC)
address. The MAC addresses are encoded through hardware in a network interface card.
They are burned by the manufacturer into a network interface card and are globally unique.
2-4
There are no two network interface cards with an identical MAC address. Such addresses
can be used to uniquely identify the interfaces at the network link-layer.
The interface identifier of an IPv6 host address is based on the Institute of Electrical and
Electronics Engineers (IEEE) EUI-64 format, which creates a locally and globally unique
64-bit interface identifier based on the existing MAC addresses.
These 64-bit interface identifiers can address one by one globally and can uniquely identify
the interface of each network. This means that, in theory, there are up to 264 different
physical interfaces and about 1.8 x 1019 different addresses, which, however, only occupy
half of the IPv6 address space. It is enough in the foreseeable future at least.
The IPv6 unicast address can be classified into the following categories:
3 13 8 24 16 64
FP field
This is the 3-bit format prefix in an IPv6 address, indicating to which address
category in the IPv6 address space this address belongs. Currently, the field is
001, indicating this is an aggregatable global unicast address.
TLA ID field
This is the top-level aggregation identifier, including the routing information about
the addresses at the highest level. Here, it refers to the routing information with
the most hosts in network interconnection. Currently, this field is 13 bits and can
obtain at most 8,192 different top level routes.
RES field
2-5
This is an 8-bit field and reserved for future use. It is likely to be used for extending
the top- or next-level aggregation identifier field.
NLA ID field
This is the next-level aggregation identifier with 24 bits. This identifier is used
by some institutions (including large-size ISPs and other institutions that provide
public network access) to control the top-level aggregation for address space
arrangement.
Such institutions can divide this 24-bit field for use in accordance with their own
addressing hierarchical structures. In this way, an entity can divide two bits of
address space into four internal top-level routes, and allocate the other 22 bits of
address space to other entities (for example, a small local ISP).
When these entities obtain enough address space, they can subdivide the obtained
space in the same way as mentioned above.
SLA ID field
This is the site aggregation identifier and is used by some institutions to arrange
their internal network structures. Each institution can create its own internal
hierarchical network structure in the same way as that of IPv4.
When the 16-bit field is dedicated to the plane address space, there are at most
65,535 different subnets available. If the first eight bits are used for the internal
advanced routing of this institution, then there will be 255 advanced subnets
available, and each advanced subnet can have up to 255 sub-subnets.
Interface identifier field
This is a 64-bit field, containing 64-bit values of the IEEE EUI-64 interface
identifier.
l Special Address & Reserved Address
In the first 1/256 IPv6 address space, the first 8 bits 0000 0000 of all the addresses
are reserved. Most of the vacant address spaces are used for special addresses,
including:
Undesignated address
Loopback address
In IPv4, the loopback address is defined as 127.0.0.1. Any packet that sends a
loopback address must be sent to a network interface through a protocol stack,
instead of being sent to the network link. The network interface itself should
2-6
accept these packets in the same way as it receives packets from external nodes,
and transmits them back to the protocol stack.
The loopback function is used for software test and configuration. Except the
lowest bit, all the other bits of an IPv6 loopback address are 0, that is, a loopback
address can be expressed as 0:0:0:0:0:0:0:1 or ::1.
IPv6 address embedded with IPv4 address
IPv6 provides two kinds of addresses. One is the IPv4-compatible address, which
allows the IPv6 node to access IPv4 nodes that do not support IPv6.. The other is
the IPv4-mapping address, which allows the IPv6 router to transmit IPv6 packets
over the IPv4 network in tunnel mode, where the nodes understand both IPv4
and IPv6.
The high-order 80 bits of these two kinds of addresses are all set to zeros, and
the low-order 32 bits contain the IPv4 address. If the middle 16 bits of an address
are set to FFFF, it indicates that this address is the IPv6 address mapping to IPv4
address. Table 2-3 lists the address structures of these two kinds of addresses.
Table 2-3 Structure of the IPv6 Address Embedded With IPv4 Address
80 16 32
80 16 32
Link-local Address
10 54 64
2-7
Site-local Address
10 38 16 64
Link-local addresses are used in a single network link for host numbering. The address
identified by the first ten bits of the prefix is the link-local address. Routers do not
process the packets with link-local addresses at their source end and destination end
because they never forward these packets.
The middle 54 bits of this address are set to zero, its 64-bit interface identifier is in the
same IEEE structure as mentioned in the foregoing paragraphs, and the part of this
address space allows some networks to connect up to 264-1 hosts.
Link-local addresses are used for the single network link and site-local addresses are
used for sites. It means that site-local addresses can be used to transmit data in the
interconnected networks but cannot be directly routed to the global Internet from a
site.
Routers within a site can only forward packets within the site instead of forwarding
them outside of the site. The 10-bit prefix of a site-local address is immediately
followed by a succession of zeros, which is slightly different from that of a link-local
address. The subnet identifier of a site-local address is 16-bit, and its interface
identifier is still the 64-bit IEEE-based address.
Note that the special behavior of site-local addresses has been removed from RFC.
Addresses such as fec0::/10 need to be treated as common unicast addresses.
l Open Systems Interconnection (OSI) Network Service Access Point (NSAP) Address
and Internetwork Packet Exchange (IPX) Address
One of the IPv6 objectives is to unify the whole network world for among IP, IPX, and
OSI networks. To support this interoperatability, IPv6 reserves 1/128 address space
for OSI NSAP address and network IPX address respectively.
At present, the IPX addresses have not been precisely defined. Refer to RFC for
description of the NSAP address allocation.
Multicast Address
The format of the IPv6 multicast address is different from that of the IPv6 unicast address.
Multicast addresses can only be used as destination addresses. No packet uses a
multicast address as the source address. Table 2-5 lists the format of a multicast address.
8 4 4 112
2-8
The first byte of the address format is set to full-one, identifying it as a multicast address.
The multicast address occupies the entire 1/256 of the IPv6 address space. The other
parts except the first byte of the multicast address format contain the following three fields:
l Flags field
This field consists of four single bit flags. Currently, only bit-4 is designated to indicate
that whether this address is a well-known multicast address designated by the Internet
numbering institution, or a temporary multicast address used in a specific occasion.
If this flag bit is set to zero, it indicates that this address is a well-known address. If
this flag bit is set to one, it indicates that this address is a temporary address. The
other three flag bits are reserved for future use. The initialization value is 0.
l Scope field
This is a 4-bit field and is used to indicate the range of multicast. That is, whether
a multicast group only includes nodes within the same local network, the same site
or the same institution, or includes nodes that resides anywhere in the IPv6 global
address space. The possible values 4-bits value ranges from 0 to 15. Table 2-6 lists
the corresponding range.
0 0 Reserved
1 1 Node-local range
2 2 Link-local range
3 3 Reserved
4 4 Management-local range
5 5 Site-local range
6 6 Unallocated
7 7 Unallocated
8 8 Institution-local range
9 9 Unallocated
10 A Unallocated
11 B Unallocated
12 C Unallocated
13 D Unallocated
14 E Global range
15 F Reserved
l Group ID field
2-9
The 112-bit multicast ID field identifies a multicast group within a specified range
permanently or temporarily.
Anycast Address
A multicast address can be shared by many nodes in a sense. All the nodes of the
members of a multicast address expect to receive all the packets sent to this address. A
router connecting to five different local Ethernet networks should forward a copy of these
multicast packets to each network respectively (supposing at least one node of each
network subscribers to this multicast address).
Anycast addresses are similar to multicast addresses. Although the two are in the same
case that an anycast address can be shared by multiple nodes, only one node of an anycast
address expects to receive the packet sent to the anycast address.
Anycast addresses are allocated outside of the normal IPv6 unicast address space.
Anycast addresses cannot be distinguished from unicast addresses in their forms, and
each member of an anycast address should be explicitly configured to identify an anycast
address.
An IPv4 address is expressed as a group of four 2-bit hex integers or four 8-bit binary
integers, of which the latter one is seldom used.
The length of an IPv6 address is four times greater than an IPv4 address, and the
complicacy of expression for an IPv6 address is also four times greater than an IPv4
address. An IPv6 address can be basically expressed as X:X:X:X:X:X:X:X, among which
X is 4-bit hex integers (16-bit). Each number contains four bits, each integer contains four
numbers and each address contains eight integers. There are totally 128 bits (4 x 4 x 8 =
128). The following are some legal IPv6 addresses:
CDCD: 910A:2222:5498:8475:1111:3900:2020
1030:0:0:0:C9B4:FF12:48AA:1A2B
2000:0:0:0:0:0:0:1
2-10
All these integers are hex integers and those from A to F represent 10 to 15. Each integer
of an address must be indicated except for the starting zero. This is a relatively standard
way to express an IPv6 address. Apart from this, there are two more ways that are clearer
and easier to use.
Some IPv6 addresses contain a succession of zeros, similar to the second and the third
examples as mentioned above. In this case, the succession of zeros can be represented
by "pacing", as provided in the relevant standard.
That is to say, the address 2000:0:0:0:0:0:0:1 can be expressed as 2000::1, of which the
two colons mean that the address can be extended to a complete 128-bit address. In this
method, only when the 16-bit group is all-zero, can it be substituted by two colons, which
can only be used once in the address.
Table 2-7 lists examples for compressed formats of IPv6 addresses.
In the environment mixed with IPv4 and IPv6, there may be a third way. The least
significant 32-bit in an IPv6 address can be used to express an IPv4 address in a mixed
way: X:X:X:X:X:X:d.d.d.d, among which X represents a 16-bit and d indicates a 8-bit
decimal integer.
For example, the address 0:0:0:0:0:0:10.0.0.1 is a legal IPv4 address. Therefore, this
address is expressed as: 10.0.0.1 by combining the two possible expressions.
An IPv6 address consists of two parts: subnet prefix and interface identifier. An IP node
address is expected to be expressed in a way similar to that of a CIDR address, as an
address carrying an extra value, indicating how many bits of the address is the mask.
An IPv6 node address indicates the length of a prefix by separating the length from the
IPv6 address with a slash.
For example, in the address of
1030:0:0:0:C9B4:FF12:48AA:1A2B/60, the length of the prefix for routing is 60-bits
2-11
2-12
For the stateless auto configuration, the local link must support multicast. The network
interface must be able to send and receive multicast packets. In the stateless auto
configuration process, the relevant nodes must meet the following requirements.
l A node for auto configuration must determine its own link-local address.
l Authenticate this link-local address to make sure that it is unique in the link.
l The node must determine the information to be configured. Such information can be
the IP address of this node, other configuration information, or both of them. In case
an IP address is needed, the node must determine whether to obtain it through the
stateless auto configuration or through the state auto configuration.
The procedure is as follows:
1. In the stateless auto configuration process, the host adds its network adapter MAC
address after the 1111111010 prefix of the link-local address to create a link-local
unicast address.
IEEE has modified the network adapter MAC address from 48-bit to 64-bit. If the
network adapter MAC address used by the host is still 48-bit, the IPv6 network adapter
driver will convert the 48-bit MAC address to the 64-bit MAC address in accordance
with an IEEE formula.
2. The host sends a neighbor discovery request to the address to check whether the
address is unique.
If there is no response to the request, it indicates that the link-local unicast address
configured by the host itself is unique. Otherwise, the host will use an interface ID
randomly created to form a new link-local unicast address.
3. Taking the address as the source address, the host sends a router solicitation in the
multicast way to all the routers within the local link to request configuration information.
Routers respond to it with a router advertisement containing the prefix of an aggregable
global unicast address and other relevant configuration information.
The host automatically uses the global address prefix obtained from routers and its
own interface ID to automatically configure a global address to communicate with other
hosts within the Internet.
Steps
1. Configure IPv6 address.
2-13
<ipv6-address>: address configured for the interface. The address format (<X:X::X:X>)
follows the RFC specifications. IPv6 addresses consist of groups of 16bit
hexadeciaml values separated by colons (:). You can also use a simplified form
supported by RFC.
<prefix-length>: prefix length of the IPv6 address, which is a decimal number (1128)
indicating how many bits from the utmost left of the IPv6 address are the address
prefix.
<X:X::X:X>: link-local address, which must be assigned with the prefix fe80::/64.
Command Function
Command Function
ZXR10#show ipv6 interface <interface-name> Displays details about the specified IPv6
interface.
ZXR10#show ipv6 interface brief <interface-name> Displays the brief information about the
specified IPv6 address.
End of Steps
2-14
Configuration Flow
1. Configure the IPv6 addresses of the interfaces of R1 and R2.
2. Check the configuration results and ensure that R1 and R2 can successfully ping each
other.
Configuration Commands
Configuration on R1:
R1(config)#interface gei-1/1
R1(config-if-gei-1/1)#no shutdown
R1(config-if-gei-1/1)#ipv6 enable
R1(config-if-gei-1/1)#ipv6 address 3ffe:100::1/64
Or:
R1(config)#interface gei-1/1
R1(config-if-gei-1/1)#no shutdown
R1(config-if-gei-1/1)#ipv6 enable
R1(config-if-gei-1/1)#ipv6 address link-local fe80::1111:2222:3333:4444
R1(config-if-gei-1/1)#exit
Configuration on R2:
R2(config)#interface gei-2/1
R2(config-if-gei-2/1)#no shutdown
R2(config-if-gei-2/1)#ipv6 enable
R2(config-if-gei-2/1)#ipv6 address 3ffe:100::2/64
Or:
R2(config)#interface gei-2/1
R2(config-if-gei-2/1)#no shutdown
R2(config-if-gei-2/1)#ipv6 enable
R2(config-if-gei-2/1)#ipv6 address link-local fe80::5555:6666:7777:8888
R2(config-if-gei-2/1)#exit
2-15
Configuration Verification
Verify the configuration results on R1:
R1#show ipv6 interface brief gei-1/1
gei-1/1 [up/up]
fe80::2d1:d1ff:fe3a:7be1
3ffe:100::1/64
R1#ping6 3ffe:100::2
sending 5,100-byte ICMP echoes to 3ffe:100::2,timeout is 2 seconds.
!!!!!
Success rate is 100 percent(5/5), round-trip min/avg/max= 0/0/0 ms.
2-16
3-1
the routers. Such information helps a host to determine where the packet should be sent.
The host discovers available routers through the RA packet and constructs a list of all the
discovered routers as the default router list.
A host may send an RS packet to inquire router configuration information and router-related
information. A time interval for consecutively sending RA packets has been set on each
router. The interval ranges from several seconds to several minutes. In order to avoid
long waiting time before the configuration information is obtained and the communication
starts, the host may integrate the sending of RS packets as a part of its startup process.
A node can send an NS packet to interpret the link layer address of another node to verify
the reachability of that node and the address uniqueness of a specific link.
A node can send an NA packet as the response to an NS packet. It also sends unsolicited
NA packets to notify its own link layer address changes to other nodes.
When a new address is generated on a node, the node needs to send a neighbor request
to other nodes on the link to enquire whether the address has been used. If the address
has been used, the node using the address responds with an NA packet. If the node
where the address is generated does not receive any response after multiple detections
(the number is configurable), the address becomes valid.
Steps
1. Enters interface configuration mode.
Command Function
Command Function
3-2
Command Function
3-3
Command Function
no-autoconfig: indicates that the hosts on the link cannot use the prefix for IPv6 address
auto configuration.
off-link: indicates that the L bit (Online flag) of the prefix is not set, default: 1. If this
flag is set to 1, it indicates that the prefix can be used to determine whether addresses
are online, that is, all the addresses belonging to this prefix are online if this flag is set
whereas some addresses may be online but the other addresses are offline if this flag
is not set.
3-4
Command Function
<interface>: specifies the subvlan interface. This value is visible only in supervlan
interface mode and must be configured.
Command Function
ZXR10#show nd6 cache[<interface-name>] Displays information from the IPv6 neighbor cache
table. If an interface is added, only the neighbor
cache entries of this interface are displayed.
The display results show not only the entries
generated by the ND protocol for the routes to
neighbors but also static neighbor cache entries.
5. Maintain NDP.
Command Function
3-5
Command Function
End of Steps
Configuration Flow
1. Enter the interface configuration mode, and add a static entry to the neighbor cache
table.
2. Show the content of the neighbor cache table, and check whether the static entry has
been successfully added.
Configuration Commands
Configuration on the router:
ZXR10(config)#interface gei-1/1
ZXR10(config-if-gei-1/1)#no shutdown
ZXR10(config-if-gei-1/1)#nd6 add 780::1 0000.0a00.1345
Configuration Verification
Assume that the echo information on the router before configuration is as follows:
ZXR10#show nd6 cache
Total Cache Number Is:1
Only Current Valid Items Are Shown Below:
Address Link-Address Age Status Interface
3ffe:100::2 0023.e422.1134 23h56m2s Stale gei-1/1
3-6
The result above indicates that a static entry has been successfully added to the NDP
neighbor cache table.
3-7
3-8
4-1
Context
The following issues require attention when configuring static routes:
l For a point-to-point interface, it is only necessary to specify the out-interface for the
static route, because specifying an out-interface also specifies the next hop implicitly.
It is considered that the address on the peer interface connected to the local interface
directly is the next hop address of the route.
l For an Ethernet interface, it is not allowed to specify an Ethernet interface as an
out-interface. In applications, when it is necessary to specify an Ethernet interface
as an out-interface, it is necessary to specify the out-interface first and then specify
the next hop address.
l A static route with an out-interface as a null interface can be applied as a black route.
Traffic matching this route is dropped directly.
Steps
1. Configure IPv6 static route.
Command Function
vrf <vrf-name>: configures static route of the designated Virtual Route Forwarding
Table (VRF), 1 to 32 characters in length. The mng port is used as a special VRF.
<distance>: the administration distance, range: 1 to 255.
metric<cost>, the route metric, range: 1 to 255.
4-2
Command Function
ZXR10(config)#show ipv6 protocol routing static Displays the static routes in the routing
table and the validity of these routes.
ZXR10(config)#show ipv6 forwarding route static Displays information about static routes
in the forwarding table.
End of Steps
4-3
Figure 4-1 Topology Diagram for Configuring a Static IPv6 Route (Direct Next Hop)
Configuration Flow
1. Configure the IPv6 address of the network segment 2005::/64 for the direct connection
between R1 and R2.
2. Configure the IPv6 address of another different network segment 2003::/64 on the
direct connection interface of R2.
3. Add a static route pointing to the network segment 2003::/64 on R1 so that R1 can
successfully ping the network segment 2003::/64 of R2.
Configuration Commands
The configuration on R1 is as follows:
R1(config)#interface gei-2/1
R1(config-if-gei-2/1)#no shutdown
R1(config-if-gei-2/1)#ipv6 enable
R1(config-if-gei-2/1)#ipv6 address 2005::1/64
R1(config-if-gei-2/1)#exit
R1(config)#ipv6 route 2003::/64 2005::2 /*Configure the static route*/
R1(config)#exit
Configuration Verification
On R1, check whether the address has been successfully configured, whether the interface
is in up status, and whether the static route has been successfully added, and then execute
the "ping6 2003::2 command to check whether the ping operation is successful.
R1(config)#show running-config-interface gei-2/1
! <Interface>
interface gei-2/1
4-4
ipv6 enable
ipv6 address 2005::1/64
no shutdown
!
$! </Interface>
4-5
Figure 4-2 Topology Diagram for Configuring a Static IPv6 Route (Indirect Next Hop)
Configuration Flow
1. Configure a static route on R1, with the destination network segment 2003::/64 and
next hop 2005::2.
2. Configure a static route on R1, with the destination network segment 2005::/64 and
next hop 2006::2.
Configuration Commands
Configuration on R1 (IPv6 address configurations on R1, R2, and R3 are omitted)
Configuration Verification
R1#show ipv6 forwarding route static
IPv6 Routing Table:
Headers: Dest: Destination, Gw: Gateway, Pri: Priority;
Codes : K: kernel, I1: isis-l1, SFN: sf-nat64, R: ripng, AF: aftr, B: bgp,
D: direct, I2: isis-l2, SLN: sl-nat64, O: ospfv3, D6: dhcp, P: ppp,
S: static, N: nd, V: vrrp, A: address, M: multicast, UI: user-ipaddr;
Dest Owner Metric
Interface Pri Gw
2003::/64 S 0
gei-2/1 1 2005::2
2005::/64 S 0
gei-2/1 1 2006::2
4-6
Configuration Flow
1. Establish the networking structure, and configure the IPv6 address for the interface,
as shown in Figure 4-3.
2. Configure the default route, and specify the IPv6 address for gei-4/1 on R2.
Configuration Commands
The configuration on R1 is as follows:
R1(config)#interface gei-2/1
R1(config-if-gei-2/1)#no shutdown
R1(config-if-gei-2/1)#ipv6 enable
R1(config-if-gei-2/1)#ipv6 address 2005::1/64
R1(config)#ipv6 route ::/0 2005::2
/*The IPv6 address configuration on R2 is omitted.*/
Configuration Verification
R1(config)#show ipv6 forwarding route
IPv6 Routing Table:
Headers: Dest: Destination, Gw: Gateway, Pri: Priority;
Codes : K: kernel, I1: isis-l1, SFN: sf-nat64, R: ripng, AF: aftr, B: bgp,
D: direct, I2: isis-l2, SLN: sl-nat64, O: ospfv3, D6: dhcp, P: ppp,
S: static, N: nd, V: vrrp, A: address, M: multicast, UI: user-ipaddr;
Dest Owner Metric
Interface Pri Gw
::/0 S 0
gei-2/1 1 2005::2
4-7
Figure 4-4 Networking Diagram for Configuring FRR for Static IPv6 Route in a Public
Network
Configuration Flow
1. On R1, enable the backup route calculation function for static IPv6 routes in the public
network.
2. Configure a static IPv6 route as the active route.
3. Configure a static IPv6 route as the standby route. Its destination address and mask
must be the same with those of the active route. The priority or metric of the standby
route must be lower than that of the active route. The active and standby routes must
have different outgoing interfaces.
Configuration Commands
Configuration on R1:
R1(config)#interface gei-1/3
R1(config-if-gei-1/3)#no shutdown
R1(config-if-gei-1/3)#ipv6 enable
R1(config-if-gei-1/3)#ipv6 address 300::1/56
R1(config-if-gei-1/3)#exit
R1(config)#interface gei-5/5
R1(config-if-gei-5/5)#no shutdown
R1(config-if-gei-5/5)#ipv6 enable
R1(config-if-gei-5/5)#ipv6 address 500::1/56
R1(config-if-gei-5/5)#exit
R1(config)#ipv6 route-static fast-reroute /*Enable the FRR function.*/
R1(config)#ipv6 route 1234::1/128 500::2
R1(config)#ipv6 route 1234::1/128 300::2 10
Configuration on R3:
R3(config)#interface gei-1/3
R3(config-if-gei-1/3)#no shutdown
R3(config-if-gei-1/3)#ipv6 enable
R3(config-if-gei-1/3)#ipv6 address 300::2/56
R3(config-if-gei-1/3)#exit
R3(config)#interface gei-1/4
R3(config-if-gei-1/4)#no shutdown
R3(config-if-gei-1/4)#ipv6 enable
R3(config-if-gei-1/4)#ipv6 address 400::2/56
R3(config-if-gei-1/4)#exit
4-8
Configuration on R2:
R2(config)#interface gei-5/3
R2(config-if-gei-5/3)#no shutdown
R2(config-if-gei-5/3)#ipv6 enable
R2(config-if-gei-5/3)#ipv6 address 400::3/56
R2(config-if-gei-5/3)#exit
R2(config)#interface gei-3/5
R2(config-if-gei-3/5)#no shutdown
R2(config-if-gei-3/5)#ipv6 enable
R2(config-if-gei-3/5)#ipv6 address 500::2/56
R2(config-if-gei-3/5)#exit
R2(config)#interface loopback5
R2(config-if-loopback5)#ipv6 enable
R2(config-if-loopback5)#ipv6 address 1234::1/128
R2(config-if-loopback5)#exit
Configuration Verification
The FRR configuration on R1 is verified as follows:
4-9
Figure 4-5 Networking Diagram for Configuring FRR for Static IPv6 Route in a Private
Network
Configuration Flow
1. Configure VRF, and enable the v6 address family of VRF.
2. On R1, enable the backup route calculation function for static IPv6 routes in a private
network.
3. Configure a static IPv6 route as the active route in the private network.
4. Configure a static IPv6 route as the standby route. Its VRF, destination address, and
mask must be the same with those of the active route. The priority or metric of the
standby route must be lower than that of the active route. The active and standby
routes must have different outgoing interfaces.
Configuration Commands
Configuration on R1:
R1(config)#interface gei-1/3
R1(config-if-gei-1/3)#no shutdown
R1(config-if-gei-1/3)#ip vrf forwarding vpn
R1(config-if-gei-1/3)#ipv6 enable
R1(config-if-gei-1/3)#ipv6 address 300::1/56
R1(config-if-gei-1/3)#exit
R1(config)#interface gei-5/1
R1(config-if-gei-5/1)#no shutdown
4-10
Configuration on R2:
R2(config)#interface gei-1/3
R2(config-if-gei-1/3)#no shutdown
R2(config-if-gei-1/3)#ipv6 enable
R2(config-if-gei-1/3)#ipv6 address 300::2/56
R2(config-if-gei-1/3)#exit
R2(config)#interface gei-1/8
R2(config-if-gei-1/8)#no shutdown
R2(config-if-gei-1/8)#ipv6 enable
R2(config-if-gei-1/8)#ipv6 address 500::2/56
R2(config-if-gei-1/8)#exit
R2(config)#interface loopback5
R2(config-if-loopback5)#ipv6 enable
R2(config-if-loopback5)#ipv6 address 1234::1/128
R2(config-if-loopback5)#exit
Configuration Verification
The configuration on R1 is verified as follows:
4-11
Configuration Flow
1. Configure interface addresses. Configure IPv6 addresses on the directly connected
interfaces on R1 and R2, and loopback interface address on R2.
2. Configure two static IPv6 routes on R1 to the peer loopback interface address.
Configure the addresses of the peer end interfaces that are connected directly as the
next hop addresses of the two routes. Two static IPv6 routes must have the same
distance value and metric value.
3. The default load sharing mode is the per-flow load sharing, and it can be modified to
the per-packet load sharing mode.
Configuration Commands
Configuration on R1:
R1(config)#interface gei-1/1
R1(config-if-gei-1/1)#no shutdown
R1(config-if-gei-1/1)#ipv6 enable
R1(config-if-gei-1/1)#ipv6 address 300::1/56
R1(config-if-gei-1/1)#ip load-sharing per-packet
/*Selecting the per-packet load sharing mode*/
R1(config-if-gei-1/1)#exit
R1(config)#interface gei-1/2
R1(config-if-gei-1/2)#no shutdown
R1(config-if-gei-1/2)#ipv6 enable
R1(config-if-gei-1/2)#ipv6 address 500::1/56
R1(config-if-gei-1/2)# ip load-sharing per-packet
4-12
Configuration on R2:
R2(config)#interface gei-2/1
R2(config-if-gei-2/1)#no shutdown
R2(config-if-gei-2/1)#ipv6 enable
R2(config-if-gei-2/1)#ipv6 address 300::2/56
R2(config-if-gei-2/1)#exit
R2(config)#interface gei-2/2
R2(config-if-gei-2/2)#no shutdown
R2(config-if-gei-2/2)#ipv6 enable
R2(config-if-gei-2/2)#ipv6 address 500::2/56
R2(config-if-gei-2/2)#exit
R2(config)#interface loopback5
R2(config-if-loopback5)#ipv6 enable
R2(config-if-loopback5)#ipv6 address 1234::1/128
R2(config-if-loopback5)#exit
Configuration Verification
Run the show ipv6 forwarding route command to display the route forwarding table on R1:
The above result indicates that there are two next hops to destination 1234::1/128, 300::2
and 500::2 respectively. Outgoing interfaces are gei-1/1 and gei-1/2. Load sharing is
implemented.
4-13
Figure 4-7 Networking Diagram of the BFD Source-End Next-Hop of IPv6 Static Route
Configuration Flow
1. On R4, configure the address of the interface directly connected to R1, address of the
interface directly connected to R3, loopback interface address, and a static IPv6 route
to the loopback interface address on R2. Enable the BFD function of the static IPv6
route, and configure the next hop of the BFD source side of the static IPv6 route.
2. On R1, configure the address of the interface directly connected to R4, address of the
interface directly connected to R2, and a static IPv6 route to the loopback address on
R2.
3. On R3, configure the address of the interface directly connected to R4, address of the
interface directly connected to R2, and a static IPv6 route to the loopback address on
R2.
4. On R2, configure the address of the interface directly connected to R1, address of the
interface directly connected to R3, loopback interface address, a static IPv6 route to
the loopback address on R4. Enable the BFD function of the static IPv6 route, and
configure the next hop of the BFD source side of the static IPv6 route.
4-14
Configuration Commands
Configuration on R4:
R4(config)#interface gei-1/1
R4(config-if-gei-1/1)#no shutdown
R4(config-if-gei-1/1)#ipv6 enable
R4(config-if-gei-1/1)#ipv6 address 100::1/56
R4(config-if-gei-1/1)#exit
R4(config)#interface gei-1/2
R4(config-if-gei-1/2)#no shutdown
R4(config-if-gei-1/2)#ipv6 enable
R4(config-if-gei-1/2)#ipv6 address 20::1/56
R4(config-if-gei-1/2)#exit
R4(config)#interface loopback1
R4(config-if-loopback1)#ipv6 enable
R4(config-if-loopback1)#ipv6 address 1002::1/128
R4(config-if-loopback1)#exit
R4(config)#ipv6 route 123::1/128 100::2
R4(config)#ipv6 route 123::1/128 200::2
R4(config)#ipv6 route 1234::1/128 123::1 bfd enable
R4(config)#ipv6 route nexthop source loopback1
Configuration on R1:
R1(config)#interface gei-1/1
R1(config-if-gei-1/1)#no shutdown
R1(config-if-gei-1/1)#ipv6 enable
R1(config-if-gei-1/1)#ipv6 address 100::2/56
R1(config-if-gei-1/1)#exit
R1(config)#interface gei-1/2
R1(config-if-gei-1/2)#no shutdown
R1(config-if-gei-1/2)#ipv6 enable
R1(config-if-gei-1/2)#ipv6 address 200::1/56
R1(config-if-gei-1/2)#exit
R1(config)#ipv6 route 123::1/128 200::2
R1(config)#ipv6 route 1002::1/128 100::1
Configuration on R3:
R3(config)#interface gei-1/1
R3(config-if-gei-1/1)#no shutdown
R3(config-if-gei-1/1)#ipv6 enable
R3(config-if-gei-1/1)#ipv6 address 300::1/56
R3(config-if-gei-1/1)#exit
R3(config)#interface gei-1/2
R3(config-if-gei-1/2)#no shutdown
R3(config-if-gei-1/2)#ipv6 enable
R3(config-if-gei-1/2)#ipv6 address 20::2/56
4-15
R3(config-if-gei-1/2)#exit
R3(config)#ipv6 route 123::1/128 300::2
R3(config)#ipv6 route 1002::1/128 20::1
Configuration on R2:
R2(config)#interface gei-1/1
R2(config-if-gei-1/1)#no shutdown
R2(config-if-gei-1/1)#ipv6 enable
R2(config-if-gei-1/1)#ipv6 address 300::2/56
R2(config-if-gei-1/1)#exit
R2(config)#interface gei-1/2
R2(config-if-gei-1/2)#no shutdown
R2(config-if-gei-1/2)#ipv6 enable
R2(config-if-gei-1/2)#ipv6 address 200::2/56
R2(config-if-gei-1/2)#exit
R2(config)#interface loopback1
R2(config-if-loopback1)#ipv6 enable
R2(config-if-loopback1)#ipv6 address 123::1/128
R2(config-if-loopback1)#exit
R2(config)#ipv6 route 1002::1/128 200::1
R2(config)#ipv6 route 1002::1/128 300::1
R2(config)#ipv6 route 1234::1/128 1002::1 bfd enable
R2(config)#ipv6 route nexthop source loopback1
Configuration Verification
Run the show bfd neighbors ip brief command to display BFD session information on R2:
The above result indicates that the multi-hop BFD session between R2 and R4 was created
successfully. The peer end address of the BFD session on R2 is the configured next
hop address, and the local address is the loopback1 address of the source-end interface
specified on the local router.
4-16
RIPv1 is designed for use in subnet-free networks and thus does not involve
the subnet mask concept. For this reason, RIPv1 cannot be used to propagate
variable-length subnet addresses or CIDR classless addresses. The support for
subnet routing is added to RIPv2, so it can use subnet masks to distinguish between
network routes and subnet routes.
IPv6 address prefixes have express meanings. Therefore, RIPng no longer involves
the subnet mask concept but uses the prefix length instead. Similarly, due to the use
5-1
5-2
Steps
1. Enter RIPng configuration mode.
Command Function
Command Function
<update>: specifies the periodic packet sending interval (in seconds), range: 5 to
65535, default: 30.
<timeout>: specifies the time (in seconds) for the route to become invalid, range: 5 to
65535, default: 180.
<garbage>: specifies the time period (in seconds) from the time when the route
becomes invalid to the time when the route is deleted, range: 5 to 65535, default:
120.
in | out: specifies the route as a receiving/transmitting route.
3. Configures the summarized RIPng routes and the redistribution of protocol routes.
Command Function
<protocol>: specifies the name of the protocol whose routes are redistributed.
<metric-value>: specifies the metric for the redistributed routes, range: 1 to 16.
5-3
<map-tag>: specifies the route map used for protocol route redistribution.
Command Function
5-4
Command Function
ZXR10(config)#show ipv6 rip [vrf <vrf-name>] Displays the content of the RIPng
protocol.
ZXR10(config)#show ipv6 rip database [{X:X::X:X/<0~128 Displays the RIP route database
>|<X:X::X:X>}][vrf <vrf-name>] information.
Command Function
ZXR10(config)#clear ipv6 rip route [vrf <vrf-name Deletes the routes received by
>]{<X:X::X:X>/<0~128>| all} RIPng.
Users can delete all the received
routes or a certain route only.
End of Steps
Configuration Flow
1. Enable the IPv6 protocol on the interfaces and configure IPv6 addresses.
2. Configure the RIPng protocol.
3. Enable the RIPng-related configurations on the interfaces.
5-5
Configuration Commands
Configuration on R1:
R1(config)#interface gei-3/6
R1(config-if-gei-3/6)#ipv6 enable
R1(config-if-gei-3/6)#ipv6 address 3611::11/64
R1(config-if-gei-3/6)#no shutdown
R1(config-if-gei-3/6)#exit
R1(config)#interface gei-3/1
R1(config-if-gei-3/1)#ipv6 enable
R1(config-if-gei-3/1)#ipv6 address 2310::66/64
R1(config-if-gei-3/1)#no shutdown
R1(config-if-gei-3/1)#exit
R1(config)#interface loopback5
R1(config-if-loopback5)#ipv6 enable
R1(config-if-loopback5)#ipv6 address 3555::52/64
R1(config-if-loopback5)#exit
Configuration on R2:
R2(config)#interface gei-1/3
R2(config-if-gei-1/3)#ipv6 enable
R2(config-if-gei-1/3)#ipv6 address 3611::10/64
R2(config-if-gei-1/3)#no shutdown
R2(config-if-gei-1/3)#exit
R2(config)#interface gei-1/5
R2(config-if-gei-1/5)#ipv6 enable
R2(config-if-gei-1/5)#ipv6 address 2352::52/64
R2(config-if-gei-1/5)#no shutdown
R2(config-if-gei-1/5)#exit
R2(config)#interface loopback5
5-6
R2(config-if-loopback5)#ipv6 enable
R2(config-if-loopback5)#ipv6 address 3550::52/64
R2(config-if-loopback5)#exit
Configuration Verification
Execute the show running-config ripng command on R1 and R2 to check the RIPng
configuration information, and execute the show ipv6 forwarding route ripng command to
check the route information.
Check the route information on R1:
R1#show running-config ripng
! <RIPNG>
ipv6 router rip
redistribute connected
interface gei-3/6
ipv6 rip enable
$
interface loopback5
ipv6 rip enable
$
$
! </RIPNG>
5-7
redistribute connected
5-8
R1#ping6 2352::52
sending 5,100-byte ICMP echoes to 2352::52,timeout is 2 seconds.
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max= 0/0/0 ms.
5-9
R2#ping6 2310::66
sending 5,100-byte ICMP echoes to 2310::66,timeout is 2 seconds.
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max= 0/0/0 ms.
5-10
Configuration Flow
1. Establish the networking structure and configure the IPv6 address for the interface,
see Figure 5-2.
2. Enable the RIPng protocol for the interface on R1.
3. Configure the loopback address on R2, collect the route and notify R1.
Configuration Commands
The configuration of R1 is as follows:
R1(config)#interface gei-3/6
R1(config-if-gei-3/6)#ipv6 enable
R1(config-if-gei-3/6)#ipv6 address 3611::11/64
R1(config-if-gei-3/6)#no shutdown
R1(config-if-gei-3/6)#exit
R1(config)#ipv6 router rip
R1(config-ripng)#interface gei-3/6
R1(config-ripng-if-gei-3/6)#ipv6 rip enable
R2(config)#interface gei-1/3
R2(config-if-gei-1/3)#ipv6 enable
R2(config-if-gei-1/3)#ipv6 address 3611::10/64
R2(config-if-gei-1/3)#no shutdown
R2(config-if-gei-1/3)#exit
R2(config)#interface loopback5
R2(config-if-loopback5)#ipv6 enable
R2(config-if-loopback5)#ipv6 address 2001:db8:0:10::/64
R2(config-if-loopback5)#exit
R2(config)#interface loopback4
R2(config-if-loopback4)#ipv6 enable
R2(config-if-loopback4)#ipv6 address 2001:db8:0:11::/64
R2(config-if-loopback4)#exit
R2(config)#interface loopback3
R2(config-if-loopback3)#ipv6 enable
R2(config-if-loopback3)#ipv6 address 2001:db8:0:12::/64
R2(config-if-loopback3)#exit
R2(config)#ipv6 router rip
5-11
R2(config-ripng)#interface gei-1/3
R2(config-ripng-gei-1/3)#ipv6 rip enable
R2(config-ripng-gei-1/3)#exit
R2(config-ripng)#summary-prefix 2001:db8:0:10::/62
/*collect several routers of loopback together*/
Configuration Verification
The RIPng route learnt from R1 is as follows:
5-12
With the construction of IPv6 networks, dynamic routing protocols are also required to
provide accurate and valid routing information for IPv6 packet forwarding. For this reason,
IETF revised OSPFv2 for IPv6 networks and developed OSPFv3. OSPFv3 is mostly used
in IPv6 networks to provide the routing function. It is a mainstream routing protocol applied
in IPv6 networks.
The IPv6 OSPF protocol is OSPFv3, and the IPv4 OSPF protocol is OSPFv2.
The IPv6 OSPF keeps the majority of IPv4 algorithms. The essential OSPF mechanism
remains unchanged from IPv4 to IPv6.
Both OSPFv3 and OSPFv2 have a link status database. The Link Status Advertisement
(LSA) is contained in the link status database, and the link status databases of all routers
in the same area must be kept synchronous.
Database synchronization is implemented through the database exchange process, which
includes exchanging database description packets, link state request packets and link state
update packets. The subsequent database synchronization is maintained through flooding
with link state update packets and link state acknowledgment packets.
OSPFv3 and OSPFv2 also maintain consistency with each other in such aspects as
neighbor determination, basic concept of inter-area routes, redistribution of Autonomous
System (AS) external routes, and so forth.
6-1
Compared with OSPFv2, OSPFv3 has almost the same working mechanism but has also
revised OSPFv2 to support the IPv6 address format. The following sections describe in
detail the similarities and differences between OSPFv2 and OSPFv3.
l The same packet types: Hello, DD, Link State Packet (LSP), Link State Update (LSU),
LSAck packets.
l The same area division.
l The same LSA flooding and synchronization mechanisms: To guarantee the
correctness of Link-state Database (LSDB) information, the reliable flooding and
synchronization of LSAs must be guaranteed.
l The same route computation method: Both use the Shortest Path First (SPF)
algorithm to compute routes.
l The same network types: Both support four network types, i.e. broadcast, NBMA,
point-to-point, point-to-multipoint.
l The same neighbor discovery and neighbor establishment mechanisms: After an
OSPF router is started, it sends a Hello packet via the OSPF interface to another
OSPF router. Upon receipt of the Hello packet, the latter OSPF router checks the
parameters defined in the packet. If the parameters in the received packet are the
same as those in its own packet, adjacency is established between the two routers.
Two routers in an adjacency relationship do not necessarily become neighbors. This
depends on the network type. The two routers become real neighbors only when
they have successfully exchanged the DD packet and the LSA and their LSDBs are
synchronized with each other.
l The same DR election mechanism: The DR and BDR need to be elected in NBMA
and broadcast networks.
IPv6 uses the term "link" to describe the facilities or mediums used by nodes for
communications over the link layer. Nodes are connected with links. Multiple IP
subnets can be attached to the same link. Two nodes in different IP subnets can
communicate with each other directly over a single link.
The OSPFv3 packet contains no IPv6 address except for the LSA payload carried in
a link state update packet. The router LSA and network LSA do not contain network
addresses but only indicate topology information. The OSPF router ID and the LSA
ID are reserved as 32-bit IPv4 addresses and not assigned with any IPv6 address.
6-2
6-3
To process the router LSA during SPF computation, two flag bits R and V6 are
added to the options field. The OSPF header contains an Example ID, thus
allowing the operation of multiple OSPF protocol instances over a single link.
LSA Types
An LSA is the unit to construct the OSPFv3 link state database. A router uses LSAs to
form a complete network topology and further generate a routing table. OSPFv3 has the
following types of LSAs.
l Router LSA
Its link state type is 0x2001. It can generate one or multiple LSAs on each router
within an area.
l Network LSA
Its link state type is 0x2002. It can generate network LSAs for each broadcast and
NBMA link within an area, which supports two or multiple routers. Network LSAs are
created by DR on this link.
Its link state type is 0x2003. It is equivalent to the Type-3 LSA in OSPFv2. Created by
an area border router, the inter-area prefix router LSA describes IPv6 address prefixes
in other areas. For stub areas, inter-area prefix LSA can also be used to describe the
default route.
l Inter-Area router LSA
Its link state type is 0x2004. It is equivalent to the Type-4 LSA in IPv4. Created by the
ABR, it describes the ASBR to other areas.
l AS external LSA
Its link state type is 0x4005. It is created by the ASBR and describes the ASBR to
other areas.
l Link LSA
Its link state type is 0x0008. A router advertises a separate link LSA to each link
connecting with it. These LSAs have a local link flooding range and will not be flooded
out of the related link.
Its link state type is 0x2009. A router uses the intra-area prefix LSA to advertise
one or multiple IPv6 address prefixes, which are associated with the router itself, the
connected stub network segment or the connected transit network segment.
Two types of LSAs are added to OSPFv3. They are the Link LSA and the Intra Area
Prefix LSA. Table 6-1 lists the brief similarities and differences between OSPFv3 LSAs
and OSPFv2 LSAs.
6-4
Table 6-1 Similarities and Differences Between OSPFv3 LSAs and OSPFv2 LSAs
Router LSA Router LSA The name is the same and the function
is similar, except that the LSA no longer
Network LSA Network LSA
describes address information but is used
only to describe the topology structure of
the routing area.
Network Summary LSA Inter Area Prefix LSA The function is similar but the name is
ASBR Summary LSA Inter Area Router LSA different.
AS External LSA AS External LSA Both the function and the name are
completely the same.
Steps
1. Enable OSPFv3.
6-5
Command Function
6-6
Command Function
hello-interval <seconds>: specifies the interval (in seconds) at which Hello packets
are sent on the virtual link, range: 1 to 8192, default: 10.
dead-interval <seconds>: specifies the dead interval (in seconds) of neighbors on the
virtual link, range: 1 to 8192, default: 40.
transmit-delay <seconds>: specifies the delay (in seconds) after which a link state
update packet is transmitted on the virtual link, range: 1 to 8192, default: 1.
<delay>: specifies the delay (in seconds) of route re-computation that follows after
route updates are received, range: 0 to 65535, default: 5.
<holdtime>: specifies the hold time (in seconds), range: 0 to 65535, default: 10.
3. Configure OSPFv3 route summarization, and redistribute routes into OSPFv3 from
other routing protocols.
Command Function
6-7
Command Function
<type>: specifies the metric-type of the redistributed LSA, range: ext-1 or ext-2, default:
ext-2.
tag <number>: sets a tag for a route redistributed to OSPF. Range: 04294967295.
Default: 0.
4. Configure OSPFv3 route load sharing.
6-8
6-9
Command Function
6-10
Command Function
ZXR10(config)#show ipv6 ospf virtual-links Displays the virtual link information about
an OSPFv3 instance.
Command Function
End of Steps
Configuration Flow
1. Enable the IPv6 protocol on the direct connection interfaces of R1 and R2, configure
IPv6 addresses for the direct connection interfaces, configure loopback interfaces,
enable IPv6 on the loopback interfaces, and configure IPv6 addresses for the loopback
interfaces.
2. Configure OSPFv3.
6-11
Configuration Commands
The configuration on R1 is as follows:
R1(config)#interface gei-3/6
R1(config-if-gei-3/6)#no shutdown
R1(config-if-gei-3/6)#ipv6 enable
R1(config-if-gei-3/6)#ipv6 address 3611::11/64
R1(config-if-gei-3/6)#exit
R1(config)#interface loopback5
R1(config-if-loopback5)#ipv6 enable
R1(config-if-loopback5)#ipv6 address 3555::52/64
R1(config-if-loopback5)#exit
R2(config)#interface gei-1/3
R2(config-if-gei-1/3)#no shutdown
R2(config-if-gei-1/3)#ipv6 enable
R2(config-if-gei-1/3)#ipv6 address 3611::10/64
R2(config-if-gei-1/3)#exit
R2(config)#interface loopback5
R2(config-if-loopback5)#ipv6 enable
R2(config-if-loopback5)#ipv6 address 3550::55/64
R2(config-if-loopback5)#exit
6-12
Configuration Verification
After completing the above configuration, run the show ipv6 ospf neighbor command and
the show ipv6 forwarding route command on each router to check the established neighbor
information and route information. Ping the peer loopback interface from each router. If
both routers can ping the loopback interface of the peer router successfully, it means that
the configuration is successful.
R1#ping6 3550::55
sending 5,100-byte ICMP echo(es) to 3550:0:0:0:0:0:0:55,timeout is 2 second(s).
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max= 2/2/3 ms.
6-13
R1#ping6 3550::52
sending 5,100-byte ICMP echo(es) to 3555:0:0:0:0:0:0:52,timeout is 2 second(s).
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max= 2/3/4 ms.
Configuration Flow
1. Enable the IPv6 protocol on each interface, configure IPv6 addresses, configure
loopback interfaces, enable IPv6 on the loopback interfaces, and configure IPv6
addresses for the loopback interfaces.
2. Configure OSPFv3.
3. Add the interfaces to OSPFv3. R1 and R2 establish a link with each other in area 0,
R2 and R3 establish a link with each other in area 10, and R1 redistributes the direct
route.
4. Check and verify the configuration results: Neighbor relationships are correctly
established among the routers, each router can learn the routes advertised by the
other two routers, and each router can ping the loopback interfaces of the other two
routers successfully.
Configuration Commands
The configuration on R1 is as follows:
6-14
R1(config)#interface gei-3/6
R1(config-if-gei-3/6)#no shutdown
R1(config-if-gei-3/6)#ipv6 enable
R1(config-if-gei-3/6)#ipv6 address 3611::11/64
R1(config-if-gei-3/6)#exit
R1(config)#interface loopback5
R1(config-if-loopback5)#ipv6 enable
R1(config-if-loopback5)#ipv6 address 3555::52/64
R1(config-if-loopback5)#exit
R3(config)#interface gei-3/6
6-15
R3(config-if-gei-3/6)#no shutdown
R3(config-if-gei-3/6)#ipv6 enable
R3(config-if-gei-3/6)#ipv6 address 2352::55/64
R3(config-if-gei-3/6)#exit
R3(config)#interface loopback5
R3(config-if-loopback5)#ipv6 enable
R3(config-if-loopback5)#ipv6 address 3500::55/64
R3(config-if-loopback5)#exit
Configuration Verification
After completing the above configuration, run the show ipv6 ospf neighbor command
and the show ipv6 forwarding route command on each router to check the established
neighbour information and route information. Ping the peer loopback interface of each
router. If both routers can ping the loopback interface of the peer router successfully, it
means that the configuration is successful.
Check and verify the configuration result on R1, as shown below.
R1#show running-config ospfv3
! <OSPFV3>
ipv6 router ospf 1
router-id 11.11.11.11
redistribute connected
interface gei-3/6 area 0.0.0.0 instance 0
$
$
! </OSPFV3>
6-16
R1#ping6 3550::52
sending 5,100-byte ICMP echo(es) to 3550:0:0:0:0:0:0:52,timeout is 2 second(s).
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max= 3/3/3 ms.
R1 #ping6 3500::55
sending 5,100-byte ICMP echo(es) to 3500:0:0:0:0:0:0:55,timeout is 2 second(s).
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max= 3/3/3 ms.
6-17
R2#ping6 3555::52
sending 5,100-byte ICMP echo(es) to 3555:0:0:0:0:0:0:52,timeout is 2 second(s).
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max= 2/2/3 ms.
6-18
R3#ping6 3555::52
sending 5,100-byte ICMP echo(es) to 3555:0:0:0:0:0:0:52,timeout is 2 second(s).
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max= 2/3/7 ms.
Configuration Flow
1. Establish the networking structure, as shown in Figure 6-3.
2. Configure the address for the interface and configure OSPFv3.
3. Configure the load sharing for the interface.
Configuration Commands
The configuration on R1 is as follows:
R1(config)#interface gei-1/1
R1(config-if-gei-1/1)#no shutdown
R1(config-if-gei-1/1)#ipv6 enable
R1(config-if-gei-1/1)#ipv6 address 2005::1/64
R1(config)#interface gei-1/2
R1(config-if-gei-1/2)#no shutdown
R1(config-if-gei-1/2)#ipv6 enable
R1(config-if-gei-1/2)#ipv6 address 2006::1/64
R1(config)#interface loopback11
R1(config-if-loopback11)#ip address 2.2.2.2 255.255.255.255
R1(config-if-loopback11)#exit
6-19
R1(config-ospfv3-1-if-gei-1/2)#$
R1(config-ospfv3-1)#maximum-paths 2
/*Configure two paths for load sharing.*/
R1(config-ospfv3-1)#exit
R2(config)#interface gei-2/1
R2(config-if-gei-2/1)#no shutdown
R2(config-if-gei-2/1)#ipv6 enable
R2(config-if-gei-2/1)#ipv6 address 2005::2/64
R2(config)#interface gei-2/2
R2(config-if-gei-2/2)#no shutdown
R2(config-if-gei-2/2)#ipv6 enable
R2(config-if-gei-2/2)#ipv6 address 2006::2/64
R2(config)#interface loopback11
R2(config-if-loopback11)#ip address 1.1.1.1 255.255.255.255
R2(config)#interface loopback10
R2(config-if-loopback10)#ipv6 enable
R2(config-if-loopback10)#ipv6 address 2000::2/64
R2(config-if-loopback10)#exit
Configuration Verification
Execute the show ipv6 forwarding route ospf command on R1 to check the same
destination address 2000::2, and the route forwarding table items with the same cost.
6-20
l The TLV type value of the IPv6 Reachability TLV is 236 (0xEC). Its TLV effects are
equal to the two TLVs of IPv4: IP internally reachable and IP externally reachable.
Up/down and external are defined in this TLV and are used to indicate that routes are
redistributed mutually in the L2/L1 and to determine whether a route is an external
route.
l The TLV type value of the IPv6 Interface Address TLV is 232 (0xE8). Its TLV effects
are equal to the TLV of IPv4: IP port address. The difference is that the original 32-bit
address segment is superseded by the 128-bit address segment in the new TLV.
7-1
Steps
1. Configure IS-ISv6 basic information.
If all the devices on the network are the ZXR10, the default parameters can be used
during the IS-IS configuration. If other vendors' devices exist in the network and
interconnect with the ZXR10, however, the relevant interface parameters and timers
may need to be changed to enable the IS-IS protocol to more efficiently run in the
network.
Command Function
7-2
Command Function
7-3
Parameters descriptions:
critical: sets the critical prefix rule.
acl-name <acl-name>: The ACL list indicates priorities. Range: 131 characters.
tag <value>: sets a tag to indicate the priority. Range: 14294967295.
Command Function
7-4
Command Function
<protocol>: specifies the route origin, which can be connect, static, rip, ospf,
bgp, aftr, sf-nat64 or sl-nat64-ipv6, required. To redistribute IS-IS/OSPF routes,
it is necessary to specify the instance number.
level-1 | level-2 | level-1-2: specifies the redistribution range, default: level-2.
metric <metric-value>: specifies the metric value of the IS-ISv6 route. If the metric-style
is narrow, the value range of <metric-value> is 0 to 63. If the metric-style is wide, the
value range of <metric-value> is 0 to 426142864.
route-map <map-tag>: specifies the route map name for the current protocol
redistribution, 1 to 31 characters in length.
Command Function
7-5
7-6
Command Function
7-7
Command Function
Command Function
9. Debug IS-ISv6.
Command Function
ZXR10#debug isis update-packets [process-id <0-65535>] Tracks and shows the debugging
information about IS-ISv6
updating events.
ZXR10#debug isis adj-packets [process-id <0-65535>] Tracks and shows the debugging
information about IS-ISv6
adjacency.
ZXR10#debug isis mpls traffic-eng events [process-id Tracks and shows the debugging
<0-65535>] information about IS-ISv6 MPLS
events.
ZXR10#debug isis spf-events [process-id <0-65535>] Tracks and shows the debugging
information about IS-ISv6 route
computation events.
7-8
Command Function
End of Steps
Configuration Flow
1. Enable the IPv6 protocol on the direct connection interfaces of R1 and R2, configure
IPv6 addresses for the direct connection interfaces, configure loopback interfaces,
enable IPv6 on the loopback interfaces, and configure IPv6 addresses for the loopback
interfaces.
2. Configure the IS-ISv6 protocol and ensure that the system-ids of the two routers are
not the same. If the IPv4 IS-IS protocol has been configured on certain interfaces of
the two routers, set both routers to the multi-topology mode. To set the multi-topology
mode, first set the metric type of the IS-IS protocol to "wide". If the IPv4 IS-IS protocol
is not configured on any interface of the two routers, adjacency can be established
through the default single-topology settings on the two routers. If any interface of either
router is configured with an IPv4 address and the IS-IS protocol, IS-ISv6 neighbors
can be established through the single-topology function on the two routers. In the
latter case, the interface needs to be configured with both an IPv4 address and an
IPv6 address as well as the commands ip router isis and ipv6 router isis. Here, the
multi-topology environment is taken as an example.
3. Enable the IS-ISv6 protocol on the interfaces.
7-9
4. Check and verify the configuration results: Neighbors are correctly established
between the routers, and each router correctly computes the IPv6 topology and can
successfully ping6 the loopback interface of the peer router.
Configuration Commands
Configuration on R1:
R1(config)#interface gei-0/6
R1(config-if-gei-0/6)#ipv6 enable
R1(config-if-gei-0/6)#ipv6 address 3611::11/64
R1(config-if-gei-0/6)#no shutdown
R1(config-if-gei-0/6)#exit
R1(config)#interface loopback5
R1(config-if-loopback5)#ipv6 enable
R1(config-if-loopback5)#ipv6 address 3555::52/64
R1(config-if-loopback5)#exit
R1(config)#router isis
R1(config-isis-0)#area 47.0005
R1(config-isis-0)#system-id 0000.0000.0011
R1(config-isis-0)#metric-style wide
R1(config-isis-0)#hostname dynamic disable
R1(config-isis-0)#interface gei-0/6
R1(config-isis-0-if-gei-0/6)#ipv6 router isis
R1(config-isis-0-if-gei-0/6)#exit
R1(config-isis-0)#interface loopback5
R1(config-isis-0-if-loopback5)#ipv6 router isis
R1(config-isis-0-if-loopback5)#exit
R1(config-isis-0)#address-family ipv6
R1(config-isis-0-af)#multi-topology
R1(config-isis-0-af)#end
Configuration on R2:
R2(config)#interface gei-0/3
R2(config-if-gei-0/3)#ipv6 enable
R2(config-if-gei-0/3)#ipv6 address 3611::10/64
R2(config-if-gei-0/3)#no shutdown
R2(config-if-gei-0/3)#exit
R2(config)#interface loopback5
R2(config-if-loopback5)#ipv6 enable
R2(config-if-loopback5)#ipv6 address 3550::52/64
R2(config-if-loopback5)#exit
R2(config)#router isis
R2(config-isis-0)#area 47.0005
7-10
R2(config-isis-0)#system-id 0000.0000.0010
R2(config-isis-0)#metric-style wide
R2(config-isis-0)#hostname dynamic disable
R2(config-isis-0)#interface gei-0/3
R2(config-isis-0-if-gei-0/3)#ipv6 router isis
R2(config-isis-0-if-gei-0/3)#exit
R2(config-isis-0)#interface loopback5
R2(config-isis-0-if-loopback5)#ipv6 router isis
R2(config-isis-0-if-loopback5)#exit
R2(config-isis-0)#address-family ipv6
R2(config-isis-0-af)#multi-topology
R2(config-isis-0-af)#end
Configuration Verification
After the configuration is completed, run the show command on each router to check the
configuration information: Neighbors are correctly established between the routers, and
each router correctly computes the IPv6 topology and can successfully ping6 the loopback
interface of the peer router.
Check the configuration result on R1. Run the show running-config isis command to check
the IS-IS configuration information, as shown below.
R1#show running-config isis
! <route_isis>
router isis 0
area 47.0005
system-id 0000.0000.0011
hostname dynamic disable
metric-style wide
address-family ipv6
multi-topology
$
interface gei-0/6
ipv6 router isis
$
interface loopback5
ipv6 router isis
$
! </route_isis>
Run the show isis adjacency command to check whether the neighbor status is normal, that
is, check whether the state field is UP. After the neighbor is established, the state field
should indicate UP.
7-11
Run the show isis ipv6 topology command to check whether the topology is correctly
computed (For the single-topology environment, run the show isis topology command
instead to check it). If the topology has been successfully computed, the execution results
will indicate the following item. If the metric is , it indicates the local router. If the metric
is xx, it indicates that the destination is unreachable.
Run the show isis circuits command to check the interface information and Designate IS
(DIS) election. If the interface status is "UP", the interface is normal. If the interface status
is "DOWN", the interface is abnormal. Then it is necessary to check the link status. The
Level1-DR item shows the system-id of the DIS.
R1#show isis circuits
IS-IS interface database:
Interface State Lev CirId Level1-DR Level2-DR Pri(L1/L2)
loopback5 Up L1L2 0 No found No found 64/64
gei-0/6 Up L1L2 6 0000.0000.0010-03 0000.0000.0010-03 64/64
Run the show ipv6 forwarding route isis-l1 or show ipv6 forwarding route isis-l2 command
to check route advertisement. If route advertisement is normal, the route advertised by the
loopback interface of the peer router can be seen.
If neighbor establishment and route advertisement are normal, the loopback interface of
the peer route can be pinged successfully.
R1#ping6 3550::52
sending 5,100-byte ICMP echoes to 3550::52,timeout is 2 seconds.
!!!!!
7-12
7-13
Codes : K: kernel, I1: isis-l1, SFN: sf-nat64, R: ripng, AF: aftr, B: bgp,
D: direct, I2: isis-l2, SLN: sl-nat64, O: ospfv3, D6: dhcp, P: ppp,
S: static, N: nd, V: vrrp, A: address, M: multicast, UI: user-ipaddr;
Dest Owner Metric
Interface Pri Gw
3555::/64 I1 20
gei-0/3 115 fe80:2e::2d0:d0ff:fe78:99dd
R2#ping6 3555::52
sending 5,100-byte ICMP echoes to 3555::52,timeout is 2 seconds.
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max= 0/0/0 ms.
Configuration Flow
1. Enable the IPv6 protocol on the interfaces, configure IPv6 addresses for these
interfaces, configure loopback interfaces, enable IPv6 on the loopback interfaces,
and configure IPv6 addresses for the loopback interfaces.
2. Configure the IS-ISv6 protocol and ensure that the system-ids of the routers are not
the same. Establish L2 neighbors between R2 and R1/R3, and establish L1 neighbors
between R3 and R4. Here, the multi-topology environment is taken as an example.
3. Enable the IS-ISv6 protocol on the interfaces.
7-14
Configuration Commands
Configuration on R1:
R1(config)#interface gei-1/3
R1(config-if-gei-1/3)#ipv6 enable
R1(config-if-gei-1/3)#ipv6 address 2003::1/64
R1(config-if-gei-1/3)#no shutdown
R1(config-if-gei-1/3)#exit
R1(config)#interface loopback1
R1(config-if-loopback1)#ipv6 enable
R1(config-if-loopback1)#ipv6 address 2000:0:0:1::1/64
R1(config-if-loopback1)#exit
R1(config)#interface loopback2
R1(config-if-loopback2)#ipv6 enable
R1(config-if-loopback2)#ipv6 address 2000:0:0:2::1/64
R1(config-if-loopback2)#exit
R1(config)#interface loopback3
R1(config-if-loopback3)#ipv6 enable
R1(config-if-loopback3)#ipv6 address 2000:0:0:3::1/64
R1(config-if-loopback3)#exit
R1(config)#router isis
R1(config-isis-0)#area 01
R1(config-isis-0)#system-id 0000.0000.0011
R1(config-isis-0)#is-type level-1-2
R1(config-isis-0)#metric-style wide
R1(config-isis-0)#interface gei-1/3
R1(config-isis-0-if-gei-1/3)#ipv6 router isis
R1(config-isis-0-if-gei-1/3)#circuit-type level-2-only
R1(config-isis-0-if-gei-1/3)#exit
R1(config-isis-0)#interface loopback1
R1(config-isis-0-if-loopback1)#ipv6 router isis
R1(config-isis-0-if-loopback1)#circuit-type level-2-only
R1(config-isis-0-if-loopback1)#exit
R1(config-isis-0)#interface loopback2
R1(config-isis-0-if-loopback2)#ipv6 router isis
R1(config-isis-0-if-loopback2)#circuit-type level-2-only
R1(config-isis-0-if-loopback2)#exit
R1(config-isis-0)#interface loopback3
7-15
Configuration on R2:
R2(config)#interface gei-1/3
R2(config-if-gei-1/3)#ipv6 enable
R2(config-if-gei-1/3)#ipv6 address 2003::2/64
R2(config-if-gei-1/3)#no shutdown
R2(config-if-gei-1/3)#exit
R2(config)#interface gei-1/1
R2(config-if-gei-1/1)#ipv6 enable
R2(config-if-gei-1/1)#ipv6 address 2001::2/64
R2(config-if-gei-1/1)#no shutdown
R2(config-if-gei-1/1)#exit
R2(config)#router isis
R2(config-isis-0)#area 00
R2(config-isis-0)#system-id 0000.0000.0012
R2(config-isis-0)#is-type level-2
R2(config-isis-0)#metric-style wide
R2(config-isis-0)#interface gei-1/1
R2(config-isis-0-if-gei-1/1)#ipv6 router isis
R2(config-isis-0-if-gei-1/1)#circuit-type level-2-only
R2(config-isis-0-if-gei-1/1)#exit
R2(config-isis-0)#interface gei-1/3
R2(config-isis-0-if-gei-1/3)#ipv6 router isis
R2(config-isis-0-if-gei-1/3)#circuit-type level-2-only
R2(config-isis-0-if-gei-1/3)#exit
R2(config-isis-0)#address-family ipv6
R2(config-isis-0-af)#multi-topology
R2(config-isis-0-af)#end
Configuration on R3:
R3(config)#interface gei-1/1
R3(config-if-gei-1/1)#ipv6 enable
R3(config-if-gei-1/1)#ipv6 address 2001::3/64
R3(config-if-gei-1/1)#no shutdown
R3(config-if-gei-1/1)#exit
R3(config)#interface gei-1/3
R3(config-if-gei-1/3)#ipv6 enable
7-16
R3(config)#router isis
R3(config-isis-0)#area 02
R3(config-isis-0)#system-id 0000.0000.0013
R3(config-isis-0)#is-type level-1-2
R3(config-isis-0)#metric-style wide
R3(config-isis-0)#interface gei-1/1
R3(config-isis-0-if-gei-1/1)#ipv6 router isis
R3(config-isis-0-if-gei-1/1)#circuit-type level-2-only
R3(config-isis-0-if-gei-1/1)#exit
R3(config-isis-0)#interface gei-1/3
R3(config-isis-0-if-gei-1/3)#ipv6 router isis
R3(config-isis-0-if-gei-1/3)#circuit-type level-1
R3(config-isis-0-if-gei-1/3)#exit
R3(config-isis-0)#address-family ipv6
R3(config-isis-0-af)#multi-topology
R3(config-isis-0-af)#end
Configuration on R4:
R4(config)#interface gei-1/3
R4(config-if-gei-1/3)#ipv6 enable
R4(config-if-gei-1/3)#ipv6 address 2300::4/64
R4(config-if-gei-1/3)#no shutdown
R4(config-if-gei-1/3)#exit
R4(config)#interface loopback4
R4(config-if-loopback4)#ipv6 enable
R4(config-if-loopback4)#ipv6 address 2400::4/64
R4(config-if-loopback4)#exit
7-17
R4(config-isis-0-if-loopback4)#circuit-type level-1
R4(config-isis-0)#address-family ipv6
R4(config-isis-0-af)#multi-topology
R4(config-isis-0-af)#redistribute static metric 10 /*Redistribute the route*/
R4(config-isis-0-af)#end
Configuration Verification
After the configuration is completed, run the show command on each router to check the
configuration information: Neighbors are correctly established, the topology is computed,
and interfaces can be pinged successfully.
Check the configuration results on R1. Run the show running-config isis command to check
the IS-IS configuration information, as shown below.
Run the show isis adjacency command to check whether the neighbor status is normal, that
is, check whether the state field is UP. After the neighbor is established, the state field
should indicate UP, as shown below.
7-18
Run the show isis ipv6 topology command to check whether the topology is correctly
computed (For the single-topology environment, run the show isis topology command
instead to check it). If the topology has been successfully computed, the execution results
will indicate the following item. If the metric is , it indicates the local router. If the metric
is xx, it indicates that the destination is unreachable.
ZXR10_R1#show isis ipv6 topology
Process ID: 0
IS-IS paths to Level-1 routers
System id Metric Next-Hop Interface SNPA
0000.0000.0011 --
IS-IS paths to Level-2 routers
System id Metric Next-Hop Interface SNPA
0000.0000.0012 10 0000.0000.0012 gei-1/3 00D0.D078.99D2
0000.0000.0013 20 0000.0000.0012 gei-1/3 00D0.D078.99D2
0000.0000.0014 30 0000.0000.0012 gei-1/3 00D0.D078.99D2
0000.0000.0011
Run the show ipv6 forwarding route isis-l2 command to check route advertisement. If route
advertisement is normal, the route advertised by the loopback interface of the peer router
can be seen.
If neighbor establishment and route advertisement are normal, the loopback interface of
R4 can be pinged successfully.
ZXR10_R1#ping6 2400::4
sending 5,100-byte ICMP echoes to 2400::4,timeout is 2 seconds.
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max=97/120/156 ms.
7-19
7-20
Codes : K: kernel, I1: isis-l1, SFN: sf-nat64, R: ripng, AF: aftr, B: bgp,
D: direct, I2: isis-l2, SLN: sl-nat64, O: ospfv3, D6: dhcp, P: ppp,
S: static, N: nd, V: vrrp, A: address, M: multicast, UI: user-ipaddr;
Dest Owner Metric
Interface Pri Gw
2000::/48 I2 10
gei-1/3 115 fe80:2e::2d0:d0ff:fe78:99dd
2300::/64 I2 10
gei-1/1 115 fe80:2e::2d0:d0ff:fe78:99d3
2400::/64 I2 20
gei-1/1 115 fe80:2e::2d0:d0ff:fe78:99d3
7-21
7-22
R4#ping6 2000:0:0:1::1
sending 5,100-byte ICMP echoes to 2000:0:0:1::1,timeout is 2 seconds.
!!!!!
Success rate is 100 percent(5/5),round-trip min/avg/max= 56/93/102 ms.
7-23
7-24
Steps
1. Configure BGP4+ basic function.
For the ZXR10 ZSR V2, the commands for configuring BGP4+ are similar to those
for configuring BGP in IPv4, except that the ZXR10 ZSR V2 supports IPv6 address
8-1
Command Function
ZXR10(config)#show bgp ipv6 unicast neighbor Displays BGP adjacency and the current
[{<ipv4-addr>|<ipv6-addr>}] neighbor status.
ZXR10(config)#show bgp ipv6 unicast Displays the entries in the BGP routing
table.
8-2
Command Function
ZXR10(config)#show bgp ipv6 unicast summary Displays the states of all BGP neighbors.
4. Maintain BGP4+.
Command Function
End of Steps
8-3
Configuration Flow
1. Enable IPv6 on each interface in accordance with the networking diagram, and
configure IPv6 addresses.
2. Enable BGP.
3. Specify neighbors.
4. Configure a route reflector cluster ID. Set the neighbors as route reflector clients.
Configuration Commands
The IPv6 interface address configuration is omitted in this example.
Configuration on R1:
R1(config)#router bgp 200
R1(config-bgp)#neighbor 3fe6::1 remote-as 100
R1(config-bgp)#neighbor 2010::126 remote-as 200
R1(config-bgp)#address-family ipv6
R1(config-bgp-af-ipv6)#neighbor 3fe6::1 activate
R1(config-bgp-af-ipv6)#neighbor 2010::126 activate
R1(config-bgp-af-ipv6)#end
Configuration on R2:
R2(config)#router bgp 200
R2(config-bgp)#neighbor 6e22::1 remote-as 500
R2(config-bgp)#neighbor 3331::100 remote-as 200
R2(config-bgp)#address-family ipv6
R2(config-bgp-af-ipv6)#neighbor 6e22::1 activate
R2(config-bgp-af-ipv6)#neighbor 3331::100 activate
R2(config-bgp-af-ipv6)#end
Configuration on R3:
8-4
Configuration Flow
1. On R1 and R2, enable IPv6 on each interface, and configure IPv6 addresses.
Configure per-packet load sharing (default: per-flow load sharing). On R2, configure
the IPv6 address for the loopback1 interface, and enable IPv6.
2. Enable and configure BGP4+.
3. Configure BGP4+ load sharing on R1.
Configuration Commands
Configuration on R1:
R1(config)#interface gei-2/1
R1(config-if-gei-2/1)#ipv6 enable
R1(config-if-gei-2/1)#ipv6 address 2000::1/64
R1(config-if-gei-2/1)#exit
R1(config)#interface gei-2/2
R1(config-if-gei-2/2)#ipv6 enable
R1(config-if-gei-2/2)#ipv6 address 2001::1/64
R1(config-if-gei-2/2)#exit
8-5
R1(config)#interface gei-2/1
R1(config-if-gei-2/1)#ip load-sharing per-packet
R1(config-if-gei-2/1)#exit
R1(config)#interface gei-2/2
R1(config-if-gei-2/2)#ip load-sharing per-packet
R1(config-if-gei-2/2)#exit
Configuration on R2:
R2(config)#interface gei-2/1
R2(config-if-gei-2/1)#ipv6 enable
R2(config-if-gei-2/1)#ipv6 address 2000::2/64
R2(config-if-gei-2/1)#exit
R2(config)#interface gei-2/2
R2(config-if-gei-2/2)#ipv6 enable
R2(config-if-gei-2/2)#ipv6 address 2001::2/64
R2(config-if-gei-2/2)#exit
R2(config)#interface loopback1
R2(config-if-loopback1)#ipv6 enable
R2(config-if-loopback1)#ipv6 address 2000:0:0:1::2/64
R2(config-if-loopback1)#exit
Configuration Verification
Run the show command to verify the configuration result, showing that the IBGP route has
been learned on R1:
8-6
Configuration Flow
1. Enable IPv6 on each interface and configure IPv6 addresses.
2. Create a BGP4+ instance.
3. Configure BGP4+ neighbors and routing policies.
4. Configure the redistribution command and enable neighbors to advertise routes.
8-7
Configuration Commands
The IPv6 interface address configuration is omitted in this example. For the detailed
configuration, refer to Example: Configuring BGP4+ Route Load Sharing.
Configuration on R4:
R4(config)#router bgp 2
R4(config-bgp)#neighbor 2001::1 remote-as 1
R4(config-bgp)#address-family ipv6
R4(config-bgp-af-ipv6)#neighbor 2001::1 activate
R4(config-bgp-af-ipv6)#redistribute static
/*config redistribute static route*/
R4(config-bgp-af-ipv6)#end
Configuration on R1:
R1(config)#router bgp 1
R1(config-bgp)#neighbor 2003::2 remote-as 1
R1(config-bgp)#neighbor 2001::4 remote-as 2
R1(config-bgp)#address-family ipv6
R1(config-bgp-af-ipv6)#neighbor 2001::4 activate
R1(config-bgp-af-ipv6)#neighbor 2003::2 activate
R1(config-bgp-af-ipv6)#end
Configuration on R2:
R2(config)#router bgp 1
R2(config-bgp)#neighbor 2003::1 remote-as 1
R2(config-bgp)#neighbor 2007::5 remote-as 3
R2(config-bgp)#neighbor 2007::5 ebgp-multihop /*config ebgp-multihop*/
R2(config-bgp)#neighbor 2007::5 password hello /*config password*/
R2(config-bgp)#address-family ipv6
R2(config-bgp-af-ipv6)#neighbor 2003::1 activate
R2(config-bgp-af-ipv6)#neighbor 2007::5 activate
R2(config-bgp-af-ipv6)#end
Configuration on R3:
R5(config)#router bgp 3
R3(config-bgp)#neighbor 2005::2 remote-as 1
R3(config-bgp)#neighbor 2005::2 ebgp-multihop
R3(config-bgp)#neighbor 2005::2 password hello
R3(config-bgp)#address-family ipv6
R3(config-bgp-af-ipv6)#neighbor 2005::2 activate
R3(config-bgp-af-ipv6)#end
Configuration Verification
Run the show bgp ipv6 unicast summary command on R1 to check the adjacency, as shown
below.
8-8
Run the show bgp ipv6 unicast command on R1 to check the routing table, as shown below.
Run the show bgp ipv6 unicast summary command on R2 to check the adjacency, as shown
below.
ZXR10_R2(config)#show bgp ipv6 unicast summary
Neighbor Ver As MsgRcvd MsgSend Up/Down State/PfxRcd
2003::1 4 1 12 12 00:25:34 4
2007::5 4 3 15 15 00:32:30 0
Run the show bgp ipv6 unicast command on R2 to check the routing table, as shown below.
Run the show bgp ipv6 unicast summary command on R4 to check the adjacency, as shown
below.
ZXR10_R4(config)#show bgp ipv6 unicast summary
Neighbor Ver As MsgRcvd MsgSend Up/Down State/PfxRcd
2001::1 4 1 14 14 00:28:06 0
Run the show bgp ipv6 unicast command on R4 to check the routing table, as shown below.
8-9
*> 2004:4::/64 :: 2 ?
Run the show bgp ipv6 unicast summary command on R5 to check the adjacency, as shown
below.
Run the show bgp ipv6 unicast command on R5 to check the routing table, as shown below.
8-10
Steps
1. In route-map configuration mode, configure the basic attributes of the IPv6 routing
policy.
9-1
permit | deny: permit: If the match criterion is met for this route map, and the permit
keyword is specified, the route is distributed based on the specified policy routing
actions. deny: No policy routing actions are performed regardless whether the match
criterion is met.
<sequence-number>: Sequence ID of the route-map. Each route-map supports one or
more sequence numbers. All routes are matched according to the specified sequence
number(s) in an ascending order. Once a match is found, whether policy routing should
be performed depends on the sequence attribute.
<access-list-number>: Sets a standard access list or an extended access list.
Command Description
9-2
Command Description
9-3
Command Description
ZXR10(config-route-map)#set ipv6 metric-type {internal | Sets a metric type for the IPv6
external | type-1 | type-2} protocol.
ZXR10(config-route-map)#set ipv6 tag <tag-value> Sets a tag value for the OSPF
protocol or a static route.
<half-life>: Sets the half-life period of the routing damping factors, range: 1 to 45.
<reuse>: Sets the reuse value of the routing damping factors, range: 1 to 20000.
<suppress>: Sets the suppress value of the routing damping factors, range: 1 to 20000.
<max-suppress-time>: Sets the maximum suppress time of the routing damping factors,
range: 1 to 255. The penalty value stops increasing if max-suppress-time is reached.
<route-map-name>: Name of the route map for route redistribution, range: 1 to 31.
4. Configure IS-ISv6 routing policy referencing.
9-4
<protocol>: Specifies the routing source, required. Options: bgp, connected, isis, ospf,
static, rip. To redistribute IS-IS or OSPF routes, the corresponding process ID should
be specified.
level-1: Redistributes routes to the Level-1 area.
<metric-type>: Sets the metric type (external or internal) carried by the redistributed
routes.
9-5
Command Description
9-6
Command Description
ZXR10(config)#show ip vrf detail Displays the VRF configuration. You can specify a
[<vrf-name>] VRF instance, and query its configuration.
End of Steps
Configuration Description
Both R1 and R2 run the Routing Information Protocol (RIP), see Figure 9-1. This enables
their RIPng routes to be advertised to each other, and other types of routes to be
redistributed. The following shows an example of redistributing static routes.
Figure 9-1 An Example of Configuring a Routing Policy for Redistributing RIPng Routes
Configuration Flow
1. Enable IPv6 and set IPv6 addresses on the corresponding interfaces of R1 and R2.
2. Enable the RIPng protocol configuration on the interfaces.
3. Redistribute other types of routes, and create a redistribution command.
4. Associate the redistribution command with a route-map.
5. Set the route-map.
6. Query the configuration result, and verify that R1 and R2 can learn routes that the peer
advertises.
Configuration Commands
Configuration on R1:
R1(config)#interface gei-1/2
R1(config-if-gei-1/2)#no shutdown
R1(config-if-gei-1/2)#ipv6 enable
R1(config-if-gei-1/2)#ipv6 address 192:168::1:1/64
R1(config-if-gei-1/2)#exit
9-7
Configuration on R2:
R2(config)#interface gei-2/2
R2(config-if-gei-2/2)#no shutdown
R2(config-if-gei-2/2)#ipv6 enable
R2(config-if-gei-2/2)#ipv6 address 192:168::1:2/64
R2(config-if-gei-2/2)#exit
Configuration Verification
Run the show command on R1 and R2 respectively to query the configuration of the RIP
protocol, route-map and static routes, RIP routing table and routing information.
The sample output on R1 is as follows.
9-8
R 1:2:3::/64 [120/11]
via fe80::221:1dff:fe1d:1100, gei-2/2, 06h39m58s
D 192:168::/64
9-9
Configuration Description
An IS-ISv6 neighbor relationship (status: up) is established between R1 and R2, see
Figure 9-2. Static routes are configured on R1, and a route-map is created for IS-ISv6
route redistribution.
Configuration Flow
1. Enable IPv6 and set IPv6 addresses on the corresponding interfaces of R1 and R2.
2. Create a neighbor relationship by configuring the IS-ISv6 protocol on R1 and R2.
3. Create route-map testisisv6 on R1.
4. Configure route redistribution on R1.
5. Apply a route-map to static route redistribution.
Configuration Commands
1. Configure a neighbor relationship between R1 and R2.
Configure IS-ISv6 on R1.
R1(config)#interface gei-1/2
R1(config-if-gei-1/2)#no shutdown
R1(config-if-gei-1/2)#ipv6 enable
R1(config-if-gei-1/2)#ipv6 address 192:168::1:1/64
R1(config-if-gei-1/2)#exit
R1(config)#router isis 44
R1(config-isis-44)#system-id 5555.5555.5555
R1(config-isis-44)#area 44
R1(config-isis-44)#is-type level-1-2
R1(config-isis-44)#metric-style wide
R1(config-isis-44)#interface gei-1/2
R1(config-isis-44-if-gei-1/2)#ipv6 router isis
R1(config-isis-44-if-gei-1/2)#exit
R1(config-isis-44)#address-family ipv6
9-10
R1(config-isis-44-af)#multi-topology
R2(config)#router isis 44
R2(config-isis-44)#system-id 2222.2222.2222
R2(config-isis-44)#area 44
R2(config-isis-44)#is-type level-1-2
R2(config-isis-44)#metric-style wide
R2(config-isis-44)#interface gei-2/2
R2(config-isis-44-if-gei-2/2)#ipv6 router isis
R2(config-isis-44-if-gei-2/2)exit
R2(config-isis-44)#address-family ipv6
R2(config-isis-44-af)#multi-topology
2. Create route-map testisisv6 on R1.
R1(config)#route-map testisisv6 permit 10
R1(config-route-map)#set ipv6 metric 10
R1(config-route-map)#exit
3. Configure static routes on R1.
R1(config)#ipv6 route 1:2:3::/64 192:168::1:2
4. Apply the route-map to static route redistribution.
R1(config)#router isis 44
R1(config-isis-44)#address-family ipv6
R1(config-isis-44-af)#redistribute static route-map testisisv6
R1(config-isis-44)#exit
Configuration Verification
The sample output is as follows.
9-11
9-12
M - Multicast
* - FIB route
> - selected route, p - stale info
Time: The time of last modified!
I2 1:2:3::/64 [115/20]
via fe80::221:1dff:fe1d:1100, gei-2/2, 06h06m18s
I1 192:168::/64 [115/20]
via fe80::221:1dff:fe1d:1100, gei-2/2, 01h46m35s
Configuration Description
Both R1 and R2s interfaces are configured in OSPFv3 area 1, and an OSPFv3 neighbor
relationship (status: full) is established between them, see Figure 9-3. A static route is
configured on R1, and a route-map is created for OSPFv3 static route redistribution.
Configuration Flow
1. Enable IPv6 and set IPv6 addresses on the corresponding interfaces of R1 and R2.
2. Create a neighbor relationship between R1 and R2 in OSPFv3 area 1.
3. Create a route-map on R1.
4. Configure a static route on R1.
5. Apply the route-map to OSPFv3 route redistribution on R1.
Configuration Commands
1. Create an OSPFv3 neighbor relationship by configuring the directly-connected
interfaces of R1 and R2 to be on the same network segment.
R1(config)#interface gei-1/2
R1(config-if-gei-1/2)#no shutdown
R1(config-if-gei-1/2)#ipv6 enable
R1(config-if-gei-1/2)#ipv6 address 192:168::1:1/64
R1(config-if-gei-1/2)#exit
R1(config)#ipv6 router ospf 1026
R1(config-ospfv3-1026)#router-id 11.11.11.11
R1(config-ospfv3-1026)#interface gei-1/2 area 1
R1(config-ospfv3-1026-if-gei-1/2)#exit
9-13
R2(config)#interface gei-2/2
R2(config-if-gei-2/2)#no shutdown
R2(config-if-gei-2/2)#ipv6 enable
R2(config-if-gei-2/2)#ipv6 address 192:168::1:2/64
R2(config-if-gei-2/2)#exit
R2(config)#ipv6 router ospf 1026
R2(config-ospfv3-1026)#router-id 22.22.22.22
R2(config-ospfv3-1026)#interface gei-2/2 area 1
R2(config-ospfv3-1026-if-gei-2/2)#exit
2. Create a route-map on R1.
R1(config)#route-map ff
R1(config-route-map)#match ipv6 metric 0
R1(config-route-map)#set ipv6 metric 50
R1(config-route-map)#set ipv6 metric-type type-1
R1(config-route-map)#set ipv6 tag 100
3. Configure a static route on R1.
R1(config)#ipv6 route 1:2:3::/64 192:168::1:2
4. On R1, apply the route map to OSPF route redistribution.
R1(config)#ipv6 router ospf 1026
R1(config-ospfv3-1026)#redistribute static route-map ff
R1(config-ospfv3-1026)#end
Configuration Verification
Log in to R1, and run the following commands to check the configuration, static route and
OSPF routes.
R1#show route-map ff
9-14
9-15
LS age: 109
LS Type: AS-external-LSA
Link State ID: 0.0.0.13
Advertising Router: 11.11.11.11
LS Seq Number: 0x80000001
Checksum: 0xD1E9
Length: 48
Metric Type: 1 (Larger than any link state path)
Metric: 50
Prefix: 1234::1/128
Prefix Options: 0 (-|-|-|-)
External Route Tag: 100
E1 1:2:3::/64 [110/51]
via fe80::221:1dff:fe1d:1100, gei-2/2, 08h53m18s
O 192:168::/64 [110/1]
via ::, gei-2/2, 07h19m08s
Configuration Description
An EBGP neighbor relationship is established between R1 and R2, and an IBGP neighbor
relationship is established between R2 and R3, see Figure 9-4. R1 advertises its routes
to R2. Configure route-map test1 on R2, and apply it to the in direction of R2s interface
connecting to R1. Configure route-map test2 on R2, and apply it to the out direction of
R2s interface connecting to R3.
9-16
Configuration Flow
1. Enable IPv6 and set IPv6 addresses on the corresponding interfaces of R1, R2 and
R3.
2. Create an EBGP neighbor relationship between R1 and R2, and create an IBGP neigh-
bor relationship between R2 and R3.
3. R1 advertises its several BGP4+ routes to R2. If R2 and R3 can learn these routes,
proceed to 3.
4. Configure ipv6-access-list 1, ipv6-access-list 2, route-map test1 and route-map test2
on R2
5. Apply route-map test1 to the in direction of R2s interface connecting to R1, and apply
route-map test2 to the out direction of R2s interface connecting to R3.
Note:
The route-map can be used by incoming interface and outgoing interface. Other attributes
are effective except the attribute of next-hop.
Configuration Commands
1. Create an EBGP neighbor relationship by configuring the directly-connected interfaces
between R1, R2, and R3.
Configuration on R1:
R1(config)#interface gei-1/3
R1(config-if-gei-1/3)#no shutdown
R1(config-if-gei-1/3)#ipv6 enable
R1(config-if-gei-1/3)#ipv6 address 1:2::1/64
R1(config-if-gei-1/3)#exit
R1(config)#router bgp 1011
R1(config-bgp)#neighbor 1:2::2 remote-as 200
R1(config-bgp)#address-family ipv6
R1(config-bgp-af-ipv6)#neighbor 1:2::2 activate
R1(config-bgp-af-ipv6)#exit
R1(config-bgp)#exit
Configuration on R2:
R2(config)#interface gei-1/3
R2(config-if-gei-1/3)#no shutdown
R2(config-if-gei-1/3)#ipv6 enable
R2(config-if-gei-1/3)#ipv6 address 1:2::2/64
9-17
R2(config-if-gei-1/3)#exit
R2(config)#interface gei-1/4
R2(config-if-gei-1/4)#no shutdown
R2(config-if-gei-1/4)#ipv6 enable
R2(config-if-gei-1/4)#ipv6 address 2:3::2/64
R2(config-if-gei-1/4)#exit
Configuration on R3:
R3(config)#interface gei-5/3
R3(config-if-gei-5/3)#no shutdown
R2(config-if-gei-5/3)#ipv6 enable
R3(config-if-gei-5/3)#ipv6 address 2:3::3/64
R3(config-if-gei-5/3)#exit
9-18
Configuration Verification
After R1 advertises its five routes, run the following commands to verify that R2 and R3
can learn these routes.
9-19
Verify that R2 can only learn routes 4:4:::/64 and 7:7::/64 permitted in route-map test1.
The logical relationships between match items in a routing policy is AND. If route-map
test2 permit 10 is not matched, route 4:4:::/64 cannot be advertised to R3.
After the BGP routing policy is enabled, the sample output is as follows.
R2(config)#show bgp ipv6 unicast /*R2 learns two BGP routes from R1*/
Status codes: * valid, > best, i - internal, s - stale
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf RtPrf Path
*> 4:4::/64 1:2::1 30000 20 1011 i
*> 7:7::/64 1:2::1 30000 20 1011 i
Configuration Description
Figure 9-5 shows a basic L3VPN networking topology. An MP-IBGP neighbor relationship
is established between PE1 and PE2 that are in the same AS. VRF test1 that resides
on PE1 advertises the Address routes generated by the local Loopback address and
9-20
directly-connected routes to peer CE1. VRF test1 that resides on PE2 advertises the
Address routes generated by the local Loopback address and directly-connected routes
to peer CE2. The VRF test1 routing table on PE1 and PE2 contains the local and remote
routes.
The route-map, used for VRF test1 on PE1, allows PE1 to import or export routes from/to
its VPN neighbor.
gei-1/3 10.10.12.1/24
gei-1/7.10 2002::20:2/120
Configuration Flow
1. Configure the basic L3VPN networking environment (CE1PE1PE2CE2), enable
IPv6 and set IPv6 addresses on the corresponding interfaces of the routers.
2. Configure the protocol, and make sure that the private routing tables on two PEs
contain all planned routes.
3. Create a route-map on PE1, and define the characteristics of the routes for which
policy routing is performed (that is, defining a group of match criteria). Various route
attributes, such as destination address, can be grouped as a match rule.
4. Apply the route-map to a VRF instance on PE1 to implement route importing/exporting,
route publishing and receiving.
Configuration Commands
1. Configure the basic L3VPN networking environment on PE1 and PE2.
Configuration on PE1:
PE1(config)#ip vrf test1
PE1(config-vrf-test1)#rd 100:1
PE1(config-vrf-test1)#address-family ipv6
PE1(config-vrf-test1-af-ipv6)#route-target import 100:1
9-21
PE1(config)#interface loopback1
PE1(config-if-loopback1)#ip address 10.10.1.1 255.255.255.255
PE1(config-if-loopback1)#exit
PE1(config)#interface gei-1/3
PE1(config-if-gei-1/3)#no shutdown
PE1(config-if-gei-1/3)#ip address 10.10.12.1 255.255.255.0
PE1(config-if-gei-1/3)#exit
PE1(config)#mpls ldp instance 1
PE1(config-ldp-1)#route-id loopback1
PE1(config-ldp-1)#interface gei-1/3
PE1(config-ldp-1-if-gei-1/3)#exit
PE1(config-ldp-1)#exit
PE1(config)#interface gei-1/2
PE1(config-if-gei-1/2)#no shutdown
PE1(config-if-gei-1/2)#ip vrf forwarding test1
PE1(config-if-gei-1/2)#ipv6 enable
PE1(config-if-gei-1/2)#ipv6 address 1001::20:1/120
PE1(config-if-gei-1/2)#exit
PE1(config)#router ospf 1
PE1(config-ospf-1)#network 10.0.0.0 0.255.255.255 area 0.0.0.0
PE1(config-ospf-1)#exit
PE1(config)#ipv6 router ospf 1 vrf test1
PE1(config-ospfv3-1)#router-id 10.10.1.1
PE1(config-ospfv3-1)#interface gei-1/2 area 0.0.0.0
PE1(config-ospfv3-if-gei-1/2)#exit
PE1(config-ospfv3-1)#redistribute bgp
PE1(config-ospfv3-1)#exit
9-22
PE1(config-ldp-1)#router-id loopback1
PE1(config-ldp-1)#interface gei-1/3
PE1(config-ldp-1-if-gei-1/3)#exit
PE1(config-ldp-1)#exit
Configuration on PE2:
PE2(config)#interface loopback1
PE2(config-if-loopback1)#ip address 10.10.3.3 255.255.255.255
PE2(config-if-loopback1)#exit
PE2(config)#interface gei-1/6
PE2(config-if-gei-1/6)#no shutdown
PE2(config-if-gei-1/6)#ip address 10.10.12.2 255.255.255.0
PE2(config-if-gei-1/6)#exit
PE2(config)#mpls ldp instance 1
PE2(config-ldp-1)#router-id loopback1
PE2(config-ldp-1)#interface gei-1/6
PE2(config-ldp-1-if-gei-1/6)#exit
PE2(config-ldp-1)#exit
PE2(config)#interface gei-1/7
PE2(config-if-gei-1/7)#no shutdown
PE2(config-if-gei-1/7)#exit
PE2(config)#interface gei-1/7.10
PE2(config-if-gei-1/7.10)#exit
PE2(config)#vlan-configuration
PE2(config-vlan)#interface gei-1/7.10
PE2(config-vlan-if-gei-1/7.10)#encapsulation-dot1q 10
PE2(config-vlan-if-gei-1/7.10)#exit
PE2(config-vlan)#exit
PE2(config)#interface gei-1/7.10
PE2(config- if-gei-1/7.10)#ip vrf forwarding test1
PE2(config- if-gei-1/7.10)#ipv6 enable
PE2(config- if-gei-1/7.10)#ipv6 address 2002::20:2/120
PE2(config- if-gei-1/7.10)#exit
PE2(config)#router ospf 1
9-23
IB 22::/64 [200/0]
via ::ffff:10.10.3.3, loopback1, IPv6-mpls, 09h03m49s
D 33::/64
via ::, loopback33, 07h10m49s
A 33::33/128
via ::, loopback33, 07h10m49s
D 1001::20:0/120
via ::, loopback44, 08h47m18s
A 1001::20:2/128
via ::, loopback44, 08h47m18s
IB 2002::20:0/120 [200/0]
via ::ffff:10.10.3.3, loopback1, IPv6-mpls, 08h33h41s
9-24
D 22::/64
via ::, loopback22, 21h02m55s
A 22::1/128
via ::, loopback22, 21h02m55s
IB 33::/64 [200/0]
via ::ffff:10.10.1.1, loopback1, IPv6-mpls, 08h33m39s
IB 1001::20:0/120 [200/0]
via ::ffff:10.10.1.1, loopback1, IPv6-mpls, 08h47m18s
D 2002::20:0/120
via ::, gei-1/10.1, 06h22m11s
A 2002::20:2/128
via ::, gei-1/10.1, 06h22m11s
3. Create a route-map on PE1, and apply it to VRF.
Create route-map test1 for restricting exporting routes.
PE1(config)#ipv6-access-list test1
PE1(config-ipv6-acl)#rule 1 permit ipv6 1001::20:0/120 any
PE1(config-ipv6-acl)#exit
PE1(config)#route-map test1
PE1(config-route-map)#match ipv6 address test1
PE1(config-route-map)#exit
9-25
D 33::/64
via ::, loopback33, 00h04m47s
A 33::33/128
via ::, loopback33, 00h04m47s
D 1001::20:0/120
via ::, loopback44, 00h04m47s
A 1001::20:2/128
via ::, loopback44, 00h04m47s
IB 2002::20:0/120 [200/0]
via ::ffff:10.10.3.3, loopback1, IPv6-mpls, 21h23m00s
D 22::/64
via ::, loopback22, 21h02m55s
A 22::1/128
via ::, loopback22, 21h02m55s
IB 1001::20:0/120 [200/0]
via ::ffff:10.10.1.1, loopback1, IPv6-mpls, 22h43m00s
D 2002::20:0/120
via ::, gei-1/10.1, 00h22m27s
A 2002::20:2/128
via ::, gei-1/10.1, 00h22m27s
Configuration Verification
Run the show running-config command, and the following sample output is displayed.
9-26
address-family ipv6 vrf test1
redistribute connected
$
address-family vpnv6
neighbor 10.10.3.3 activate
$
$
! </route-bgp>
9-27
Before the use of the VRF routing policy, in the export direction, the routing table for vrf
test1 on PE1 is as follows.
IB 22::/64 [200/0]
via ::ffff:10.10.3.3, loopback1, IPv6-mpls, 09h03m49s
D 33::/64
via ::, loopback33, 07h10m49s
A 33::33/128
via ::, loopback33, 07h10m49s
D 1001::20:0/120
via ::, loopback44, 08h47m18s
A 1001::20:2/128
via ::, loopback44, 08h47m18s
IB 2002::20:0/120 [200/0]
via ::ffff:10.10.3.3, loopback1, IPv6-mpls, 08h33m41s
After the VRF routing policy is enabled, the routing table for vrf test1 on PE1 is as follows.
D 33::/64
9-28
The test2 routing policy filters routes advertised from peer PE2.
IB 22::/64 [200/0]
via ::ffff:10.10.3.3, loopback1, IPv6-mpls, 09h03m49s
PE1 can learn routes only if rule 1 (permit ipv6 2002::20:0/120 any) defined in route-map
test2 is matched. The command is as follows.
IB 2002::20:0/120 [200/0]
via ::ffff:10.10.3.3, loopback1, IPv6-mpls, 08h33m41s
The test1 routing policy works for outgoing routes on PE1. Before the use of the policy,
the routing table for VRF test1 on PE2 is as follows.
PE2#show ipv6 protocol routing vrf test1
Vrf test1 IPv6 Routing Table
Codes: D - Direct, A - Address, S - Static, R - RIP, UI - USER_IPADDR,
I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea, IS - ISIS static,
O - OSPF intra, OI - OSPF inter, E1 - OSPF ext 1, E2 - OSPF ext 2, N - ND,
B - BGP, IB - IBGP, EB - EBGP, AG - BGP AGG, V - VRRP, P - PPP, D6 - DHCPv6,
SFN - Stateful NAT64, SLN - Stateless NAT64, AF - AFTR
Time: The time of last modified!
D 22::/64
via ::, loopback22, 21h02m55s
A 22::1/128
via ::, loopback22, 21h02m55s
IB 33::/64 [200/0]
via ::ffff:10.10.1.1, loopback1, IPv6-mpls, 08h33m39s
IB 1001::20:0/120 [200/0]
via ::ffff:10.10.1.1, loopback1, IPv6-mpls, 08h47m18s
D 2002::20:0/120
via ::, gei-1/10.1, 06h2211s
A 2002::20:2/128
via ::, gei-1/10.1, 06h22m11s
After the policy is enabled, the routing table for VRF test1 on PE2 is as follows.
9-29
D 22::/64
via ::, loopback22, 21h02m55s
A 22::1/128
via ::, loopback22, 21h02m55s
IB 1001::20:0/120 [200/0]
via ::ffff:10.10.1.1, loopback1, IPv6-mpls, 22h43m00s
D 2002::20:0/120
via ::, gei-1/10.1, 00h22m27s
A 2002::20:2/128
via ::, gei-1/10.1, 00h22m27s
The following shows that only one route is learned from the remote end:
IB 1001::20:0/120 [200/0]
via ::ffff:10.10.1.1, loopback1, IPv6-mpls, 22h43m00s
The route matches the rule 1 permit ipv6 1001::20:0/120 any condition defined in route-map
test1. The mismatched routes have been filtered out:
IB 33::/64 [200/0]
via ::ffff:10.10.1.1, loopback1, IPv6-mpls, 08h33m39s
Steps
1. Configure IPv6 policy routes.
The commands for configuring IPv6 policy routes are similar to those for configuring
IPv4 policy routes, except that the addresses are IPv6 addresses. For details about
the configuration commands, refer to Policy Routing Configuration in the ZXR10
ZSR V2 (V2.00.10) Configuration Guide (Policy Template).
9-30
Command Function
End of Steps
Configuration Flow
1. Enable IPv6 and configure the interface addresses on the ZXR10.
2. Create an ACL to control traffic.
3. Create a route-map, associate it with the ACL, and define the action.
4. Associate the route-map with the corresponding interfaces.
Configuration Commands
Configure the interfaces on the ZXR10.
ZXR10(config)#interface gei-1/1
ZXR10(config-if-gei-1/1)#no shutdown
ZXR10(config-if-gei-1/1)#description To User1
ZXR10(config-if-gei-1/1)#ipv6 enable
9-31
9-32
ZXR10(config)#ipv6-access-list 2
ZXR10(config-ipv6-acl)#rule 1 permit ipv6 20::1/64 any
ZXR10(config-ipv6-acl)#exit
ZXR10(config)#show ipv6-access-lists name 2
ipv6-access-list 2
1/1 (showed/total)
1 permit ipv6 20::1/64 any
9-33
Configuration Verification
Check the route-map configuration information, as shown below.
ZXR10(config)#show route-map v6-pbr
[route-map v6-pbr] IP type: IPv6
route-map v6-pbr permit 10
match ipv6 address 1
set ipv6 next-hop 100:0:0:0:0:0:0:1
route-map v6-pbr permit 20
match ipv6 address 2
set ipv6 next-hop 200:0:0:0:0:0:0:1
9-34
9-35
9-36
10-1
RFC defines a mode to allocate IPv6 multicast addresses dynamically, that is, an IPv6
multicast address on the basis of unicast prefix. An IPv6 multicast address includes the
unicast address prefix of its multicast source network. Global-unique multicast addresses
can be allocated in this way. Figure 10-1 lists the address structure.
Figure 10-1 Structure of IPv6 Multicast Address on the Basis of Unicast Prefix
MLD originates from the Internet Group Management Protocol (IGMP). MLDv1
corresponds to IGMPv2, and Multicast Listener Discovery Version 2 (MLDv2)
corresponds to IGMPv3. Different from IGMP which uses message type of IP
protocol number 2, MLD uses message type of ICMPv6 (the IP protocol number
is 58), including MLD Query message (type value is 130, MLDv1 Report message
(type value is 131), MLDv1 Leaving message (type value is 132) and MLDv2 Report
message (type value is 143). MLD acts completely the same as IGMP does except
for the message structure.
IPv6 PIM protocol action is the same as that of IPv4 PIM except the IP address
structure in messages. IPv6 PIM also supports Sparse Mode (SM), Dense Mode
(DM) and Source Specific Multicast (SSM).
10-2
When IPv6 PIM sends a protocol message (such as PIM Hello, Join-Prune, Assert,
Bootstrap, Graft, Graft-Ack or State-refresh) of link-local range, the source IPv6
address of the message is the link-local address on the interface that sends
the message. When IPv6 PIM sends a protocol message (such as Register,
Register-Stop or C-RP Advertisement), the source IPv6 address of the message is
the global unicast address on the interface that sends the message.
IPv6 multicast does not support Multicast Source Discovery Protocol (MSDP). There
are two ways to receive multicast data from other IPv6 PIM domains.
a. One way is to obtain the multicast source addresses in other IPv6 PIM domains
directly through other modes (such as advertisement) and use IPv6 PIM-SSM to
initiate joins of specific source groups.
b. The other way is to use the embedded Rendezvous Point (RP) mechanism. The
device can obtain the RP addresses in other IPv6 PIM domains through the IPv6
multicast addresses with embedded RP addresses, and initiate joins to the RPs
in other domains. To deliver inter-domain IPv6 multicast routing information, IPv6
MBGP can be used, which is similar to IPv4 MBGP.
Steps
1. Configure public IP multicast.
Command Function
10-3
Command Function
Command Function
ZXR10#show ipv6 mroute [group <group-address>][source Displays the content of the IPv6
<source-address>] multicast routing table.
Command Function
End of Steps
10-4
When a unicast route is blocked in the network, data (including multicast data) cannot
be forwarded because of no RPF route. An RPF route can be generated by configuring
a static multicast route, so that a multicast table entry is created to guide multicast data
forwarding.
Multicast routing protocols use the RPF check mechanism during creation of multicast
routing entries to ensure that multicast data can be transmitted through a correct path.
This can also avoid generation of loops due to various reasons.
11-1
The method for selecting an optimum path with the multicast source address as the
destination address from the unicast routing table, MBGP routing table, and static
multicast routing table.
1. If the longest match algorithm is configured, the route with the longest mask is selected.
2. If the three routes have the same mask, the route with the highest priority is selected.
3. If the three routes have the same priority, routes are selected in order of the static
multicast route, MBGP route, and unicast route.
The selected route serves as the RPF route to determine the RPF interface and RPF
neighbor.
Steps
1. Configure static multicast.
11-2
Command Function
End of Steps
Figure 11-1 Networking Diagram of the IPv6 Static Multicast Configuration Example
Configuration Flow
1. Configure IP addresses of interfaces.
2. Enter multicast mode.
3. Start static multicast.
4. Configure the maximum entries numbers of static multicast (*,G) and (S,G) separately.
5. Configure the outgoing interface list of static multicast.
6. Configure a static multicast route.
Configuration Commands
Configuration on R1:
R1(config)#ipv6 multicast-routing
R1(config-mcast-ipv6)#ipv6 multicast-static-start
R1(config-mcast-ipv6)#ipv6 multicast-static-limit xg 1024 sg 1024
R1(config-mcast-ipv6)#ipv6 multicast-static-interface index 2 interface
gei-3/7
R1(config-mcast-ipv6)#ipv6 multicast-static-route 1::1 ff88::1 iif
11-3
gei-3/6 oif 2
R1(config-mcast-ipv6)#end
Configuration Verification
Run the show ipv6 multicast-static-interface command on R1 to display static multicast
information about interfaces:
R1(config)#show ipv6 multicast-static-interface
STATIC-MULTICAST OUT PORT INDEX 2:
Outgoing Interface:
gei-3/7
(1::1, ff88::1)
Incoming interface: gei-3/6 A
Outgoing interface list:
gei-3/7 F
11-4
When a host leaves a group, the multicast router receives a leaving message, and then
it queries whether there is any other active member in the group immediately. If there is
any, the multicast router continues forwarding data. Otherwise, it will not forward data any
longer.
At present, there are two versions of MLD. MLDv1 corresponds to IGMPv2, and it provides
the fast leaving mechanism of group members. MLDv2 corresponds to IGMPv3, and
12-1
it provides the ability to receive or refuse to receive packets from designated multicast
sources, thus to support SSM.
Steps
1. Configure MLD version.
At present, there is MLDv1 and MLDv2. By default, it is v2. Users can set the version
with the version <version> command according to demand. Considering security, it
is required to use the same version on the network elements in the same segment.
The MLD version can be configured based on an instance or an interface. The MLD
version configured based on an interface takes precedence. Different versions can be
configured on different interfaces of the same device.
Command Function
Command Function
4. Configure SSM-mapping.
12-2
Command Function
You can configure it in instance mode or in interface mode. The latter takes
precedence.
Command Function
12-3
12-4
Command Function
12-5
Command Function
ZXR10#show ipv6 mld groups [{[<interface-name>],[<g Displays joining of multicast groups that
roup-address>]}][detail] are learned through the MLD protocol by
the interface directly connected to the
router.
ZXR10#show ipv6 mld packet-count [<interface-name>] Displays statistics counts of MLD protocol
messages sent and received.
9. Maintain MLD.
Command Function
ZXR10#clear ipv6 mld groups [<interface-name>] Clears multicast groups that are joined
dynamically.
End of Steps
Configuration Flow
1. Configure addresses on the interfaces of the routers in interface configuration mode.
The link-local address of R1 should be smaller than that of R2.
2. Enable the multi-cast function by configuring the ipv6 multicast-routing command.
3. Enter PIM route mode and then enter the interfaces.
4. Enable PIM-SM in interface configuration mode.
12-6
Configuration Commands
The configuration of R1 is as follows:
R1(config)#interface gei-1/1
R1(config-if-gei-1/1)#ipv6 enable
R1(config-if-gei-1/1)#ipv6 address link-local fe80::1
R1(config-if-gei-1/1)#no shutdown
R1(config-if-gei-1/1)#exit
R1(config)#ipv6 multicast-routing
R1(config-mcast-ipv6)#router pim
R1(config-mcast-ipv6-pim)#interface gei-1/1
R1(config-mcast-ipv6-pim-if-gei-1/1)#pimsm
R1(config-mcast-ipv6-pim-if-gei-1/1)#end
Configuration Verification
Check the validity of the configuration on R1:
R1#show ipv6 mld interface gei-1/1
gei-1/1
Internet address is fe80::1
MLD is enabled on interface
Current MLD version is 2
MLD query interval is 125 seconds
MLD last member query interval is 1 seconds
MLD query max response time is 10 seconds
MLD querier timeout period is 255 seconds
MLD robustness variable is 2
MLD querier is fe80::1, never expire
Inbound MLD access group is not set
MLD immediate leave control is not set
12-7
Figure 12-2 Example for Configuring a Router to Join a Static MLD Group and a
Dynamic MLD Group
Configuration Flow
1. Configure addresses on the interfaces of the routers in interface configuration mode.
2. Enable the multicast function by configuring the ipv6 multicast-routing command.
3. Enter PIM route mode and then enter the interfaces.
4. Enable PIM-SM in interface configuration mode.
5. In multicast mode, enter MLD route mode and then enter the interfaces to be
configured.
6. Configure the static group on gei-1/1 of R1.
7. Send MLD group join messages to R1 on the PC.
Configuration Commands
The configuration of R1 is as follows:
R1(config)#interface gei-1/1
R1(config-if-gei-1/1)#ipv6 enable
R1(config-if-gei-1/1)#ipv6 address 100::1/64
R1(config-if-gei-1/1)#no shutdown
12-8
R1(config-if-gei-1/1)#exit
R1(config)#ipv6 multicast-routing
R1(config-mcast-ipv6)#router pim
R1(config-mcast-ipv6-pim)#interface gei-1/1
R1(config-mcast-ipv6-pim-if-gei-1/1)#pimsm
R1(config-mcast-ipv6-pim-if-gei-1/1)#end
R1#configure terminal
R1(config)#ipv6 multicast-routing
R1(config-mcast-ipv6)#router mld
R1(config-mcast-ipv6-mld)#interface gei-1/1
R1(config-mcast-ipv6-mld-if-gei-1/1)#static-group ffee::1 source 200::1
R1(config-mcast-ipv6-mld-if-gei-1/1)#end
Configuration Verification
Check the interface information on R1:
R1#show ipv6 mld interface gei-1/1
gei-1/1
Internet address is fe80::2d0:d0ff:fe06:606
MLD is enabled on interface
Current MLD version is 2
MLD query interval is 125 seconds
MLD last member query interval is 1 seconds
MLD query max response time is 10 seconds
MLD querier timeout period is 255 seconds
MLD robustness variable is 2
MLD querier is fe80::2d0:d0ff:fe06:606, never expire
Inbound MLD access group is not set
MLD immediate leave control is not set
Check the detailed information about the corresponding interface group on R1:
R1#show ipv6 mld groups gei-1/1 detail
Flags: S - Static Group, SSM - SSM Group, M - MDT Group
Interface: gei-1/1
Group: ffee::1
Flags:
Uptime: 01:06:51
Group mode: INCLUDE
Last reporter: fe80::2d0:e0ff:fe10:201f
Group source list: (M - SSM Mapping, S - Static, R - Report)
Source addr Present Expires Fwd Flag
200::1 01:06:51 Never Yes S
Check the detailed information about a PC requesting to join the multicast groups on R1:
R1(config-mcast-ipv6)#show ipv6 mld groups
Total: 2 groups
12-9
12-10
Steps
1. Configure IPv6 PIM-DM.
13-1
Command Function
ZXR10#show ipv6 pim interface [<interface-name>] Checks the configured IPv6 PIM interface.
ZXR10#show ipv6 pim mroute [[group <group-address Checks the content of the IPv6 PIM
>[source <source-address>]]|[summary]] multicast routing table.
ZXR10#show ipv6 pim neighbor [[<interface-name>]|[d Checks the negihbor status of the IPv6
etail]] PIM interface.
Command Function
End of Steps
13-2
Configuration Flow
1. Configure addresses of related interfaces.
2. Enters the multicast mode.
3. Enters the IPv6 PIM mode.
4. Enable the PIM-DM function for corresponding interfaces.
Configuration Commands
Run the following commands on R1:
R1(config)#interface gei-0/9
R1(config-if-gei-0/9)#ipv6 enable
R1(config-if-gei-0/9)#ipv6 address 199::1/64
R1(config-if-gei-0/9)#no shutdown
R1(config-if-gei-0/9)#exit
R1(config)#interface gei-0/7
R1(config-if-gei-0/7)#ipv6 enable
R1(config-if-gei-0/7)#ipv6 address 198::1/64
R1(config-if-gei-0/7)#no shutdown
R1(config-if-gei-0/7)#exit
R1(config)#ipv6 multicast-routing
R1(config-mcast-ipv6)#router pim
R1(config-mcast-ipv6-pim)#interface gei-0/9
R1(config-mcast-ipv6-pim-if-gei-0/9)#pimdm
R1(config-mcast-ipv6-pim-if-gei-0/9)#exit
R1(config-mcast-ipv6-pim)#interface gei-0/7
R1(config-mcast-ipv6-pim-if-gei-0/7)#pimdm
R1(config-mcast-ipv6-pim-if-gei-0/7)#end
13-3
R2(config-if-gei-0/4)#no shutdown
R2(config-if-gei-0/4)#exit
R2(config)#interface gei-0/7
R2(config-if-gei-0/7)#ipv6 enable
R2(config-if-gei-0/7)#ipv6 address 200::1/64
R2(config-if-gei-0/7)#no shutdown
R2(config-if-gei-0/7)#exit
R2(config)#ipv6 multicast-routing
R2(config-mcast-ipv6)#router pim
R2(config-mcast-ipv6-pim)#interface gei-0/4
R2(config-mcast-ipv6-pim-if-gei-0/4)#pimdm
R2(config-mcast-ipv6-pim-if-gei-0/4)#exit
R2(config-mcast-ipv6-pim)#interface gei-0/7
R2(config-mcast-ipv6-pim-if-gei-0/7)#pimdm
R2(config-mcast-ipv6-pim-if-gei-0/7)#end
R2#configure terminal
R2(config)#ipv6 route 198::/64 199::1 /*Unicast route to the source*/
Configuration Verification
Run the show ipv6 pim neighbor command on R1 to check the neighbor status.
R1(config)#show ipv6 pim neighbor
Neighbor Address Interface Uptime Expires DR Pri
fe80::2d0:d0ff:fe06:600 gei-0/9 00:09:12 00:00:26 1
Run the show ipv6 pim interface command on R1 to check the interface status.
R1(config)#show ipv6 pim interface
Interface State Nbr Hello DR PIM Silent Mode
Count Period Priority
gei-0/7 Up 0 30 1 Disabled D
Address: fe80::2d0:d0ff:fe06:606
DR : fe80::2d0:d0ff:fe06:606
gei-0/9 Up 1 30 1 Disabled D
Address: fe80::2d0:d0ff:fe06:606
DR : fe80::2d0:d0ff:fe06:606
Run the show ipv6 pim mroute command on R1 to check the status of the IPv6 multicast
routing table.
R1(config)#show ipv6 pim mroute
IPv6 PIM Multicast Routing Table
Flags: T- SPT-bit set,A- Forward,J- Join SPT,U- Upsend,S- PIM-SM,D- PIM-DM,
Macro state: Ind- Pim Include Macro,Exd- Pim Exclude Macro,
Jns- Pim Joins Macro,LAst- Pim Lost_assert Macro,
Imo- Pim Immediate_olist Macro,Ino- Pim Inherited_olist Macro,
13-4
13-5
13-6
RP
PIM-SM sends multicast packets by using a shared tree. A shared tree has a center point
that is responsible for sending packets to all the source-sending ends in the multicast
group. Each source-sending end sends packets to the center point along the shortest
path, and then takes the center point as the root point to distribute the packets to various
receiving ends of the group.
The group center point of the PIM-SM is called the RP. There may be several RPs in a
network, but there is only one RP in a multicast group.
A router can obtain the location of the RP in two ways.
1. Configure the RP manually and statically on the routers running PIM-SM.
2. PIM-SMv2 obtains the location through the candidate RP advertisement. The
candidate RP with the highest priority becomes a formal RP.
In PIM-SM, some routers running PIM-SM are manually set to work as candidate Bootstrap
Router (BSR). The candidate BSR with the highest priority is elected as the formal BSR.
The BSR is responsible for collecting the candidate RP information on the multicast routers
in group to find out candidate RPs in the multicast domain. It notifies the candidate RPs to
14-1
all the PIM routers in the PIM domain in a unified way. Each PIM router, according to the
similar Hash rules, elects the one with the highest priority as the formal RP from the same
candidate RP set. Candidate RPs are configured manually.
Messages Types
In PIM-SM, there are the following types of messages.
l Hello message: The router interfaces on which PIM-SM runs send Hello messages
periodically to the neighbor interfaces in the same segment to establish a neighbor
relationship. Hello messages are also used for routers running MLD to elect the DR.
l Register message: When receiving a multicast packet sent by a host in the local
network, the DR encapsulates the packet in a Register message and sends it to the
RP through unicast. The source address in the IP header of the Register message is
the address of the DR, and the destination address is the address of the RP.
l Register-Stop message: The RP unicasts a Register-Stop message to the sender of
the Register message to inform it stop sending Register messages.
l Join/Prune message: This message is forwarded in the direction to the source or
the RP. A Join message is used to construct a source tree or a shard tree. When a
receiver leaves a group, it sends a Prune message to prune the source tree or the
shard tree. This message contains the joining information and pruning information
about the multicast route entities. The Join message and the Prune message are in
the same packet. Either message can be null.
l Bootstrap message: A route needs to send Bootstrap messages on all interfaces
except the interface on which the Bootstrap message is received. This message is
generated on the BSR and forwarded by all routers.
l Assert message: When there are several routers on a multi-access network and a
multicast group packet is received on an egress interface of a router, it is necessary
to use the Assert message to designate a forwarder.
l Candidate-RP-Advertisement: A candidate RP unicasts
Candidate-RP-Advertisement to the BSR periodically to advertise the set of group
addresses served by the Candidate RP.
PIM-SM Features
The routers running PIM-SM discover each other and maintain the neighbor relationship by
exchanging Hello messages. In the multi-access network, the Hello messages also contain
the priority information about routers. The DR is elected according to this parameter.
The multicast source or the first hop router (the DR connecting to the source directly)
encapsulates a packet in a Register message, and then sends it to the RP through a unicast
router. When receiving the Register message, the RP de-encapsulates the messages to
take out the packet, and then sends the packet to the receivers of the group along the
shared multicast tree.
Each host acting as a receiver joins the multicast group through the IGMP member report
message. The last hop router (or the DP in the multi-access network) sends the received
Join message to the RP level by level. After receiving the Join message, the intermediate
14-2
router checks whether it has already had the routes of the group. If it has, the intermediate
router adds the downstream request router to the shared multicast tree as a branch. If not,
it continues to send the Join message to the RP.
When the RP or the multicast router connects to a receiver directly, it can switch to the
SPT from the shared tree. When the RP receives a Register message sent from a new
multicast source, the RP returns a Join message to the DR directly connecting to the
multicast source. Thus, the SPT from the source to the RP is constructed.
After a DR or a router directly connecting to multicast members receives the first multicast
packet from the multicast group, or the received packets reaches a threshold, it can switch
to the SPT from the shared tree. Once the handover occurs, the router sends a Prune
message to the upstream neighbor and requests to leave the shared tree.
Steps
1. Enable and configure the IPv6 PIM-SM protocol.
Command Function
14-3
The following example shows how to configure a static RP 2001::1 for all multicast
groups.
ZXR10(config-mcast-ipv6-pim)#static-rp 2001::1
Command Function
Command Function
14-4
In IPv6 PIM-SM, different parameters have different default values. Configuring these
parameters can optimize the network.
In a shared segment connecting to the multicast source, only the DR can send Register
messages to RP. In a shared segment connecting to receivers, only the DR reply to the
MLD Join messages and Leaving messages, and send PIM Join/Pruning messages to
upstream devices. The router priority is contained in the Hello messages exchanged
with neighbors, with the default value of 1.
14-5
By default, an interface is not the border of the PIM domain. When the interface is
set to the border of the PIM domain, no BSR messages can pass the border in any
direction. This function divides the network into different areas of BSR messages
effectively. Other PIM messages can pass the domain border.
The following example shows how to configure a PIM domain border on gei-1/1.
ZXR10(config-mcast-ipv6)#router pim
ZXR10(config-mcast-ipv6-pim)#interface gei-1/1
ZXR10(config-mcast-ipv6-pim-if-gei-1/1)#bsr-border
ZXR10(config-mcast-ipv6-pim-if-gei-1/1)#exit
The intervals of sending Hello messages to PIM-SM neighbors can be set according
to demand.
The following example shows how to configure the intervals of sending PIM Hello
messages on gei-1/1.
ZXR10(config-mcast-ipv6)#router pim
ZXR10(config-mcast-ipv6-pim)#interface gei-1/1
ZXR10(config-mcast-ipv6-pim-if-gei-1/1)#hello-interval 25
ZXR10(config-mcast-ipv6-pim-if-gei-1/1)#exit
Command Function
ZXR10(config)#show ipv6 pim mroute [group Displays the IPv6 PIM routing table.
<group-address>][source <source-address>]
14-6
Command Function
ZXR10(config)#show ipv6 pim interface [<interface-name>] Displays the interface on which PIM
is configured.
ZXR10(config)#show ipv6 pim nexthop [dest-address Displays the IPv6 PIM next hop
<ipv6-address>] information.
End of Steps
Configuration Flow
1. Configure addresses of related interfaces.
2. Enter multicast configuration mode.
3. Enter PIM configuration mode.
4. Set the loopback5 interface on R2 to CRP and BSR.
5. Enable PIM-SM on interfaces.
6. Configure a unicast route to the RP on R1. Configure a unicast route to the multicast
source on R2 (In this example, static route or IGP can be used).
14-7
Configuration Commands
Configuration on R1:
R1(config)#interface gei-0/9
R1(config-if-gei-0/9)#ipv6 enable
R1(config-if-gei-0/9)#ipv6 address 199::1/64
R1(config-if-gei-0/9)#no shutdown
R1(config-if-gei-0/9)#exit
R1(config)#interface gei-0/7
R1(config-if-gei-0/7)#ipv6 enable
R1(config-if-gei-0/7)#ipv6 address 198::1/64
R1(config-if-gei-0/7)#no shutdown
R1(config-if-gei-0/7)#exit
R1(config)#ipv6 multicast-routing
R1(config-mcast-ipv6)#router pim
R1(config-mcast-ipv6-pim)#interface gei-0/9
R1(config-mcast-ipv6-pim-if-gei-0/9)#pimsm
R1(config-mcast-ipv6-pim-if-gei-0/9)#exit
R1(config-mcast-ipv6-pim)#interface gei-0/7
R1(config-mcast-ipv6-pim-if-gei-0/7)#pimsm
R1(config-mcast-ipv6-pim-if-gei-0/7)#dr-priority 20
R1(config)#ipv6 route 100::1/128 199::2
Configuration on R2:
R2(config)#interface gei-0/8
R2(config-if-gei-0/8)#ipv6 enable
R2(config-if-gei-0/8)#ipv6 address 199::2/64
R2(config-if-gei-0/8)#no shutdown
R2(config-if-gei-0/8)#exit
R2(config)#interface gei-0/7
R2(config-if-gei-0/7)#ipv6 enable
R2(config-if-gei-0/7)#ipv6 address 200::1/64
R2(config-if-gei-0/7)#no shutdown
R2(config-if-gei-0/7)#exit
R2(config)#interface loopback5
R2(config-if-loopback5)#ipv6 enable
R2(config-if-loopback5)#ipv6 address 100::1/128
R2(config-if-loopback5)#exit
R2(config)#ipv6 multicast-routing
R2(config-mcast-ipv6)#router pim
R2(config-mcast-ipv6-pim)#rp-candidate 100::1
R2(config-mcast-ipv6-pim)#bsr-candidate 100::1
R2(config-mcast-ipv6-pim)#interface gei-0/8
R2(config-mcast-ipv6-pim-if-gei-0/8)#pimsm
R2(config-mcast-ipv6-pim-if gei-0/8)#exit
14-8
R2(config-mcast-ipv6-pim)#interface gei-0/7
R2(config-mcast-ipv6-pim-if-gei-0/7)#pimsm
R2(config-mcast-ipv6-pim-if-gei-0/7)#dr-priority 20
R2(config-mcast-ipv6-pim-if-gei-0/7)#end
R2#configure terminal
R2(config)#ipv6 route 198::/64 199::1
Configuration Verification
Execute the show ipv6 pimsm interface command on R1 to check the interface state, as
shown below.
R1(config)#show ipv6 pim interface
Interface State Nbr Hello DR PIM Mode
Count Period Priority Silent
gei-0/7 Up 0 30 20 Disabled S
Address: fe80::2d0:d0ff:fe06:606
DR : fe80::2d0:d0ff:fe06:606
gei-0/9 Up 1 30 1 Disabled S
Address: fe80::2d0:d0ff:fe06:606
DR : fe80::2d0:d0ff:fe06:606
Execute the show ipv6 pim neighbor command on R1 to check the neighbor state, as shown
below.
R1(config)#show ipv6 pim neighbor
Neighbor Address(es) Interface Uptime Expires DR Pri
fe80::211:12ff:fe51:ea12 gei-0/9 01:02:30 00:01:19 1
Execute the show ipv6 pim bsr command on R1 to check the BSR state, as shown below.
R1(config)#show ipv6 pim bsr
Execute the show ipv6 mroute command on R1 to check the IPv6 multicast routing table.
R1#show ipv6 mroute
IPv6 Multicast Routing Table
Flags:NS:SPT upsend,RT:Reg upsend,F:Forward,
NTP:NTP join,DPU:Damping enable,DPD:Damping del,
(198::2, ff1e::1), TYPE: DYNAMIC, FLAGS:
Incoming interface: gei-0/7, flags:
Outgoing interface list:
gei-0/9, flags: F
14-9
14-10
After a host sends a Join message from a specific source to a group, the last hop router
sends a (S, G) Join message to the direction of the source to construct a SPT. The last
hop router does not send a (*, G) Join message to the direction of RP. Once the SPT is
constructed, the first hop router forwards packets along this tree.
Steps
1. Configure IPv6 PIM-SSM.
Command Function
15-1
Command Function
ZXR10#show ipv6 pim mroute [group <group-address Displays the IPv6 PIM routing table.
>][source <source-address>]
End of Steps
Configuration Flow
1. In interface configuration mode, configure interface addresses on gei-1/1 and gei-1/2
of R1.
2. Enable the IP multicast function with the ipv6 multicast-routing command.
3. Enter IPv6 PIM route configuration mode to configure the address range of SSM group.
4. Enter the interfaces gei-1/1 and gei-1/2 to enable PIM-SM.
5. Enter MLD route configuration mode and then enter the interfaces to enable MLDv2.
6. Send dynamic group Join messages to specific source on the receiving group.
Configuration Commands
Configuration on R1:
R1(config)#interface gei-1/1
R1(config-if-gei-1/1)#ipv6 enable
R1(config-if-gei-1/1)#ipv6 address 100::1/64
R1(config-if-gei-1/1)#no shutdown
R1(config-if-gei-1/1)#exit
R1(config)#interface gei-1/2
R1(config-if-gei-1/2)#ipv6 enable
R1(config-if-gei-1/2)#ipv6 address 200::1/64
R1(config-if-gei-1/2)#no shutdown
R1(config-if-gei-1/2)#exit
15-2
R1(config)#ipv6 multicast-routing
R1(config-mcast-ipv6)#router pim
R1(config-mcast-ipv6-pim)#interface gei-1/1
R1(config-mcast-ipv6-pim-if-gei-1/1)#pimsm
R1(config-mcast-ipv6-pim-if-gei-1/1)#exit
R1(config-mcast-ipv6-pim)#interface gei-1/2
R1(config-mcast-ipv6-pim-if-gei-1/2)#pimsm
R1(config-mcast-ipv6-pim-if-gei-1/2)#exit
R1(config-mcast-ipv6-pim)#ssm range default
R1(config-mcast-ipv6-pim)#exit
Configuration Verification
Check the configuration information on R1, as shown below.
15-3
15-4
An IPv6 over IPv4 tunnel can be established between two hosts, between a host and a
router, or between two routers. The termination point of the tunnel may be the ultimate
destination of the IPv6 packet, or the packet may still need to be further forwarded.
Therefore, tunnels are classified into configured tunnels and automatic tunnels based on
the ways to obtain the destination IPv4 address of a tunnel.
16-1
l If the termination address of the IPv6 over IPv4 tunnel cannot be automatically
obtained from the destination address of the IPv6 packet but needs to be manually
configured, the tunnel is called a configured tunnel, such as a 6in4 tunnel.
l If the interface address of the IPv6 over IPv4 tunnel assumes a special
IPv4-embedded IPv6 address format (i.e. the IPv4 address of the tunnel termination
point can be automatically obtained from the destination address of the IPv6 packet),
the tunnel is called an automatic tunnel, such as a 6to4 tunnel or an ISATAP tunnel.
There is another type of IPv4 or IPv6 over IPv6 tunnel. The protocol encapsulates an IPv4
or IPv6 data packet so that the encapsulated data packet can be transmitted in another
IPv6 network. The data packet after the encapsulation is an IPv6 tunnel packet, as shown
in Figure 16-2.
Figure 16-2 Principles of the IPv4 (or IPv6) over IPv4 Tunnel
6in4 Tunnel
Figure 16-3 shows the operating principles of a 6in4 tunnel.
16-2
l Encapsulation: If the packet egress interface is a tunnel interface when an IPv6 host
or router sends an IPv6 flow, the host or router first determines the tunnel type. If
the tunnel is a 6in4 tunnel, the host or router implements IPv4 header encapsulation.
During the encapsulation, the source and destination addresses of the IPv4 header
are manually configured by the user. The encapsulated packet is then sent according
to the IPv4 packet sending process.
l Decapsulation: The process is just contrary to the encapsulation process. If the
protocol number in the IPv4 header of the received IPv4 packet is 41, the host or router
proceeds to the 6in4 decapsulation process and searches for the matched tunnel
number according to the source and destination addresses of the packet. If the tunnel
number is found, the host or router removes the IPv4 header added during tunnel
encapsulation and delivers the remaining IPv6 packet to the IPv6 packet receiving
process for further handling.
6to4 Tunnel
Figure 16-4 shows the operating principles of a 6to4 tunnel.
A 6to4 tunnel is a point-to-multipoint auto tunnel used to connect multiple isolated IPv6 sites
through an IPv4 network to an IPv6 network. It makes possible the automatic acquisition
of the IPv4 address at the termination point of the tunnel by embedding an IPv4 address
in the destination address of an IPv6 packet.
The 6to4 tunnel assumes a special 6to4 address in the format of 2002:abcd:efgh:Subnet
ID::InterfaceID/64. Of the address, 2002 is a fixed IPv6 address prefix, abcd:efgh is a
globally unique 32-bit IPv4 source address of the 6to4 tunnel in hexadecimal (e.g. 1.1.1.1
can be expressed as 0101:0101), and the rest uniquely identifies the position of a host in
a 6to4 network. As the termination point of the tunnel can be automatically determined by
this embedded IPv4 address, tunnel establishment is very convenient.
Because the 16-bit subnet ID in the 64-bit address prefix of the 6to4 address can be
user-defined whereas the first 48 bits of the prefix are a fixed number or determined by
the IPv4 address of the device at the start or termination point of a tunnel, it is possible to
forward IPv6 packets over the tunnel. The 6to4 tunnel makes possible the interconnection
16-3
of two IPv6 networks through an IPv4 network and thus eliminates the limitations of
automatic IPv4-compatible IPv6 tunnels in practical use.
l Encapsulation: If the egress interface of the sent IPv6 packet is a tunnel interface,
the host first determines the tunnel type. If the tunnel is a 6to4 tunnel, the host
implements IPv4 header encapsulation. During the encapsulation, the source address
is user-configured whereas the destination address is obtained from the destination
address of the packet. The encapsulated packet is then sent according to the IPv4
packet sending process.
l Decapsulation: If the protocol number in the IPv4 header of the received IPv4 packet is
41, the host proceeds to the 6to4 decapsulation process and searches for the matched
tunnel number according to the source address of the packet. If the tunnel number
is found, the host removes the IPv4 header added during tunnel encapsulation and
delivers the remaining IPv6 packet to the IPv6 packet receiving process for further
handling.
4in6 Tunnel
Figure 16-5 shows the operating principles of a 4in6 tunnel.
16-4
Steps
1. Create an IPv6 tunnel interface and enter IPv6 tunnel interface configuration mode.
16-5
Command Function
End of Steps
Configuration Description
As shown in Figure 16-6, suppose R1 and R2 are dual-stack routers whereas PC1 and
PC2 are IPv6 hosts. This example describes how to configure a 6in4 tunnel.
16-6
Configuration Flow
The 6in4 tunnel is of v6 nature and thus IPv6 needs to be enabled. The source address
of the tunnel is the IPv4 address of the local router, whereas the destination address is
the IPv4 address of the peer router. There must be a route for interworking between the
source address and the destination address of the tunnel (via the IPv4 routing protocol,
the static routing protocol or other routing protocols).
1. Create 6in4 tunnel interfaces and enable IPv6 on them.
2. Enter the tunnel configuration mode from the global mode, and then enter the 6in4
tunnel interface to be configured.
3. Configure the tunnel mode, the source address, and the destination address.
Configuration Commands
Configuration on R1:
R1(config)#interface v6_tunnel3
R1(config-if-v6_tunnel3)#ipv6 enable
R1(config-if-v6_tunnel3)#ipv6 address 3172::27/64
R1(config-if-v6_tunnel3)#exit
R1(config)#ipv6-tunnel-config
R1(config-ipv6-tunnel)#interface v6_tunnel3
R1(config-ipv6-tunnel-if-v6_tunnel3)#tunnel mode ipv6ip 6in4
R1(config-ipv6-tunnel-if-v6_tunnel3)#tunnel destination ipv4 33.1.1.28
R1(config-ipv6-tunnel-if-v6_tunnel3)#tunnel source ipv4 33.1.1.27
R1(config-ipv6-tunnel-if-v6_tunnel3)#exit
R1(config-ipv6-tunnel)#exit
R1(config)#interface gei-2/4
R1(config-if-gei-2/4)#no shutdown
R1(config-if-gei-2/4)#ip address 33.1.1.27 255.255.0.0
R1(config-if-gei-2/4)#exit
R1(config)#interface gei-2/3
R1(config-if-gei-2/3)#no shutdown
R1(config-if-gei-2/3)#ipv6 enable
R1(config-if-gei-2/3)#ipv6 address 2700::1/64
R1(config-if-gei-2/3)#exit
Configuration on R2:
R2(config)#interface v6_tunnel3
R2(config-if-v6_tunnel3)#ipv6 enable
R2(config-if-v6_tunnel3)#ipv6 address 3172::28/64
R2(config-if-v6_tunnel3)#exit
R2(config)#ipv6-tunnel-config
R2(config-ipv6-tunnel)#interface v6_tunnel3
R2(config-ipv6-tunnel-if-v6_tunnel3)#tunnel mode ipv6ip 6in4
16-7
R2(config)#interface gei-3/4
R2(config-if-gei-3/4)#no shutdown
R2(config-if-gei-3/4)#ip address 33.1.1.28 255.255.0.0
R2(config-if-gei-3/4)#exit
R2(config)#interface gei-3/3
R2(config-if-gei-3/3)#no shutdown
R2(config-if-gei-3/3)#ipv6 enable
R2(config-if-gei-3/3)#ipv6 address 2800::1/64
R2(config-if-gei-3/3)#exit
Configuration Verification
Check the tunnel configurations on R1, and verify that the configurations have taken effect:
16-8
Configuration Description
As shown in Figure 16-7, suppose R1 and R2 are dual-stack routers whereas PC1 and
PC2 are IPv4 hosts. This example describes how to configure a 4in6 tunnel.
Configuration Flow
The 4in6 tunnel is of v4 nature. The source address of the tunnel is the IPv6 address of
the local router, whereas the destination address is the IPv6 address of the peer router.
There must be a route for interworking between the source address and the destination
address of the tunnel (via the IPv6 routing protocol, the static routing protocol or other
routing protocols).
1. Create a 4in6 tunnel and configure IPv4 addresses.
2. Enter the tunnel configuration mode from the global mode, and then enter the 4in6
tunnel interface to be configured.
3. Configure the tunnel mode, the source address, and the destination address.
Configuration Commands
Configuration on R1:
R1(config)#interface v6_tunnel2
R1(config-if-v6_tunnel2)#ip address 27.0.1.1 255.255.0.0
R1(config-if-v6_tunnel2)#exit
R1(config)#ipv6-tunnel-config
R1(config-ipv6-tunnel)#interface v6_tunnel2
R1(config-ipv6-tunnel-if-v6_tunnel2)#tunnel mode ipipv6 4in6
R1(config-ipv6-tunnel-if-v6_tunnel2)#tunnel destination ipv6 2078::28
R1(config-ipv6-tunnel-if-v6_tunnel2)#tunnel source ipv6 2078::27
R1(config-ipv6-tunnel-if-v6_tunnel2)#exit
R1(config-ipv6-tunnel)#exit
R1(config)#interface gei-2/4
16-9
R1(config-if-gei-2/4)#no shutdown
R1(config-if-gei-2/4)#ipv6 address 2078::27/64
R1(config-if-gei-2/4)#ipv6 enable
R1(config-if-gei-2/4)#exit
R1(config)#interface gei-2/3
R1(config-if-gei-2/3)#no shutdown
R1(config-if-gei-2/3)#ip address 150.23.1.1 255.255.0.0
R1(config-if-gei-2/3)#exit
Configuration on R2:
R2(config)#interface v6_tunnel2
R2(config-if-v6_tunnel2)#ip address 27.0.1.2 255.255.0.0
R2(config-if-v6_tunnel2)#exit
R2(config)#ipv6-tunnel-config
R2(config-ipv6-tunnel)#interface v6_tunnel2
R2(config-ipv6-tunnel-if-v6_tunnel2)#tunnel mode ipipv6 4in6
R2(config-ipv6-tunnel-if-v6_tunnel2)#tunnel destination ipv6 2078::27
R2(config-ipv6-tunnel-if-v6_tunnel2)#tunnel source ipv6 2078::28
R2(config-ipv6-tunnel-if-v6_tunnel2)#exit
R2(config-ipv6-tunnel)#exit
R2(config)#interface gei-3/4
R2(config-if-gei-3/4)#no shutdown
R2(config-if-gei-3/4)#ipv6 address 2078::28/64
R2(config-if-gei-3/4)#ipv6 enable
R2(config-if-gei-3/4)#exit
R2(config)#interface gei-3/3
R2(config-if-gei-3/3)#no shutdown
R2(config-if-gei-3/3)#ip address 191.15.1.1 255.255.0.0
R2(config-if-gei-3/3)#exit
Configuration Verification
Check the tunnel configurations on R1, and verify that the configurations have taken effect:
16-10
Configuration Description
As shown in Figure 16-8, suppose R1 and R2 are dual-stack routers whereas PC1 and
PC2 are IPv6 hosts. This example describes how to configure a 6to4 tunnel.
Configuration Flow
A 6to4 tunnel is of v6 nature and thus IPv6 needs to be enabled to connect the 6to4 node
prefixed with 2002::/16. The source end of the tunnel is bound with the IPv4 address of
the local router, and no destination address is required. The tunnel address must assume
a 2002::/16 prefix.
1. Create a 6to4 tunnel, configure IPv6 addresses, and enable IPv6. The first 48 bits of
the tunnel address and the 6to4 sites are of a fixed format and generated according to
the source IPv4 address of the tunnel: Convert the x.x.x.x of the source IPv4 address
of the tunnel into a hexadecimal yyyy:yyyy, and then add 2002::/16 to it to form a 48-bit
prefix 2002:yyyy:yyyy::/48.
2. Enter the tunnel configuration mode from the global mode, and then enter the 6to4
tunnel interface to be configured.
3. Configure the tunnel mode and the source address.
4. Advertise the tunnel route through static routing or BGP4+.
Configuration Commands
Configuration on R1:
16-11
R1(config)#interface gei-2/4
R1(config-if-gei-2/4)#no shutdown
R1(config-if-gei-2/4)#ip address 1.1.1.1 255.255.255.0
R1(config-if-gei-2/4)#exit
R1(config)#interface v6_tunnel2
R1(config-if-v6_tunnel2)#ipv6 address 2002:0101:0101:1::1/64
R1(config-if-v6_tunnel2)#ipv6 enable
R1(config-if-v6_tunnel2)#exit
R1(config)#ipv6-tunnel-config
R1(config-ipv6-tunnel)#interface v6_tunnel2
R1(config-ipv6-tunnel-if-v6_tunnel2)#tunnel mode ipv6ip 6to4
R1(config-ipv6-tunnel-if-v6_tunnel2)#tunnel source ipv4 1.1.1.1
R1(config-ipv6-tunnel-if-v6_tunnel2)#exit
R1(config-ipv6-tunnel)#exit
R1(config)#ipv6 route 2002::/16 v6_tunnel2
Configuration on R2:
R2(config)#interface gei-3/4
R2(config-if-gei-3/4)#no shutdown
R2(config-if-gei-3/4)#ip address 1.1.1.2 255.255.255.0
R2(config-if-gei-3/4)#exit
R2(config)#interface v6_tunnel2
R2(config-if-v6_tunnel2)#ipv6 address 2002:0101:0102:1::1/64
R2(config-if-v6_tunnel2)#ipv6 enable
R2(config-if-v6_tunnel2)#exit
R2(config)#ipv6-tunnel-config
R2(config-ipv6-tunnel)#interface v6_tunnel2
R2(config-ipv6-tunnel-if-v6_tunnel2)#tunnel mode ipv6ip 6to4
R2(config-ipv6-tunnel-if-v6_tunnel2)#tunnel source ipv4 1.1.1.2
R2(config-ipv6-tunnel-if-v6_tunnel2)#exit
R2(config-ipv6-tunnel)#exit
R2(config)#ipv6 route 2002::/16 v6_tunnel2
Configuration Verification
Check the tunnel configurations on R1, and verify that the configurations have taken effect:
16-12
interface v6_tunnel2
tunnel mode ipv6ip 6to4
tunnel source ipv4 1.1.1.1
! </ipv6-tunnel>
R1(config)#show ipv6 interface brief
v6_tunnel2 [up/up]
fe80::101:101
2002:101:101:1::1/64
When an ISATAP tunnel is used, the destination address of an IPv6 packet and the IPv6
address of a tunnel interface should use special ISATAP addresses. The format of an
ISATAP address is Prefix (64 bit):0:5EFE:ip-address. The 64-bit prefix is the prefix of a
legal IPv6 unicast address, and the ip-address is a 32-bit IPv4 source address (in the
a.b.c.d format or abcd:efgh format). Through this embedded IPv4 address, a tunnel can
be established automatically to transmit IPv6 packets. ISATAP tunnels are mainly used to
establish connections between IPv6 routers, and between IPv6 hosts and IPv6 routers on
the IPv4 network.
l Encapsulation principle: When an IPv6 is sent, the egress is an tunnel interface. The
tunnel type is determined according to packet call-back on the interface. If it is an
ISATAP tunnel, IPv4 header encapsulation is performed. An ISATAP tunnel follows the
encapsulation format of a 6in4 tunnel. The outer IPv4 destination address is the IPv4
address embedded in the destination address of the IPv6 packet, and the outer IPv4
source address is the source address of the ISATAP tunnel. After the encapsulation,
the packet is handled according to the common IPv4 packet sending flow.
l Decapsulation principle: The decapsulation flow of an ISATAP tunnel is the same as
that of a 6in4 tunnel. When an IPv4 packet is received and the protocol number in
the IPv4 header is 41, the protocol number processing functions registered for IPv4
are called and the 6in4 decapsulation function is used. The device searches for the
matched tunnel entity according to the source address and destination address of
16-13
the packet. If the matched tunnel entity is found, the IPv4 header encapsulated is
removed, and the left IPv6 packet is handled according to the IPv6 packet receiving
flow.
Figure 16-9 shows the ISATAP tunnel principle.
Steps
1. Configure an ISATAP tunnel.
16-14
<tunnel_no>: Tunnel number, indicating the number of tunnel interfaces that can be
created, range: 1 to 3000.
Command Function
End of Steps
16-15
Configuration Flow
To configure an ISATAP tunnel, it is necessary to enable IPv6 and bind the IPv4 address
of the router at the source end of the tunnel. It is unnecessary to configure the destination
address. The configuration steps are described below:
1. Create an ISATAP tunnel. Configure an IPv6 address and enable IPv6. The IPv6
address on the ISATAP interface uses eui mode.
2. Enter tunnel configuration mode from global configuration mode, and then enter the
ISATAP tunnel interface to be configured.
3. Configure the tunnel mode and the source address.
4. Configure static routes or BGP4+ to advertise the tunnel route.
Configuration Commands
Configuration on R1:
R1(config)#interface gei-2/4
R1(config-if-gei-2/4)#no shutdown
R1(config-if-gei-2/4)#ip add 1.1.1.1 255.255.255.0
R1(config-if-gei-2/4)#exit
R1(config)#interface v6_tunnel2
R1(config-if-v6_tunnel2)#ipv6 add 82::/64 eui-64
R1(config-if-v6_tunnel2)#ipv6 enable
R1(config-if-v6_tunnel2)#exit
R1(config)#ipv6-tunnel-config
R1(config-ipv6-tunnel)#interface v6_tunnel2
R1(config-ipv6-tunnel-if-v6_tunnel2)#tunnel mode ipv6ip isatap
R1(config-ipv6-tunnel-if-v6_tunnel2)#tunnel source ipv4 1.1.1.1
R1(config-ipv6-tunnel-if-v6_tunnel2)#exit
R1(config-ipv6-tunnel)#exit
R1(config)#ipv6 route 81::/16 v6_tunnel2
Configuration on R2:
R2(config)#interface gei-3/4
R2(config-if-gei-3/4)#no shutdown
R2(config-if-gei-3/4)#ip add 1.1.1.2 255.255.255.0
R2(config-if-gei-3/4)#exit
R2(config)#interface v6_tunnel2
R2(config-if-v6_tunnel2)#ipv6 add 81::/64 eui-64
R2(config-if-v6_tunnel2)#ipv6 enable
R2(config-if-v6_tunnel2)#exit
R2(config)#ipv6-tunnel-config
R2(config-ipv6-tunnel)#interface v6_tunnel2
R2(config-ipv6-tunnel-if-v6_tunnel2)#tunnel mode ipv6ip isatap
R2(config-ipv6-tunnel-if-v6_tunnel2)#tunnel source ipv4 1.1.1.2
R2(config-ipv6-tunnel-if-v6_tunnel2)#exit
R2(config-ipv6-tunnel)#exit
16-16
Configuration Verification
Check the ISATAP configuration on R1, as shown below.
Execute the show ipv6 interface brief v6_tunnel2 command on R1 to view the tunnel
interface information, as shown below.
R1(config)#show ipv6 interface brief v6_tunnel2
v6_tunnel2 [up/up]
fe80::5efe:101:101
82::5efe:101:101/64 [EUI]
16-17
16-18
17-1
The IPv4 address can be a global unicast address or an aggregation of private addresses.
l Global unicast address
The IPv6 address prefix in a 6rd domain is a CE-based global IPv4 prefix, see Figure
17-2, and can be transmitted in a manual or protocol way (through DHCPv4 or TR-69).
A subnet IPv4 prefix is algorithmically obtained from an IPv6 prefix.
17-2
A CE assigns the IPv6 address of the CE LAN side to a downstream user through DHCPv6
or SLAAC based on the prefix.
Message Forwarding
l Forwarding a message in a 6rd domain
As shown in Figure 17-4, upon arrival of a message from PC1, CPE1 obtains the IPv4
address from the IPv6 destination address after a decapsulation, encapsulates the
message into a 6in4 tunnel, and forwards it to CPE2. Upon receipt of the message,
CPE2 obtains the raw message after a decapsulation, and forwards it to PC3. PC1
and PC2 can be on the same IPv6 subnet. The blue line in Figure 17-4 illustrates the
message forwarding direction.
17-3
the BR address. Upon receipt of the message, BR obtains the raw IPv6 message
after a decapsulation, and forwards it to PC3 (or an IPv6 WAN).
17-4
BR works as follows:
Steps
1. Configure a 6RD tunnel.
17-5
Command Description
End of Steps
17-6
Configuration Flow
1. Establish a 6RD tunnel between a CPE device and R2. In the following configuration,
a 6RD tunnel is established between CPE2 and R2.
2. Create IPv6 tunnels on R1 and R2, and enable the IPv6 function.
3. Configure the working mode of IPv6 tunnels to 6rd, and set corresponding parameters.
4. Configure the IPv6 addresses on the IPv6 tunnels based on the 6rd rule.
5. Configure an IPv4 route on R1, so that there is an IPv4 route between R2 and CPE
(R1 forwards IPv4 packets only).
Configuration Commands
Configuration on R1:
R1(config)#interface gei-1/1
R1(config-if-gei-1/1)#ip address 1.0.0.2 255.255.255.0
R1(config-if-gei-1/1)#no shutdown
R1(config-if-gei-1/1)#exit
R1(config)#interface gei-1/2
R1(config-if-gei-1/2)#ip address 10.0.0.1 255.255.255.0
R1(config-if-gei-1/2)#no shutdown
R1(config-if-gei-1/2)#exit
/*Configure a v4 route, so that there is v4 route between address 10.0.0.2 on
device CPE2 and the gei-1/1 interface on R2. The configuration is omitted.*/
Configuration on R2:
R2(config)#interface gei-1/1
R2(config-if-gei-1/1)#ip address 1.0.0.1 255.255.255.0
R2(config-if-gei-1/1)#no shutdown
R2(config-if-gei-1/1)#exit
R2(config)#interface v6_tunnel1
R2(config-if-v6_tunnel1)#ipv6 enable
R2(config-if-v6_tunnel1)#ipv6 address 3000:0:100:1::1/32
R2(config-if-v6_tunnel1)#exit
17-7
R2(config)#ipv6-tunnel-config
R2(config-ipv6-tunnel)#interface v6_tunnel1
R2(config-ipv6-tunnel-if-v6_tunnel1)#tunnel mode ipv6ip 6RD
R2(config-ipv6-tunnel-if-v6_tunnel1)#tunnel 6RD-ipv4-mask-length 0
/*Configure tunnel mode ipv6ip 6RD first, and then configure 6RD-ipv4-mask-length
and other parameters. Otherwise, the system prompts: "%Code 130024: 6RD mode
needs config first!"*/
R2(config-ipv6-tunnel-if-v6_tunnel1)#tunnel 6RD-prefix 3000::1/32
R2(config-ipv6-tunnel-if-v6_tunnel1)#tunnel source ipv4 1.0.0.1
R2(config-ipv6-tunnel-if-v6_tunnel1)#exit
R2(config-ipv6-tunnel)#exit
/*The configuration of a v4 route to address 10.0.0.2 on device CPE2 is omitted.*/
Configuration Verification
Run the debug ipv6-tunnel command, and run the ping6 command on R1. The sample
output is as follows.
R2#ping6 3000:0:a00:2::1
sending 5,100-byte ICMP echo(es) to 3000:0:A00:2:0:0:0:1,timeout is 2 second(s).
R2 MPFU-12/0 2012-10-25 15:54:19 v6_tunnel1: Ipv6/Ip(6rd) packet to be
encapsulated: 3000:0:100:1::1-->3000:0:a00:2::1 (len=100 ttl=64)
The above information shows that the correct destination IPv4 address is resolved on R2.
17-8
18-1
Steps
1. Configure 6PE.
Command Description
ZXR10(config)#show bgp ipv6 unicast neighbor <ipv4-address> Displays the detailed information
about the IPv6 neighbor.
End of Steps
18-2
Configuration Flow
1. Configure IPv4 addresses for the direct connection interfaces between PE1 and PE2.
Configure loopback interfaces and IPv4 addresses for the loopback interfaces on each
router. Enable IPv6 on IPv6 interfaces, and configure IPv6 addresses for the IPv6
interfaces.
2. Establish LDP neighbors via the direct connection interfaces between PE1 and PE2.
3. Establish OSPF neighbors via the direct connection interfaces between PE1 and PE2
to advertise the loopback1 interface addresses of the two routers.
4. Establish MP-BGP neighbors via the loopback1 interface between PE1 and PE2 to
advertise the IPv6 network segments of the two routers and redistribute the direct
IPv6 route.
5. Check the configuration results, and verify the following: LDP, OSPF and BGP
neighbors have been correctly established on the two routers, routes with IPv6 labels
can be seen on each router, and routes are generated.
Command Commands
Configuration on PE1:
PE1(config)#interface loopback1
PE1(config-if-loopback1)#ip address 1.1.1.1 255.255.255.255
PE1(config-if-loopback1)#exit
PE1(config)#interface gei-3/9
PE1(config-if-gei-3/9)#ip address 56.41.10.11 255.255.255.0
PE1(config-if-gei-3/9)#no shutdown
PE1(config-if-gei-3/9)#exit
PE1(config)#interface gei-3/10
PE1(config-if-gei-3/10)#ipv6 enable
PE1(config-if-gei-3/10)#ipv6 address 2255::66/64
PE1(config-if-gei-3/10)#no shutdown
PE1(config-if-gei-3/10)#exit
PE1(config)#interface loopback5
PE1(config-if-loopback5)#ipv6 enable
PE1(config-if-loopback5)#ipv6 address 3555::52/64
18-3
PE1(config-if-loopback5)#exit
PE1(config)#router ospf 1
PE1(config-ospf-1)#router-id 1.1.1.1
PE1(config-ospf-1)#network 56.41.10.0 0.0.0.255 area 0.0.0.0
PE1(config-ospf-1)#network 1.1.1.1 0.0.0.0 area 0.0.0.0
PE1(config-ospf-1)#exit
PE1(config-bgp)#address-family ipv6
PE1(config-bgp-af-ipv6)#redistribute connected
PE1(config-bgp-af-ipv6)#neighbor 2.2.2.2 activate
PE1(config-bgp-af-ipv6)#neighbor 2.2.2.2 send-label
PE1(config-bgp-af-ipv6)#network 2255::/64
PE1(config-bgp-af-ipv6)#redistribute connected
PE1(config-bgp-af-ipv6)#exit
Configuration on PE2:
PE2(config)#interface loopback1
PE2(config-if-loopback1)#ip address 2.2.2.2 255.255.255.255
PE2(config-if-loopback1)#exit
PE2(config)#interface gei-1/1
PE2(config-if-gei-1/1)#ip address 56.41.10.10 255.255.255.0
PE2(config-if-gei-1/1)#no shutdown
PE2(config-if-gei-1/1)#exit
PE2(config)#interface gei-1/2
PE2(config-if-gei-1/2)#ipv6 enable
PE2(config-if-gei-1/2)#ipv6 address 2352::52/64
PE2(config-if-gei-1/2)#no shutdown
PE2(config-if-gei-1/2)#exit
PE2(config)#interface loopback5
PE2(config-if-loopback5)#ipv6 enable
PE2(config-if-loopback5)#ipv6 address 2355::10/64
18-4
PE2(config-if-loopback5)#exit
PE2(config)#router ospf 1
PE2(config-ospf-1)#router-id 2.2.2.2
PE2(config-ospf-1)#network 56.41.10.0 0.0.0.255 area 0.0.0.0
PE2(config-ospf-1)#network 2.2.2.2 0.0.0.0 area 0.0.0.0
PE2(config-ospf-1)#exit
Configuration Verification
Run the commands show running-config ospf and show running-config bgp to check the
OSPF and BGP configurations on each router.
Check the configurations on PE1:
PE1#show running-config ospfv2
!<ospfv2>
router ospf 1
router-id 1.1.1.1
network 56.41.10.0 0.0.0.255 area 0.0.0.0
network 1.1.1.1 0.0.0.0 area 0.0.0.0
$
!</ospfv2>
18-5
Run the show ip ospf neighbor command to check OSPF neighbor establishment on the
router. If the State is FULL, it indicates that the neighbor has been established, as shown
below:
Verify that the OSPF neighbor has advertised the loopback1 route, as shown below:
18-6
Run the show ip bgp summary command to check BGP neighbor establishment on the
router:
18-7
$
address-family vpnv4
$
address-family vpnv4 mcast
$
address-family vpnv4 multicast
$
address-family ipv6
network 2352::/64
redistribute connected
neighbor 1.1.1.1 activate
neighbor 1.1.1.1 send-label
$
address-family ipv6 multicast
$
address-family vpnv6
$
address-family route-target
$
$
!</route-bgp>
18-8
18-9
18-10
1. 6VPE uses IPv4/IPv6 IGP (such as OSPF/OSPFv3) to establish the routes among
backbone routers. The loopback address of a 6VPE router is advertised to all P routers
and other 6VPE routers on the network.
2. 6VPE uses IPv4/IPv6 label distribution protocols (such as Label Distribution Protocol
(LDP), Resource ReSerVation Protocol-Traffic Engineering (RSVP-TE)) to establish
Label Switch Paths (LSPs) among 6VPE routers, that is, the MPLS tunnels among
6VPE routers.
3. 6VPE routers contact each other according to the VPN route reachability information.
It is necessary to configure IPv4/IPv6 Virtual Route Forwarding (VRF).
4. 6VPE routers obtain route reachability information from Customer Edge (CE) routers
on IPv4/IPv6 sites.
5. 6VPE routers distribute labels for route reachability information, and advertise the
reachability information for address prefixes in VPNs through the extended attributes
of MP-BGP. If the user network that 6VPE routers connected to uses the IPv4
protocol, the route reachability information uses VPN-IPv4 address family. If the user
network that 6VPE routers connected to uses the IPv6 protocol, the route reachability
information uses new-defined VPN-IPv6 address family.
6. 6VPE routers advertise IPv4/IPv6 route reachability information to IPv4/IPv6 CE sites
through IPv4/IPv6 routing protocols.
According to the 6VPE handling procedure, the key part of 6VPE is that the VPN-IPv6
address family is defined to distinguish the IPv6 routing information from different VPNs.
VPN-IPv6 is a new-defined address family. In the extended attributes of MP-BGP, the
codes of VPN-IPv6 address family are expressed as:
l AFI = 2: indicating IPv6
19-1
The format of a VPN-IPv6 address is shown in Figure 19-1. The length of the Route
Distinguisher (RD) is 8 bytes, and the length of the IPv6 address is 16 bytes. 6VPE does
not limit the IP version of the backbone network, so IPv6 VPN traffic can be transmitted in
IPv6 tunnels or IPv4 tunnels.
Steps
1. Create VRF and activate IPv6 address family.
19-2
2. Associate the interface with VRF, and configure an IPv6 address on the interface.
When IPv6 static route runs between a CE and a Provider Edge (PE), it is necessary
to configure an IPv6 static route to the CE on the PE and redistribute the static route
to BGP.
As shown in Figure 19-2, it is required to run static route between CE1 and PE1. The
following example shows how to configure static routes on CE1 and PE1 respectively.
19-3
Figure 19-2 Network Topology of the IPv6 Static Route Configuration Between
CE and PE
Configuration on CE1:
CE1(config)#interface gei-1/1
CE1(config-if-gei-1/1)#ipv6 enable
CE1(config-if-gei-1/1)#ipv6 address 1001::20:1/96
CE1(config-if-gei-1/1)#exit
CE1(config)#interface gei-1/2
CE1(config-if-gei-1/2)#ipv6 enable
CE1(config-if-gei-1/2)#ipv6 address 1001::10:2/120
CE1(config-if-gei-1/2)#exit
CE1(config)#ipv6 route 2002::0/96 1001::10:1
Configuration on PE1:
19-4
5 ZXR10(config-bgp)#address-family ipv6 vrf < vrf- name> Enters VRF address family
configuration mode.
As shown in Figure 19-3, it is required to run RIPng between CE1 and PE1. The
following example shows how to configure RIPng on CE1 and PE1 respectively.
Configuration on CE1:
CE1(config)#ipv6 router rip
CE1(config-ripng)#interface gei-1/1
CE1(config-ripng-if-gei-1/1)#ipv6 rip enable
CE1(config-ripng-if-gei-1/1)#exit
Configuration on PE1:
PE1(config)#ipv6 router rip vrf vpn_a
PE1(config-ripng-vrf-vpn_a)#redistribute bgp
19-5
PE1(config-ripng-vrf-vpn_a)#interface gei-1/1
PE1(config-ripng-vrf-vpn_a-if-gei-1/1)#ipv6 rip enable
PE1(config-ripng-vrf-vpn_a-if-gei-1/1)#exit
PE1(config-ripng-vrf-vpn_a)#exit
As shown in Figure 19-4, it is required to run OSPFv3 between CE1 and PE1. The
following example shows how to configure OSPFv3 on CE1 and PE1 respectively.
19-6
Configuration on CE1:
CE1(config)#ipv6 router ospf 1
CE1(config-ospfv3-1)#router-id 1.1.1.1
CE1(config-ospfv3-1)#interface gei-1/1 area 0.0.0.0
Configuration on PE1:
PE1(config)#ipv6 router ospf 2 vrf vpn_a
PE1(config-ospfv3-2)#router-id 2.2.2.2
PE1(config-ospfv3-2)#interface gei-1/1 area 0.0.0.0
PE1(config-ospfv3-2-if-gei-1/1)exit
PE1(config-ospfv3-2)#redistribute bgp
PE1(config-ospfv3-2)#exit
PE1(config)#router bgp 100
PE1(config-bgp)#address-family ipv6 vrf vpn_a
PE1(config-bgp-af-ipv6-vrf)#redistribute ospf-int 2
PE1(config-bgp-af-ipv6-vrf)#redistribute connected
PE1(config-bgp-af-ipv6-vrf)#exit
19-7
As shown in Figure 19-5, it is required to run EBGP between CE1 and PE1. The
following example shows how to configure BGP on CE1 and PE1 respectively.
Configuration on CE1:
Configuration on PE1:
19-8
As shown in Figure 19-6, it is required to run MPBGP between PE1 and PE2. The
following example shows how to configure MPBGP on PE1 and PE2 respectively.
It is necessary to make sure that the loopback addresses of PE1 and PE2 can be
pinged successfully from each other in advance.
Configuration on PE1:
PE1(config)#router bgp 100
PE1(config-bgp)#neighbor 1.1.1.3 remote-as 100
PE1(config-bgp)#neighbor 1.1.1.3 activate
PE1(config-bgp)#neighbor 1.1.1.3 update-source loopback1
PE1(config-bgp)#address-family vpnv6
PE1(config-bgp-af-vpnv6)#neighbor 1.1.1.3 activate
PE1(config-bgp-af-vpnv6)#exit
19-9
Configuration on PE2:
8. Configure AS overriding.
When BGP runs between PEs and CEs, sometimes different nodes need to reuse the
AS number. To ensure the connectivity between CE1 and CE2, AS overriding can be
performed. When AS overriding is configured on a PE, before the PE sends a route
update to CEs, the PE replaces the AS number of the CEs connected directly along
the AS_PATH with the AS number of it own. The length of AS_PATH does not change.
l Import Map: Users can filter the routes imported to the VRF according to the
import map. The VRF can store the route prefixes that it cares.
l Export Map: Users can configure different Route Targets (RTs) for route prefixes
by using the export map. Different VRFs can select to accept prefixes with
different RTs.
19-10
Command Function
ZXR10#show ip vrf [[[brief | detail][< vrf-name>]]| summary] Displays the VRF information.
ZXR10#show ipv6 protocol routing vrf <vrf-name>[[network Displays the VRF routing table.
<ipv6-address>[/<mask_len>]]|<protocol>| database]
End of Steps
It is required to configure a VPN and OSPFv3 to make CE1 and CE2 learn routes from
each other. BGP runs between CE1 and PE1, and OSPFv3 runs between CE2 and PE2,
which makes CE1 and CE2 learn routes from each other and can be pinged successfully.
19-11
gei-1/3 10.10.12.1/24
P gei-1/4 10.10.12.2/24
gei-1/5 10.10.23.2/24
gei-1/7.10 2002::20:2/120
Configuration Flow
1. Configure loopback1 interface on CE1. Establish an IPv6 EBGP neighbor relation with
PE1, and advertise the loopback1 interface address in BGP.
2. Configure IP addresses on loopback1, gei-1/2 and gei-1/3 of PE1. Configure vrf test1,
and bind gei-1/2 to vrf test1. Configure OSPF on PE1 and advertise the 10.10.0.0/16
segment. Establish MPBGP neighbor relationship with PE2 and enable VPNv6.
Establish an EBGP neighbor relationship with CE1. Configure LDP on gei-1/3.
3. Configure IP addresses on gei-1/4 and gei-1/5 of P. Configure OSPF and advertise
the 10.10.0.0/16 segment. Configure LDP on gei-1/4 and gei-1/5.
4. Configure IP addresses on loopback1, gei-1/6 and gei-1/7 of PE2. Configure vrf
test1, and bind gei-1/7.10 to vrf test1. Configure OSPF on PE2 and advertise the
10.10.0.0/16 segment. Establish an MPBGP neighbor relationship with PE1 and
enable VPNv6. Establish an OSPF neighbor relationship with CE2. Configure LDP
on gei-1/6.
5. Configure IP addresses on loopback1 and gei-1/8.10 of CE2. Configure OSPF, and
advertise the IP addresses in OSPF.
19-12
Configuration Commands
Configuration on CE1:
CE1(config)#interface loopback1
CE1(config-if-loopback1)#ipv6 enable
CE1(config-if-loopback1)#ipv6 address 1001::10:1/112
CE1(config-if-loopback1)#exit
CE1(config)#interface gei-1/1
CE1(config-if-gei-1/1)#ipv6 enable
CE1(config-if-gei-1/1)#ipv6 address 1001::20:2/120
CE1(config-if-gei-1/1)#no shutdown
CE1(config-if-gei-1/1)#exit
Configuration on PE1:
PE1(config)#interface loopback1
PE1(config-if-loopback1)#ip address 10.10.1.1 255.255.255.255
PE1(config-if-loopback1)#exit
PE1(config)#interface gei-1/3
PE1(config-if-gei-1/3)#ip address 10.10.12.1 255.255.255.0
PE1(config-if-gei-1/3)#no shutdown
PE1(config-if-gei-1/3)#exit
PE1(config)#interface gei-1/2
PE1(config-if-gei-1/2)#ip vrf forwarding test1
PE1(config-if-gei-1/2)#ipv6 enable
19-13
PE1(config)#router ospf 1
PE1(config-ospf-1)#network 10.10.0.0 0.0.255.255 area 0.0.0.0
PE1(config-ospf-1)#exit
Configuration on P:
P(config)#interface gei-1/4
P(config-if-gei-1/4)#ip address 10.10.12.2 255.255.255.0
P(config-if-gei-1/4)#no shutdown
P(config-if-gei-1/4)#exit
P(config)#interface gei-1/5
P(config-if-gei-1/5)#ip address 10.10.23.2 255.255.255.0
P(config-if-gei-1/5)#no shutdown
P(config-if-gei-1/5)#exit
P(config)#interface loopback1
P(config-if-loopback1)#ip address 10.10.2.2 255.255.255.255
P(config-if-loopback1)#exit
P(config)#router ospf 1
P(config-ospf-1)#network 10.10.0.0 0.0.255.255 area 0.0.0.0
P(config-ospf-1)#exit
19-14
P(config-ldp-1)#exit
PE2(config)#interface loopback1
PE2(config-if-loopback1)#ip address 10.10.3.3 255.255.255.255
PE2(config-if-loopback1)#exit
PE2(config)#interface gei-1/6
PE2(config-if-gei-1/6)#ip address 10.10.23.3 255.255.255.0
PE2(config-if-gei-1/6)#no shutdown
PE2(config-if-gei-1/6)#exit
PE2(config)#interface gei-1/7.10
PE2(config-if-gei-1/7.10)#exit
PE2(config)#vlan-configuration
PE2(config-vlan)#interface gei-1/7.10
PE2(config-vlan-if-gei-1/7.10)#encapsulation-dot1q 10
PE2(config-vlan-if-gei-1/7.10)#exit
PE2(config-vlan)#exit
PE2(config)#interface gei-1/7.10
PE2(config-if-gei-1/7.10)#ip vrf forwarding test1
PE2(config-if-gei-1/7.10)#ipv6 enable
PE2(config-if-gei-1/7.10)#ipv6 address 2002::20:2/120
PE2(config-if-gei-1/7.10)#exit
PE2(config)#router ospf 1
PE2(config-ospf-1)#network 10.10.0.0 0.0.255.255 area 0.0.0.0
PE2(config-ospf-1)#exit
19-15
Configuration on CE2:
CE2(config)#interface loopback1
CE2(config-if-loopback1)#ipv6 enable
CE2(config-if-loopback1)#ipv6 address 2002::10:1/112
CE2(config-if-loopback1)#exit
CE2(config)#interface gei-1/8.10
CE2(config-if-gei-1/8.10)#exit
CE2(config)#vlan-configuration
CE2(config-vlan)#interface gei-2/8.10
CE2(config-vlan-if-gei-2/8.10)#encapsulation-dot1q 10
CE2(config-vlan-if-gei-2/8.10)#exit
CE2(config-vlan)#exit
CE2(config)#interface gei-2/8.10
CE2(config-if-gei-2/8.10)#ipv6 enable
CE2(config-if-gei-2/8.10)#ipv6 address 2002::20:1/120
CE2(config-if-gei-2/8.10)#no shutdown
CE2(config-if-gei-2/8.10)#exit
Configuration Verification
Check information about the BGP neighbor created on PE1:
19-16
Check information about the IPv6 route advertised by the BGP neighbor:
PE1#show ipv6 forwarding route vrf test1 bgp
IPv6 Routing Table:
Headers: Dest: Destination, Gw: Gateway, Pri: Priority;
Codes : K: kernel, I1: isis-l1, SFN: sf-nat64, R: ripng, AF: aftr, B: bgp,
D: direct, I2: isis-l2, SLN: sl-nat64, O: ospfv3, D6: dhcp, P: ppp,
S: static, N: nd, V: vrrp, A: address, M: multicast, UI: user-ipaddr;
Dest Owner Metric
Interface Pri Gw
2002::20:0/120 B 0
gei-1/3 200 ::ffff:10.10.3.3
19-17
19-18
Steps
1. Enter IPv6 ACL configuration mode and configure the IPv6 ACL rule.
20-1
range <0-65535>-<0-65535>}][{[established],[rst<rst>],[ac
k<ack>],[fin<fin>],[syn<syn>],[urg<urg>],[psh<psh>]}][d
scp<dscp-value>][{[routing],[authen],[destopts],[fragment
s],[hop-by-hop],[esp]}][time-range <time-range-name>]
<rule-id>: unique identity of a rule in the IPv6 ACL table, range: 1 to 2147483644. This
ID determines the sequence of the rule in the IPv6 ACL table. If this parameter is not
specified, the system inserts the rule at the end of the table by default and allocates
the rule-id according to the default base and increment.
<0-255>| ipv6 |<protocol-type>: Indicates the protocol type to be matched, which can
be one of the tcp, udp and ip keywords, or can be an integer representing the IP
protocol number and ranging from 0 to 255. If this parameter is set to ipv6, it indicates
that any protocol type is matched.
<source-porttype>: source port type, options: ftp, telnet, smtp, domain, finger, www,
pop2, pop3, bgp and login.
<destination-porttype>: destination port type, options: ftp, telnet, smtp, domain, finger,
www, pop2, pop3, bgp and login.
20-2
<source-port>: indicates that the source port number ranges from 0 to 255.
<destination-port>: indicates the destination port number ranges from 0 to 255.
established: indicates TCP link establishment. This parameter is valid for TCP only.
routing, authen, destopts, fragments, hop-by-hop, and esp: Options: routing header,
authentication header, destination option header, fragment header, Hop-by-Hop
Options Header and ESP Header.
<base>: base value of rule-id, indicating the serial number of the first rule after rules
are renumbered successfully. Default: 10, range: 12147483644.
<increment>: step size of rule-id, which is the difference between two neighboring
rule-ids after rules are renumbered. Default: 10, range: 12147483644.
2. Bind IPv6 ACL to an interface.
Command Function
ZXR10(config)#show ipv6-access-lists [config | brief Displays the IPv6 ACL list or brief
[name <acl-name>]| name <acl-name>[from <from-id> information.
to <to-id>]][|<match-type><LINE>]
20-3
Command Function
End of Steps
In this case, it is only necessary to create one ACL and add the following rule to this ACL:
Deny the telnet packets matching the IP address of PC2 and using the protocol type TCP
and the port type telnet. Then bind the ACL to the ingress direction of the interface gei-1/3
or the egress direction of the interface gei-1/4.
After the above configuration is completed, the requests initiated by PC2 do not reach R1
but are discarded when they reach R2 even if PC2 has not obtained the telnet username
and password of R1. The other communications of R1 and PC2, however, are not be
affected.
Configuration Flow
1. Enable IPv6 and configure the interface addresses on routers.
2. First create an ipv6-access-list. During the creation, a customized name can be
assigned to this list but the length of the name shall not exceed 31 characters.
20-4
3. Enter the IPv6 ACL configuration mode after the list is created and then add rules. A
packet type can be specified for each rule, and the permit or deny action applies to
the packet type.
4. Bind the customized ipv6-access-list to the ingress or egress direction of the interface
to which traffic filtering applies.
Configuration Commands
This example does not cover the interface address configuration, and is omitted in this
example.
Configuration on R2:
R2(config)#ipv6-access-list test
R2(config-ipv6-acl)# rule deny tcp 100:1::1:2/128 eq 23 110:1::1:2/128
R2(config-ipv6-acl)#rule permit ip any any
R2(config-ipv6-acl)#exit
R2(config)#ipv6-access-group interface gei-1/3 ingress test
Configuration Verification
Check the configured ACL in one of the following three modes, as shown below.
/*Check all the ACLs on the router. In this mode, all the names
and number of ACLs are shown*/
R2(config)#show ipv6-access-lists brief
No. ACL RuleSum
-------------------------------------------------------
1 test 2
Check the interface bound with the ACL. Two methods are available for checking the
binding between the ACL and the interface, as shown below.
20-5
/*Check the binding between IPv6 ACLs on the router and the
related interfaces*/
R2(config)#show ipv6-access-groups
Interface name|vlan Direction ACL name
------------------------------------------------------
gei-1/3 Ingress test
/*Check the binding between all ACLs on the router and the
related interfaces, including IPv4 ACLs and IPv6 ACLs*/
R2(config)#show running-config port-acl
! <PORT-ACL>
interface gei-0/8 /*Bind other interface of IPv4 ACL to the device.*/
ipv4-access-group ingress 1K
$
interface gei-1/3
ipv6-access-group ingress test
$
! </PORT-ACL>
20-6
Strict RPF
Strict RPF is an easier method to filter source address. It performs routing lookup by source
address and estimates whether the egress interface of return path is consistent with the
ingress interface of the packets arriving. If they are consistent, the forwarding continues.
If they are inconsistent, URPF ACL matching is considered. If URPF ACL matching is not
performed, then the packets are discarded directly. Conversely, if URPF ACL matching is
performed and the result is matched, the forwarding continues. If the result is not matched,
the packets are discarded.
Strict RPF is only applicable to route symmetry. That is, when the packets enter from
a direction, its entrance path is the same with its return path. However, the route paths
normally are asymmetric between ISPs. At the same time, if some BGP valid network
segment addresses are not advertised or accepted by ISP policy, sRPF just like an ACL
with incomplete configuration. Some valid data flow will be discarded because of lack of
information in the forwarding table of the filter router.
21-1
Loose RPF
In loose RPF mode, the router only checks whether the source IP address of the packet
exists in the routing table (normal source address route or default route). It does not check
whether the ingress for receiving packets matches with the content of the routing table. In
this way, URPF can effectively prevent network from attacks, and it can also prevent the
interception of legal user packets.
Steps
1. Configure the IPv6 URPF function on the interface.
21-2
interface <interface-name>: name of the interface where the IPv6 URPF function is
configured.
ignore-default-route: It is only available for loose mode.
2. Verify the configurations.
Command Function
End of Steps
Configuration Flow
1. Configure IPv6 address for the interface.
2. Create ACL, add the ACL matching requirements. For example, permit the traffic
coming from 1:11::ad:ea/64 to pass.
3. Bind strict IPv6 URPF with ACL list to the interface.
Configuration Commands
The configuration of R1 is as follows:
R1(config)#interface gei-2/1
R1(config-if-gei-2/1)#no shutdown
R1(config-if-gei-2/1)#ipv6 enable
R1(config-if-gei-2/1)#ipv6 address 1:1::ad:ea/64
21-3
R1(config-if-gei-2/1)#exit
R1(config)#ipv6-access-list acl
R1(config-ipv6-acl)#rule permit ipv6 1:11::ad:ea/64 any
R1(config-ipv6-acl)#exit
R1(config)#ipv6 verify unicast source reachable-via rx interface
gei-2/1 acl-name acl
Configuration Verification
Check the configuration results:
21-4
Configuration Flow
1. As shown in Figure 21-2, establish the networking structure, add a link for the
sub-interface between R1 and R2, and configure the IPv6 address for each interface.
2. Configure the OSPFv3 protocol between R1 and R2 to ensure the unicast interworking.
3. Configure loose URPF for the ingress gei-2/1 on R1 and configure ACL.
4. The source address is 3ff1::1, the destination network segment is 1:20::/64, and the
direction is from R1 to R2.
Configuration Commands
The configuration of R1 is as follows:
R1(config)#interface gei-2/1
R1(config-if-gei-2/1)#no shutdown
R1(config-if-gei-2/1)#ipv6 enable
R1(config-if-gei-2/1)#ipv6 address 1:1:ad::ea/64
R1(config-if-gei-2/1)#exit
R1(config)#interface gei-2/2
R1(config-if-gei-2/2)#no shutdown
R1(config-if-gei-2/2)#ipv6 enable
R1(config-if-gei-2/2)#ipv6 address 1:10::ad:ea/64
R1(config-if-gei-2/2)#exit
R1(config)#interface gei-2/2.1
R1(config-if-gei-2/2.1)#exit
R1(config)#vlan-configuration
R1(config-vlan)#interface gei-2/2.1
R1(config-vlan-if-gei-2/2.1)#encapsulation-dot1q 100
/*configure sub-interface and establish another link*/
R1(config-vlan-if-gei-2/2.1)#exit
R1(config-vlan)#exit
R1(config)#interface gei-2/2.1
R1(config-if-gei-2/2.1)#ipv6 enable
R1(config-if-gei-2/2.1)#ipv6 address 200::1/64
R1(config-if-gei-2/2.1)#exit
21-5
R2(config)#interface gei-3/1
R2(config-if-gei-3/1)#no shutdown
R2(config-if-gei-3/1)#ipv6 verify unicast source reachable-via
any acl-name wd /*bind the interface with loose URPF*/
R2(config-if-gei-3/1)#exit
R2(config-ipv6-acl)#exit
R2(config)#ipv6 route 3ff1::/64 200::2
/*Configure the static route and specify that the interface to
source route is different from the ingress interface*/
Configuration Verification
The traffic that meets the URPF configuration can be transmitted normally.
21-6
22-1
Configuration Flow
1. Configure H-QoS in the downlink of the interface gei-1/3 to guarantee the bandwidth
of every user when port congestion occurs.
2. Set the Differentiated Services Code Point (DSCP) values of the four users to 1, 2, 3,
and 4 respectively, and configure four classes.
3. Add user1 to the Low Latency Queueing (LLQ) queue with a limited rate of 400 Mbps.
4. Add user2 to the Weighted Fair Queuing (WFQ) queue. The bandwidth is set to 30%
of the port bandwidth.
5. Add user3 to the WFQ queue. The bandwidth is set to 20% of the port bandwidth.
6. Add user4 to the WFQ queue. The bandwidth is set to 10% of the port bandwidth.
Configuration Commands
1. Configure the interfaces on ZXR10.
ZXR10(config)#interface gei-1/1
ZXR10(config-if-gei-1/1)#ipv6 enable
ZXR10(config-if-gei-1/1)#ipv6 address 7::1/64
ZXR10(config-if-gei-1/1)#exit
ZXR10(config)#interface gei-1/2
ZXR10(config-if-gei-1/2)#ipv6 enable
ZXR10(config-if-gei-1/2)#ipv6 address 8::1/64
ZXR10(config-if-gei-1/2)#exit
ZXR10(config)#interface gei-1/3
ZXR10(config-if-gei-1/3)#ipv6 enable
ZXR10(config-if-gei-1/3)#ipv6 address 9::1/64
ZXR10(config-if-gei-1/3)#exit
2. Configure the classes.
ZXR10(config)#class-map dscp1 match-all ipv6
ZXR10(config-cmap)#match dscp 1
ZXR10(config-cmap)#exit
ZXR10(config)#class-map dscp2 match-all ipv6
ZXR10(config-cmap)#match dscp 2
ZXR10(config-cmap)#exit
ZXR10(config)#class-map dscp3 match-all ipv6
ZXR10(config-cmap)#match dscp 3
ZXR10(config-cmap)#exit
ZXR10(config)#class-map dscp4 match-all ipv6
ZXR10(config-cmap)#match dscp 4
ZXR10(config-cmap)#exit
3. Configure the second level policy.
ZXR10(config)#policy-map test
ZXR10(config-pmap)#class dscp1
ZXR10(config-pmap-c)#priority-llq
ZXR10(config-pmap-c)#police cir 400000 cbs 400 conform-action transmit
exceed-action drop violate-action drop
22-2
ZXR10(config-pmap-c)#exit
ZXR10(config-pmap)#class dscp2
ZXR10(config-pmap-c)#bandwidth percent 30
ZXR10(config-pmap-c)#exit
ZXR10(config-pmap)#class dscp3
ZXR10(config-pmap-c)#bandwidth percent 20
ZXR10(config-pmap-c)#exit
ZXR10(config-pmap)#class dscp4
ZXR10(config-pmap-c)#bandwidth percent 10
ZXR10(config-pmap-c)#exit
ZXR10(config-pmap)#exit
4. Bind the policies to the interface.
ZXR10(config)#service-policy gei-1/3 output test
Configuration Verification
Run the show policy-map command to check the correctness of policy configuration.
ZXR10(config)#show policy-map
policy-map test
class dscp1
priority-llq
police cir 400000 cbs 400 conform-action transmit exceed-action drop
violate-action drop
class dscp2
bandwidth percent 30
class dscp3
bandwidth percent 20
class dscp4
bandwidth percent 10
Run the show service-policy command to check the correctness of interface-policy binding.
ZXR10#show service-policy
service-policy gei-1/3 output test
22-3
l For queues with the priority value 0, the lowest discard threshold is 30 kb, the highest
discard threshold is 100 kb, the discard probability is 90%, and the average queue
length indicator is 8.
l For queues with the priority value 1, the lowest discard threshold is 120 kb, the highest
discard threshold is 200 kb, the discard probability is 80%, and the average queue
length indicator is 8.
l For queues with the priority value 2, the lowest discard threshold is 220 kb, the highest
discard threshold is 300 kb, the discard probability is 70%, and the average queue
length indicator is 8.
Configuration Flow
1. Create a class-map and match it with precedence 0-2.
2. Create a policy-map, add the new class matching precedence 0-2 to the policy, and
add the queues of different priorities in the class to WRED.
3. Select a PQ from the policy classes.
4. Bind the policy-map to the egress direction of the interface.
Configuration Commands
1. Configure the class.
ZXR10(config)#class-map pre0-2 match-all ipv6
ZXR10(config-cmap)#match precedence 0-2
ZXR10(config-cmap)#exit
2. Configure the policy.
ZXR10(config)#policy-map wred
ZXR10(config-pmap)#class pre0-2
ZXR10(config-pmap-c)#random-detect enable
ZXR10(config-pmap-c)#random-detect weight 8
ZXR10(config-pmap-c)#random-detect precedence 0 30 100 90
ZXR10(config-pmap-c)#random-detect precedence 1 120 200 80
ZXR10(config-pmap-c)#random-detect precedence 2 220 300 70
ZXR10(config-pmap-c)#priority-level 1
ZXR10(config-pmap-c)#exit
ZXR10(config-pmap)#exit
3. Bind the policy to the interface.
ZXR10(config)#service-policy gei-1/7 output wred
Configuration Verification
Check policy configuration.
ZXR10(config)#show policy-map
policy-map wred
class pre0-2
random-detect enable
random-detect weight 8
22-4
When traffic is congested on the outgoing interface, capture packets on the interface and
the discard probability of the packets in the queues of different priorities is the same as
that described in Configuration Description.
Configuration Flow
Configure two Committed Access Rates (CARs) in the downlink of the interface gei-1/3,
match them with DSCP values 1 and 2 respectively, and set the DSCP value of the
permitted traffic to 7. Set the guaranteed bandwidth to 100 M, and set the maximum
bandwidth to 150 M.
Configuration Commands
1. Enter CAR configuration mode.
22-5
ZXR10(config)#qos
ZXR10(config-qos)#
2. Enter interface configuration mode.
ZXR10(config-qos)#interface gei-1/3
ZXR10(config-qos-if-gei-1/3)#
3. Configure CAR commands.
ZXR10(config-qos-if-gei-1/3)#rate-limit output ipv6 dscp 1 cir 100000 cbs
200000 pir 150000 pbs 300000 conform-action set-dscp-transmit 7
exceed-action set-dscp-transmit 7 violate-action drop
ZXR10(config-qos-if)#rate-limit output ipv6 dscp 2 cir 100000 cbs 200000
pir 150000 pbs 300000 conform-action set-dscp-transmit 7
exceed-action set-dscp-transmit 7 violate-action drop
Configuration Verification
Run the show running-config carset command to check the CAR configured on the
interface:
22-6
Configuration Flow
1. Create a VLAN sub-interface and configure an IP address on the sub-interface.
2. Configure a VLAN ID for the sub-interface.
3. Configure 802.1p inheritance.
Configuration Commands
Configuration on R2:
R2(config)#interface gei-1/1.1
R2(config-if-gei-1/1.1)#ipv6 enable
R2(config-if-gei-1/1.1)#ipv6 address 7::1/64
R2(config-if-gei-1/1.1)#exit
R2(config)#interface gei-1/2.1
R2(config-if-gei-1/2.1)#ipv6 enable
R2(config-if-gei-1/2.1)#ipv6 address 8::1/64
R2(config-if-gei-1/2.1)#exit
R2(config)#vlan-configuration
R2(config-vlan)#interface gei-1/1.1
R2(config-vlan-if-gei-1/1.1)#encapsulation-dot1q 100
R2(config-vlan-if-gei-1/1.1)#exit
R2(config-vlan)#interface gei-1/2.1
R2(config-vlan-if-gei-1/2.1)#encapsulation-dot1q 200
R2(config-vlan-if-gei-1/2.1)#exit
R2(config-vlan)#exit
On R1 and R3, it is only necessary to configure the VLAN sub-interfaces and addresses.
Configuration Verification
Check the configuration result on R2, as shown below.
R2(config)#show class-map 802.1p
class-map 802.1p match-all ipv6
match child
R2(config)#show policy-map 802.1p
policy-map 802.1p
22-7
class 802.1p
set precedence inherit-from 8021p
R2(config)#show service-policy gei-1/1.1
service-policy gei-1/1.1 input 802.1p
Figure 22-4 shows the inheritance from the inbound interface 802.1p to the outbound
interface IPP.
22-8
Steps
1. Configure the basic attributes of IPv6 VRRP.
23-1
23-2
peer-type: the peer type, used for tracking the link status of the peer device.
23-3
Command Function
ZXR10#show vrrp ipv6 brief interface <interface-name> Displays the brief information about
all IPv6 VRRP groups on a specific
interface.
End of Steps
The VRRP virtual address can be configured as other Link-Local address (note that the
master virtual address should be the link-local address, prefixed with FE80::). A higher
priority should be set for R1 to make it as the master router.
23-4
Configuration Flow
1. Enter the interfaces on which VRRP should be enabled. Enable IPv6, and configure
IPv6 addresses.
2. Enter VRRP configuration mode from global configuration mode, and then enter the
interfaces to configure VRRP.
3. Configure the same VRRP group ID and virtual addresses for R1 and R2. To make R1
as the master router, set a priority for R1 higher than that for R2 in the same group, or
configure R1 as the IP address owner (if the R1 address is used as the virtual address,
R1 has a top priority of 255). The priorities (the default priority is 100) are all the same,
and the router where VRRP is enabled first to publish messages becomes the master
one in the group. This means that you can also configure related commands on R1
first to make it as the master one.
Configuration Commands
The configuration on R1 is as follows:
R1(config)#interface gei-1/1
R1(config-if-gei-1/1)#no shutdown
R1(config-if-gei-1/1)#ipv6 enable
R1(config-if-gei-1/1)#ipv6 address link-local fe80::1:1
R1(config-if-gei-1/1)#exit
R1(config)#vrrp
R1(config-vrrp)#interface gei-1/1
R1(config-vrrp-if-gei-1/1)#vrrp 1 ipv6 fe80::1:1
/*For the configuration of the IPv6 address in VRRPv3, the virtual master IP
address must be a link-local address, that is, an address beginning with FE80,
such as vrrp 1 ipv6 fe80::1. If the address configured here is a global, the
address can only be used as the virtual secondary IP address, such as
vrrp 1 ipv6 1::2 secondary.*/
R1(config-vrrp-if-gei-1/1)#end
R2(config)#interface gei-1/1
R2(config-if-gei-1/1)#no shutdown
R2(config-if-gei-1/1)#ipv6 enable
R2(config-if-gei-1/1)#ipv6 address link-local fe80::1:2
R2(config-if-gei-1/1)#exit
R2(config)#vrrp
R2(config-vrrp)#interface gei-1/1
R2(config-vrrp-if-gei-1/1)#vrrp 1 ipv6 fe80::1:1
R2(config-vrrp-if-gei-1/1)#end
Configuration Verification
View the VRRP information and configuration result on R1, as shown below.
23-5
gei-1/1 - vrID 2
Vrrp configure info:
IP version 6, VRRP version 3
Virtual IP address is FE80:0:0:0:0:0:1:2
Virtual MAC address is 0000.5e00.0202
Advertise time is 1.000 (s)
Configured priority is 100
Preemption enable, delay 0 (s)
Reload delay 5 (s)
23-6
No authentication data
Check ttl enable
Vrrp accept mode enable
Out-interface send-mode is all
Tracked interface items: 0
Interface State Policy Reduce-Priority
Tracked detect items: 0
Admin-group is None
Vrrp run info:
State is Backup
6 state changes, last state change 17:05:34 1 day(s)
Current priority is 100
Master router is remote
Master router address is FE80:0:0:0:0:0:1:2
Master router priority is 255
Master Advertisement interval is 1.000 (s)
Master Down interval is 3.609 (s), no learn
Configuration Flow
1. Enter the interfaces on which VRRP should be enabled. Enable IPv6, and configure
IPv6 addresses.
23-7
2. Enter VRRP configuration mode from global configuration mode, and then enter the
interfaces to configure VRRP.
3. Configure VRRP 1 and corresponding virtual address on R1. Configure VRRP 2 and
corresponding virtual address on R2. Set a priority for VRRP 1 higher than that for
VRRP 2 on R1, and set a priority for VRRP 2 higher than that for VRRP 1 on R2. In
this way, R1 acts as a master router in group 1, while being a slave router in group
2. R2 acts as a master router in group 2, while being a slave router in group 1. This
enables R1 and R2 to act as backup routers for each other.
Configuration Commands
The configuration on R1 is as follows:
R1(config)#interface gei-1/1
R1(config-if-gei-1/1)#no shutdown
R1(config-if-gei-1/1)#ipv6 enable
R1(config-if-gei-1/1)#ipv6 address link-local fe80::1:1
R1(config-if-gei-1/1)#exit
R1(config)#vrrp
R1(config-vrrp)#interface gei-1/1
R1(config-vrrp-if-gei-1/1)#vrrp 1 ipv6 fe80::1:1
R1(config-vrrp-if-gei-1/1)#vrrp 2 ipv6 fe80::1:2
R1(config-vrrp-if-gei-1/1)#end
Configuration Verification
View the VRRP information and configuration result on R1, as shown below.
R1#show vrrp ipv6 brief
Interface vrID Pri Time A P L State Master addr VRouter addr
gei-1/1 1 255 1000 A P Master FE80:0:0:0:0:0: FE80:0:0:0:0:0:1
1:1 :1
gei-1/1 2 100 1000 P Backup FE80:0:0:0:0:0: FE80:0:0:0:0:0:1
1:1 :2
/*A: whether the router is the address owner.
P: whether preemption is configured.
23-8
23-9
Configuration Flow
1. Enter the interfaces on which VRRP should be enabled. Enable IPv6, and configure
IPv6 addresses.
2. Enter VRRP configuration mode from global configuration mode, and then enter the
interfaces to configure VRRP.
3. Configure the same VRRP group ID and virtual addresses for R1 and R2. To make
R1 as the master router, set a priority for R1 higher than that for R2 in the same group,
or configure it to be the IP address owner by setting the IP address of an interface for
R1 to be the virtual address.
4. In VRRP interface configuration mode, set and enable egress interfaces over which
packets are transmitted for VRRP groups.
Configuration Commands
Configuration on R1:
R1(config)#interface gei-0/2
R1(config-if-gei-0/2)#no shutdown
R1(config-if-gei-0/2)#ipv6 enable
R1(config-if-gei-0/2)#ipv6 address link-local fe80::1:1
R1(config-if-gei-0/2)#exit
R1(config)#vrrp
R1(config-vrrp)#interface gei-0/2
R1(config-vrrp-if-gei-0/2)#vrrp 1 ipv6 fe80::1:1
R1(config-vrrp-if-gei-0/2)#vrrp 1 out-interface gei-0/2
R1(config-vrrp-if-gei-0/2)#end
Configuration on R2:
R2(config)#interface gei-0/2
R2(config-if-gei-0/2)#no shutdown
R2(config-if-gei-0/2)#ipv6 enable
R2(config-if-gei-0/2)#ipv6 address link-local fe80::1:2
R2(config-if-gei-0/2)#exit
R2(config)#vrrp
23-10
R2(config-vrrp)#interface gei-0/2
R2(config-vrrp-if-gei-0/2)#vrrp 1 ipv6 fe80::1:1
R2(config-vrrp-if-gei-0/2)#vrrp 1 out-interface gei-0/2
R2(config-vrrp-if-gei-0/2)#end
Configuration Verification
View the VRRP information and configuration result on R1, as shown below.
23-11
23-12
On an IPv6 network, a DHCP client uses a reserved multicast address that is valid on a
link to locate the DHCPv6 server. Therefore, it is required that the client and the server
should be on the same link. However, in some applications, considering management,
economy and extension, it is required that a client can communicate with a server that is
not on the same link with the client. This function is implemented by a DHCPv6 relay. A
DHCPv6 relay can relay access requests from other clients or relays.
Figure 24-1 shows the relationships between DHCPv6 clients, relays and a server.
24-1
DHCPv6 Features
Each DHCPv6 client or server has a unique identifier, that is, a DHCP Unique Identifier
(DUID). There are several modes to generate DUIDs. The lengths of DUIDs are different.
Not every message needs to carry a DUID, therefore a DUID is contained in the option
information.
Identity Association (IA) is an abstract concept used by DHCPv6 servers and clients to
identify, group and management multiple addresses. A network interface needs at least
one IA to manage the IPv6 address information obtained on this interface. An IA must
be associated with a unique network interface. Different IAs are identified by IAIDs. The
IPv6 address information allocated by DHCPv6 is contained in IAs. An IA can carry the
information about several addresses.
DHCPv6 uses UDP to transport the protocol packets. The detection port on clients is
port 546, and the detection port on servers and relays is port 547. Clients always use
multicast packets to start interactions. DHCPv6 defines two multicast addresses. One is
the multicast address (FF05::1:3) of all local DHCP servers, and the other is the multicast
address (FF02::1:2) of all servers and relay agents.
l Solicit message (1): A client uses Solicit messages to locate the position of a server.
l Advertise message (2): A server sends an Advertise message to reply to a Solicit. An
Advertise message contains the allocated address and option information.
l Request message (3): A client sends a Request message to a specified server to
request an address and configuration information.
l Confirm message (4): A client sends Confirm messages to any reachable server to
check whether the current IPv6 address it obtained is applicable to the connected
links.
l Renew message (5): A client uses Renew messages to extend the address lease
term, and update other configuration information.
l Rebind message (6): If the renew message is not replied, a client uses a Rebind
message to extend the address lease term, and update other configuration
information.
l Reply message (7): A server uses Reply message to respond Request, Renew,
Rebind, Release, Decline and Information-request messages. A Reply message can
carry an address and configuration information. In an exception, a Reply message
also can carry the status code information about an error.
l Release message (8): When a client sends a Release message to a server that
allocates an address for this client, the client does not use the address (or addresses)
any longer.
l Decline message (9): When a client sends a Decline message to a server, the address
(or addresses) has (have) been used on a link (or links).
l Reconfigure message (10): A server can send a Reconfigure message to a client to
hint the configuration information that the client can update.
24-2
24-3
Steps
1. Enable the DHCPv6 function, and set the DHCPv6 mode of the interface to DHCPv6
Server.
24-4
24-5
<valid-lifetime1>: valid lifetime of the prefixes allocated from the address pool, range:
604294967295, unit: second, default: 3600.
<preferred-lifetime1>: preferred lifetime of the prefixes allocated from the address pool,
range: 604294967295, unit: second, default: 3600.
infinite: sets the valid/preferred lifetime of the prefixes allocated from the address pool
to permanent.
<valid-lifetime2>: valid lifetime of the addresses allocated from the address pool, range:
604294967295, unit: second, default: 3600.
<preferred-lifetime2>: preferred lifetime of the addresses allocated from the address
pool, range: 604294967295, unit: second, default: 3600.
<server-number>: DNS server number, options: 12.
5. Configure a DHCPv6 policy.
24-6
Command Function
ZXR10#show ipv6 dhcp server user [interface Shows the client information on a
<interface-name>]|[summary] DHCPv6 server.
8. Maintain DHCPv6.
Command Function
ZXR10#kick-off ipv6 dhcp server user [[interface Kicks off online users of the DHCP
<interface-name>]|[prefix<IPv6 prefix>[vrf-instance server by the specified attribute, such as
<vrf-name>]]|[address <IPv6 address>[vrf-instance interface, IPv6 prefix and IPv6 address.
<vrf-name>]]
End of Steps
Steps
1. Enable the DHCPv6 function.
24-7
24-8
Command Function
ZXR10#show ipv6 dhcp relay user [interface Displays the client information on a
<interface-name>]|[summary] DHCPv6 relay.
7. Maintain DHCPv6.
24-9
Command Function
ZXR10#kick-off ipv6 dhcp relay user [[interface Kicks off online users of the DHCP
<interface-name>]|[prefix<IPv6 prefix>[vrf-instance relay by the specified attribute, such
<vrf-name>]]|[address <IPv6 address>[vrf-instance as interface, IPv6 prefix and IPv6
<vrf-name>]] address.
End of Steps
Steps
1. Run the following command to configure the DHCPv6 client.
24-10
Configuration Flow
1. Enable IPv6 on the interface, and configure an IPv6 address.
2. Configure an IPv6 address pool, and configure related parameters such as the range
of the address pool. The range of the addresses in the pool should be on the same
network segment.
3. Enable DHCPv6 globally.
4. Configure DHCPv6 pool. The DHCPv6 pool needs to be bounded to an IP pool.
Configure DNS, lease time and other parameters.
5. Configure a DHCPv6 policy. The DHCPv6 policy is a policy option. Many priorities are
supported by a name for policy management.
6. Configure a DHCPv6 server. Configure the server mode in DHCPv6 interface
configuration mode. Bind the policy.
Configuration Commands
Configuration on ZXR10:
ZXR10(config)#interface gei-0/1
ZXR10(config-if-gei-0/1)#ipv6 enable
ZXR10(config-if-gei-0/1)#ipv6 address 86::1:1/96
ZXR10(config-if-gei-0/1)#no shutdown
ZXR10(config-if-gei-0/1)#exit
/*Enable DHCPv6*/
ZXR10(config)#dhcp ipv6
ZXR10(config-dhcpv6)#enable
24-11
ZXR10(config-dhcpv6-pool)#address-pool zte
ZXR10(config-dhcpv6-pool)#exit
/*Configure server mode in interface configuration mode and bind the policy*/
ZXR10(config-dhcpv6)#interface gei-0/1
ZXR10(config-dhcpv6-if-gei-0/1)#mode server
ZXR10(config-dhcpv6-if-gei-0/1)#server policy zte
ZXR10(config-dhcpv6-if-gei-0/1)#exit
Configuration Verification
Check the configuration of the IPv6 address pool on ZXR10, as shown below.
ZXR10#show ipv6 addr-pool configure zte
PoolName Lock Begin End Vrf Used Free
zte no 86::1:2 86::1:10 0 15
RangeTotal:1
After the PC user obtains an address through DHCPv6, check the user information on
ZXR10, as shown below.
ZXR10#show ipv6 dhcp server user
Client DUID: 000100014CFBF3DB001094000001
IA NA: IA ID 0, T1 50000, T2 80000
Address: 86::1:2
preferred lifetime 1000, valid lifetime 1000
24-12
Configuration Flow
1. Configure an IPv6 address on the interface of the relay, and enable DHCPv6.
2. Configure a relay server group on the relay. Bind the group in the relay policy.
3. Configure relay agent mode on the interface connected to the PC on the relay.
4. The configuration on the server is similar to that on the server in the DHCPv6 Server
Configuration Example section. It is necessary to specify the IPv6 address of the
relay interface in the DHCPv6 policy.
5. Configure a static route to the network segment of the relay interface on the server.
Configuration Commands
Configuration on R1:
/*Configure an interface*/
R1(config)#interface gei-0/1
R1(config-if-gei-0/1)#ipv6 enable
R1(config-if-gei-0/1)#ipv6 address 86::1:1/96
R1(config-if-gei-0/1)#no shutdown
R1(config-if-gei-0/1)#exit
24-13
R1(config)#interface gei-0/2
R1(config-if-gei-0/2)#ipv6 enable
R1(config-if-gei-0/2)#ipv6 address 87::1:1/96
R1(config-if-gei-0/2)#no shutdown
R1(config-if-gei-0/2)#exit
/*Specify a server*/
R1(config-dhcpv6)#relay server group 1
R1(config-dhcpv6-server-group)#server 1 87::1:2
R1(config-dhcpv6-server-group)#exit
Configuration on R2:
/*Configure an interface*/
R2(config)#interface gei-0/2
R2(config-if-gei-0/2)#ipv6 enable
R2(config-if-gei-0/2)#ipv6 address 87::1:2/96
R2(config-if-gei-0/2)#no shutdown
R2(config-if-gei-0/2)#exit
/*Enable DHCPv6*/
R2(config)#dhcp ipv6
R2(config-dhcpv6)#enable
24-14
Configuration Verification
Check the DHCPv6 configuration on R1, as shown below.
Check the configuration of the IPv6 address pool on R2, as shown below.
24-15
After the PC user obtains an address through the DHCPv6, check the user information on
R2, as shown below.
R2#show ipv6 dhcp server user
Client DUID: 000100014CFBF3DB001094000001
IA NA: IA ID 0, T1 50000, T2 80000
Address: 86::1:10
preferred lifetime 10000, valid lifetime 10000
expires at 13:18:21 12/08/2010 (9995 seconds)
Client DUID: 000100014CFBF3DB001094000002
IA NA: IA ID 0, T1 50000, T2 80000
Address: 86::1:11
preferred lifetime 10000, valid lifetime 10000
expires at 13:18:20 12/08/2010 (9994 seconds)
Client DUID: 000100014CFBF3DB001094000003
IA NA: IA ID 0, T1 50000, T2 80000
Address: 86::1:12
preferred lifetime 10000, valid lifetime 10000
expires at 13:18:20 12/08/2010 (9994 seconds)
24-16
Configuration Flow
1. Configure R2 as the DHCPv6 server.
2. Enable the DHCPv6 Client function on R1.
Configuration Commands
Run the following commands on R2:
R2(config)#interface gei-1/2
R2(config-if-gei-1/2)#no shutdown
R2(config-if-gei-1/2)#ipv6 enable
R2(config-if-gei-1/2)#ipv6 address 11:11::1:1/112
R2(config-if-gei-1/2)#exit
R2(config)#ipv6 addr-pool zte
R2(config-ipv6-addr-pool)#addr-range 11:12::1:1 11:12::1:100
R2(config-ipv6-addr-pool)#exit
R2(config)#ipv6 prefix-pool zte1
R2(config-ipv6-prefix-pool)#prefix-delegation 11:11::12:0/112 112
R2(config-ipv6-prefix-pool)#exit
R2(config)#dhcp ipv6
R2(config-dhcpv6)#enable
R2(config-dhcpv6)#pool zte
R2(config-dhcpv6-pool)#address-pool zte
R2(config-dhcpv6-pool)#address-lifetime 60 60
R2(config-dhcpv6-pool)#prefix-lifetime 60 60
R2(config-dhcpv6-pool)#prefix-pool zte1
R2(config-dhcpv6-pool)#exit
R2(config-dhcpv6)#policy zte 1
R2(config-dhcpv6-policy)#dhcpv6-pool zte
R2(config-dhcpv6-policy)#exit
R2(config-dhcpv6)#interface gei-1/2
R2(config-dhcpv6-if-gei-1/2)#mode server
R2(config-dhcpv6-if-gei-1/2)#server policy zte
R1(config)#interface gei-1/2
R1(config-if-gei-1/2)#no shutdown
R1(config-if-gei-1/2)#ipv6 enable
24-17
Configuration Verification
Run the show ipv6 interface<interface-name> command on R1 to check the interface:
The client has two IPv6 addresses. One is obtained directly: 11:12::1:1/128. The suffix is
128 bits. The other consists of two parts: the obtained IP prefix and the configured suffix:
11:11::12:110/112.
You can also run the following command on R2 to check the allocated IPv6 addresses and
the prefix:
R2(config)#sho ipv6 dhcp server user
Client DUID: 00030001000D0D00000C
IA NA: IA ID 17, T1 30, T2 48
Address: 11:12::1:1
preferred lifetime 60, valid lifetime 60
expires at 23:52:20 11/01/2000 (30 seconds)
IA PD: IA ID 17, T1 30, T2 48
Prefix: 11:11::12:0/112
preferred lifetime 60, valid lifetime 60
expires at 23:52:49 11/01/2000 (59 seconds)
24-18
II
III
IV
VI
BSR
- Bootstrap Router
CAR
- Committed Access Rate
CE
- Customer Edge
CIDR
- Classless Inter-Domain Routing
DHCP
- Dynamic Host Configuration Protocol
DIS
- Designate IS
DR
- Designated Router
DSCP
- Differentiated Services Code Point
DUID
- DHCP Unique Identifier
VII
IA
- Identity Association
IBGP
- Interior Border Gateway Protocol
ICMP
- Internet Control Message Protocol
IEEE
- Institute of Electrical and Electronics Engineers
IETF
- Internet Engineering Task Force
IGMP
- Internet Group Management Protocol
IGP
- Interior Gateway Protocol
IP
- Internet Protocol
IPSec
- IP SecurityProtocol
IPX
- Internetwork Packet Exchange protocol
IPv4
- Internet Protocol version 4
IPv6
- Internet Protocol Version 6
IS-IS
- Intermediate System-to-Intermediate System
ISATAP
- Intra-Site Automatic Tunnel Addressing Protocol
ISO
- International Organization for Standardization
ISP
- Internet Service Provider
LAN
- Local Area Network
LDP
- Label Distribution Protocol
LLQ
- Low Latency Queueing
VIII
LSA
- Link State Advertisement
LSDB
- Link-state Database
LSP
- Link State Packet
LSP
- Label Switched Path
LSU
- Link State Update
MAC
- Media Access Control
MD5
- Message Digest 5 Algorithm
MLD
- Multicast Listener Discovery
MLDv2
- Multicast Listener Discovery Version 2
MPLS
- Multiprotocol Label Switching
MSDP
- Multicast Source Discovery Protocol
MTU
- Maximum Transfer Unit
NA
- Neighbor Advertisement
NBMA
- Non-Broadcast Multiple Access
NDP
- Neighbor Discovery Protocol
NS
- Neighbor Solicitation
NSAP
- Network Service Access Point
OSI
- Open System Interconnection
OSPF
- Open Shortest Path First
IX
PE
- Provider Edge
PIM-DM
- Protocol Independent Multicast - Dense Mode
PIM-SSM
- Protocol Independent Multicast-Source Specific Multicast
QoS
- Quality of Service
RA
- Router Advertisement
RD
- Route Distinguisher
RFC
- Request For Comments
RIP
- Routing Information Protocol
RIPng
- Routing Information Protocol next generation
RP
- Rendezvous Point
RS
- Router Solicitation
RSVP-TE
- Resource Reservation Protocol - Traffic Engineering
RT
- Route Target
SPF
- Shortest Path First
SPT
- Shortest Path Tree
SSM
- Source Specific Multicast
TCP/IP
- Transmission Control Protocol/Internet Protocol
TLV
- Tag, Length, Value
TTL
- Time To Live
UDP
- User Datagram Protocol
URPF
- Unicast Reverse Path Forwarding
VLAN
- Virtual Local Area Network
VPN
- Virtual Private Network
VRF
- Virtual Route Forwarding
WFQ
- Weighted Fair Queuing
WRED
- Weighted Random Early Detection
XI