When configuring IPv6 Static Routing, go to
these sections for information you are interested in:
l
Introduction to IPv6 Static Routing
l
Configuring IPv6 Static Routes
l
Displaying and Maintaining IPv6 Static Routes
l
IPv6 Static Routing Configuration Example
Throughout this
chapter, the term router refers to either a router in a general sense or a Layer
3 switch running routing protocols.
1.1 Introduction to IPv6 Static Routing
Static routes are special routes that are
manually configured by network administrators. These manually configured static
routes work well in simple networks. Configuring and using them properly can
improve the performance of networks and can guarantee enough bandwidth reserved
for important applications.
However, static routes also have their
downside: network failure or topology changes could introduce unreachable
routes that lead to network disconnection. Such scenarios require the network
administrators to manually configure and modify the static routes.
Similar to IPv4 static routes, IPv6 static
routes work well in simple IPv6 network environments.
Their major difference lies in the
destination and the next hop addresses. IPv6 static routes use IPv6 addresses
whereas IPv4 static routes use IPv4 addresses.
An IPv6 static route that has the
destination address configured as “::/0” (indicating a prefix
length of 0) is the default IPv6 route. If the destination address of an IPv6
packet does not match any entries in the routing table, this default route will
be used to forward the packet.
1.2 Configuring IPv6 Static Routes
In small IPv6 network environments, IPv6
static routes can be used to achieve network connectivity. In comparison to
dynamic routes, it helps to save network bandwidth.
l
Enabling IPv6 packet forwarding
l
Ensuring that the neighboring nodes are IPv6
reachable
|
To do…
|
Use the commands…
|
Remarks
|
|
Enter system view
|
system-view
|
—
|
|
Configure an IPv6 static route
|
ipv6 route-static ipv6-address prefix-length [ interface-type
interface-number ] nexthop-address [ preference preference-value
]
|
Required
The default preference of IPv6 static
routes is 60.
|
1.3 Displaying and Maintaining IPv6 Static Routes
|
To do…
|
Use the command…
|
Remarks
|
|
Display IPv6 static route information
|
display ipv6 routing-table protocol static [ inactive | verbose
]
|
Available in any view
|
|
Remove all IPv6 static routes
|
delete ipv6 static-routes all
|
Available in system view
|
Using the undo
ipv6 route-static command can delete a single IPv6 static route, while
using the delete ipv6 static-routes all command deletes all IPv6 static
routes including the default route.
1.4 IPv6 Static Routing Configuration Example
I. Network requirements
With IPv6 static routes configured, all
hosts and switches can interact with each other.
II. Network diagram

Figure 1-1 Network diagram for static
routes
III. Configuration procedure
1)
Configure the IPv6 addresses of all VLAN
interfaces (Omitted)
2)
Configure IPv6 static routes.
# Configure on SwitchA the default IPv6
static route.
<SwitchA> system-view
[SwitchA] ipv6
[SwitchA] ipv6 route-static :: 0 4::2
# Configure two IPv6 static routes on
SwitchB.
<SwitchB> system-view
[SwitchB] ipv6
[SwitchB] ipv6 route-static 1:: 64 4::1
[SwitchB] ipv6 route-static 3:: 64 5::1
# Configure on SwitchC the default IPv6
static route.
<SwitchC> system-view
[SwitchC] ipv6
[SwitchC] ipv6 route-static :: 0 5::2
3)
Configure the IPv6 addresses of hosts and
gateways.
Configure the IPv6 addresses of all the
hosts based upon the network diagram, configure the default gateway of PC1 as
1::1, PC2 as 2::1, and PC3 as 3::1.
4)
Display configuration information
# Display the IPv6 routing table of
SwitchA.
[SwitchA] display ipv6 routing-table
Routing Table :
Destinations : 7
Routes : 7
Destination:
::/0 Protocol : Static
NextHop : 4::2 Preference:
60
Interface :
Vlan200 Cost : 0
Destination:
::1/128 Protocol : Direct
NextHop :
::1 Preference: 0
Interface :
InLoop0 Cost : 0
Destination:
1::/64 Protocol : Direct
NextHop :
1::1 Preference: 0
Interface :
Vlan100 Cost : 0
Destination:
1::1/128 Protocol : Direct
NextHop :
::1 Preference: 0
Interface :
InLoop0 Cost : 0
Destination:
4::/64 Protocol : Direct
NextHop :
4::1 Preference: 0
Interface :
Vlan200 Cost : 0
Destination:
4::1/128 Protocol : Direct
NextHop :
::1 Preference: 0
Interface : InLoop0
Cost : 0
Destination:
FE80::/10 Protocol : Direct
NextHop :
:: Preference: 0
Interface :
NULL0 Cost : 0
# Verify with the ping command.
[SwitchA] ping ipv6 3::1
PING 3::1 : 56 data bytes, press
CTRL_C to break
Reply from 3::1
bytes=56 Sequence=1 hop limit=63
time = 5 ms
Reply from 3::1
bytes=56 Sequence=2 hop limit=63
time = 13 ms
Reply from 3::1
bytes=56 Sequence=3 hop limit=63
time = 3 ms
Reply from 3::1
bytes=56 Sequence=4 hop limit=63
time = 3 ms
Reply from 3::1
bytes=56 Sequence=5 hop limit=63
time = 3 ms
--- 3::1 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 3/5/13
ms
When configuring RIPng, go to these
sections for information you are interested in:
l
Introduction to RIPng
l
Configuring RIPng Basic Functions
l
Configuring RIPng Advanced Functions
l
Optimizing the RIPng Network
l
RIPng Configuration Example
The term
“router” in this document refers to a router in a generic sense or
a Layer 3 switch.
2.1 Introduction to RIPng
RIP next generation (RIPng) is an extension
of RIP-2 for IPv4. Most RIP concepts are applicable in RIPng.
RIPng for IPv6 made the following changes
to RIP:
l
UDP port number: RIPng uses UDP port 521 for
sending and receiving routing information.
l
Multicast address: RIPng uses FF02:9 as the
link-local multicast address.
l
Destination Prefix: 128-bit destination address
prefix.
l
Next hop: IPv6 address in 128-bit.
l
Source address: RIPng uses FE80::/10 as the
link-local source address
RIPng is a routing protocol based on the
distance vector (D-V) algorithm. RIPng uses UPD packets to exchange routing
information through port 521.
RIPng uses a hop count to measure the
distance to a destination. The hop count is referred to as metric or cost. The
hop count from a router to a directly connected network is 0. The hop count
from one router to another router is 1, and so on. When the hop count is greater
than or equal to 16, the destination network or host is unreachable.
By default, the routing update is sent
every 30 seconds. If the router receives no routing update from a neighbor after
180 seconds, the routes learned from the neighbor are considered as unreachable.
After another 240 seconds, if no routing update is received, the router will
remove these routes from the routing table.
RIPng supports Split Horizon and Poison
Reverse to prevent routing loops, and route redistribution.
Each RIPng router maintains a routing
database, including route entries of all reachable destinations. A route entry
contains the following information:
l
Destination address: IPv6 address of a host or a
network.
l
Next hop address: IPv6 address of a neighbor
along the path to the destination.
l
Egress interface: Outbound interface that
forwards IPv6 packets.
l
Metric: Cost from the local router to the
destination.
l
Route time: Time that elapsed since a route
entry is last changed. Each time a route entry is modified, the routing time is
set to 0.
l
Route tag: Identifies the route, used in routing
policy to control routing.
I. Basic format
A RIPng packet consists of a header and
multiple Route Table Entries (RTEs). The maximum number of RTEs in a packet is
determined by the interface MTU value.
Figure 2-1 shows the basic packet format of RIPng.

Figure 2-1 RIPng basic packet format
l
Command: Type of message. 0x01 indicates
Request, 0x02 indicates Response.
l
Version: Version of RIPng. It can only be 0x01
currently.
l
RTE: Route table entry, 20 bytes for each entry.
II. RTE format
There are two types of RTE in RIPng.
l
Next hop RTE: Defines a next hop IPv6 address
l
IPv6 prefix RTE: Describes the destination IPv6
address and metric in the RIPng routing table.
Figure 2-2 shows format of the next hop RTE:

Figure 2-2 Next hop RTE format
IPv6 next hop address is the IPv6 address
of the next hop.
Figure 2-3 shows the format of the IPv6 prefix RTE.

Figure 2-3 IPv6
prefix RTE format
l
IPv6 prefix: Destination IPv6 address prefix.
l
Route tag: Route tag.
l
Prefix len: Length of the IPv6 address prefix.
l
Metric: Cost of a route.
I. Request packet
When a RIPng router first starts or needs
to update some entries in its routing table, generally a multicast request
packet is sent to ask for needed routes from neighbors.
The receiving RIPng router processes RTEs
in the request. If there is only one RTE with the IPv6 prefix and prefix length
both being 0, and with a metric value of 16, the RIPng router will respond with
the entire routing table information in response messages. If there are
multiple RTEs in the request message, the RIPng router will examine each RTE,
update its metric, and send the requested routing information to the requesting
router in the response packet.
II. Response packet
The response packet containing the local
routing table information is generated as:
l
A response to a request
l
An update periodically
l
A trigged update caused by route change
After receiving a response, a router checks
the validation of the response before adding the route to its routing table,
such as whether the source IPv6 address is the link-local address, whether the
port number is correct. The response packet failed the check will be discarded.
l
RFC2080: RIPng for IPv6
l
RFC2081: RIPng Protocol Applicability Statement
l
RFC2453: RIP Version 2
2.2 Configuring RIPng Basic Functions
In this section, you are presented with the
information to configure the basic RIPng features.
You need to enable RIPng first before
configuring other tasks, but it is not necessary for RIPng related interface
configurations, such as assigning an IPv6 address.
Before the configuration, accomplish the
following tasks first:
l
Enable IPv6 packet forwarding.
l
Configure an IP address for each interface, and
make sure all nodes are reachable.
Follow these steps to configure the basic RIPng
function:
|
To do…
|
Use the command…
|
Remarks
|
|
Enter system view
|
system-view
|
––
|
|
Create a RIPng process and enter RIPng
view
|
ripng [ process-id
]
|
Required
Not created by default
|
|
Return to system view
|
quit
|
—
|
|
Enter interface view
|
interface interface-type
interface-number
|
––
|
|
Enable RIPng on the interface
|
ripng process-id
enable
|
Required
Disabled by default
|
If RIPng is not enabled on an interface, the interface will not send
and receive any RIPng route.
2.3
Configuring RIPng Advanced
Functions
This section covers the following topics:
l
Configuring an Additional Routing Metric
l
Configuring RIPng Route Summarization
l
Advertising a Default Route
l
Configuring a RIPng Route Filtering Policy
l
Configuring a RIPng Priority
l
Configuring RIPng Route Redistribution
Before the configuration, accomplish the
following tasks first:
l
Configure an IPv6 address on each interface, and
make sure all nodes are reachable.
l
Configure RIPng basic functions
l
Define an IPv6 ACL before using it for route
filtering. Refer to ACL configuration for related information.
l
Define an IPv6 address prefix list before using
it for route filtering.
2.3.1 Configuring an Additional Routing Metric
An additional routing metric can be added
to the metric of an inbound or outbound RIP route, namely, the inbound and
outbound additional metric.
The outbound additional metric is added to
the metric of a sent route, the route’s metric in the routing table is
not changed.
The inbound additional metric is added to
the metric of a received route before the route is added into the routing table,
so the route’s metric is changed.
Follow these steps to configure an inbound/outbound
additional routing metric:
|
To do…
|
Use the command…
|
Remarks
|
|
Enter system view
|
system-view
|
––
|
|
Enter interface view
|
interface interface-type
interface-number
|
––
|
|
Enter interface view
|
interface interface-type
interface-number
|
––
|
|
Specify an inbound additional metric
|
ripng metricin value
|
Optional
0 by default
|
|
Specify an outbound additional metric
|
ripng metricout value
|
Optional
1 by default
|
2.3.2 Configuring RIPng Route Summarization
Follow these steps to configure RIPng
route summarization
|
To do…
|
Use the command…
|
Remarks
|
|
Enter system view
|
system-view
|
––
|
|
Enter interface view
|
interface
interface-type interface-number
|
––
|
|
Advertise a summary IPv6 prefix
|
ripng
summary-address ipv6-address prefix-length
|
Required
|
2.3.3 Advertising a Default Route
Follow these steps to advertise a default
route:
|
To do…
|
Use the command…
|
Remarks
|
|
Enter system view
|
system-view
|
––
|
|
Enter interface view
|
interface
interface-type interface-number
|
––
|
|
Advertise a default route
|
ripng
default-route { only | originate
} [ cost value ]
|
Required
Not advertised by default
|
With this feature
enabled, a default route is advertised via the specified interface regardless
of whether the default route is available in the local IPv6 routing table.
2.3.4 Configuring a RIPng Route Filtering Policy
You can reference a configured IPv6 ACL or
prefix list to filter received/advertised routing information as needed. For
filtering outbound routes, you can also specify a routing protocol from which
to filter routing information redistributed.
Follow these steps to configure a RIPng
route filtering policy:
|
To do…
|
Use the command…
|
Remarks
|
|
Enter system view
|
system-view
|
––
|
|
Enter RIPng view
|
ripng [ process-id ]
|
––
|
|
Configure a filter policy to filter
received routes
|
filter-policy { acl6-number | ipv6-prefix ipv6-prefix-name } import
|
Required
By default, RIPng does not filter
received routing information.
|
|
Configure a filter policy to filter
advertised routes
|
filter-policy
{ acl6-number | ipv6-prefix ipv6-prefix-name } export [ protocol
[ process-id ] ]
|
Required
By default, RIPng does not filter
routing information to be advertised.
|
2.3.5 Configuring a RIPng Priority
Any routing protocol has its own protocol
priority used for optimal route selection. You can set a priority for RIPng
manually. The smaller the value is, the higher the priority is.
Follow these steps to configure a RIPng
priority:
|
To do…
|
Use the command…
|
Remarks
|
|
Enter system view
|
system-view
|
—
|
|
Enter RIPng view
|
ripng [ process-id
]
|
—
|
|
Configure a RIPng priority
|
preference [ route-policy route-policy-name
] value
|
Optional
By default, the RIPng priority is 100.
|
2.3.6 Configuring RIPng Route Redistribution
Follow these steps to configure RIPng route
redistribution:
|
To do…
|
Use the command…
|
Remarks
|
|
Enter system view
|
system-view
|
––
|
|
Enter RIPng view
|
ripng [ process-id
]
|
––
|
|
Configure a default routing metric for
redistributed routes
|
default
cost value
|
Optional
By
default, the default metric of redistribute routes is 0.
|
|
Redistribute routes from another routing
protocol
|
import-route protocol [ cost
cost-value | route-policy route-policy-name ] *
|
Required
By default, RIPng does not redistribute
any other protocol route.
|
2.4 Optimizing the RIPng Network
This section describes how to adjust and
optimize the performance of the RIPng network as well as applications under
special network environments. Before adjusting and optimizing the RIPng
network, complete the following tasks:
l
Configure a network layer address for each
interface
l
Configure the basic RIPng functions
This section covers the following topics:
l
Configuring RIPng Timers
l
Configuring the Split Horizon
and Poison Reverse
l
Configuring Zero Field Check
You can adjust RIPng timers to optimize
the performance of the RIPng network.
Follow these steps to configure RIPng
timers:
|
To do…
|
Use the command…
|
Remarks
|
|
Enter system view
|
system-view
|
—
|
|
Enter RIPng view
|
ripng [ process-id
]
|
—
|
|
Configure RIPng timers
|
timers {
garbage-collect garbage-collect-value | suppress
suppress-value | timeout timeout-value | update
update-value } *
|
Optional.
The RIPng timers have the following
defaults:
l
30 seconds for the update timer
l
180 seconds for the timeout timer
l
120 seconds for the suppress timer
l
240 seconds for the garbage-collect timer
|
When adjusting RIPng
timers, you should consider the network performance and perform unified
configurations on routers running RIPng to avoid unnecessary network traffic
increase or route oscillation.
2.4.2 Configuring the Split Horizon and Poison Reverse
If both the split horizon and poison reverse are configured, only
the poison reverse function takes effect.
I. Configure the split horizon
The split horizon function disables a
route learned from an interface from being advertised via the interface to
prevent routing loops between neighbors.
Follow these steps to configure the split
horizon:
|
To do…
|
Use the command…
|
Remarks
|
|
Enter system view
|
system-view
|
––
|
|
Enter interface view
|
interface
interface-type interface-number
|
––
|
|
Enable the split horizon function
|
ripng split-horizon
|
Optional
Enabled by default
|
Generally, you are
recommended to enable the split horizon to prevent routing loops.
II.