IPv6 Static Routes on VRP
Key Takeaways
- Enable IPv6 globally and on interfaces, assign ipv6 address values, then add reachability with ipv6 route-static using prefix, prefix length, and next hop.
- Verify IPv6 routes with display ipv6 routing-table (and protocol filters where available); do not rely on the IPv4 display ip routing-table for IPv6 paths.
- An IPv6 default route uses destination :: with prefix length 0 (::/0), analogous to 0.0.0.0/0 in IPv4.
- Next hops may be global/ULA or link-local; link-local next hops require the correct outbound interface context.
- Static IPv6 routes are unidirectional configuration—always plan the return path, and remember preference/longest-match logic still applies in the IPv6 RIB.
IPv6 static routing in the HCIA toolkit
After you can address interfaces and explain ND/SLAAC, you still need reachability between prefixes. On Huawei VRP, the IPv6 counterpart of ip route-static is ipv6 route-static. H12-811 expects the command pattern, the verification command family, and the same design discipline you used for IPv4 statics: correct prefix length, reachable next hop, return path, and table verification.
IPv6 static routing does not reinvent longest match or preference theory. It applies those rules inside the IPv6 routing table. Your new failure modes are mostly IPv6-specific: forgetting ipv6 enable, using the IPv4 routing display, compressing addresses incorrectly in the command, or pointing a static at a link-local next hop without the right interface.
Prerequisites before the first static
Complete this checklist on each router in the path:
| Step | Command / check |
|---|---|
| 1. Global IPv6 | ipv6 in system-view |
| 2. Interface IPv6 | ipv6 enable under each participating interface |
| 3. Interface address | ipv6 address <addr>/<prefix-length> |
| 4. Interface up | undo shutdown; display ipv6 interface brief |
| 5. Connected routes present | display ipv6 routing-table shows Direct/local entries |
Example addressing on a simple two-router link plus LANs:
[R1] ipv6
[R1] interface GigabitEthernet0/0/0
[R1-GigabitEthernet0/0/0] ipv6 enable
[R1-GigabitEthernet0/0/0] ipv6 address 2001:db8:12::1/64
[R1] interface GigabitEthernet0/0/1
[R1-GigabitEthernet0/0/1] ipv6 enable
[R1-GigabitEthernet0/0/1] ipv6 address 2001:db8:1::1/64
[R2] ipv6
[R2] interface GigabitEthernet0/0/0
[R2-GigabitEthernet0/0/0] ipv6 enable
[R2-GigabitEthernet0/0/0] ipv6 address 2001:db8:12::2/64
[R2] interface GigabitEthernet0/0/1
[R2-GigabitEthernet0/0/1] ipv6 enable
[R2-GigabitEthernet0/0/1] ipv6 address 2001:db8:2::1/64
R1’s LAN is 2001:db8:1::/64; R2’s LAN is 2001:db8:2::/64; the interconnect is 2001:db8:12::/64.
Core command: ipv6 route-static
General form (conceptual):
ipv6 route-static <destination> <prefix-length> { <next-hop> | <interface> [ <next-hop> ] } [ preference <value> ]
Exam-standard example matching common HCIA wording:
[R1] ipv6 route-static 2001:db8:2:: 64 2001:db8:12::2
[R2] ipv6 route-static 2001:db8:1:: 64 2001:db8:12::1
| Parameter | Meaning | Notes |
|---|---|---|
| destination | Prefix network address | Often written compressed (2001:db8:2::) |
| prefix-length | Integer length (for example 64) | Not an IPv4 dotted mask |
| next-hop | IPv6 address of the next router | Must be resolvable on-link or recursively |
| interface | Local outbound interface | Often required with link-local next hops |
| preference | Optional Huawei preference | Same “lower is better” idea as IPv4 static preference |
Forms you should recognize
Global/ULA next hop (common in labs):
[R1] ipv6 route-static 2001:db8:2:: 64 2001:db8:12::2
Default route (::/0):
[R1] ipv6 route-static :: 0 2001:db8:12::2
Here destination :: with prefix-length 0 is the IPv6 default—parallel to 0.0.0.0 0.0.0.0 on IPv4.
Link-local next hop (operationally common in real IPv6):
[R1] ipv6 route-static 2001:db8:2:: 64 GigabitEthernet0/0/0 FE80::2
Because every interface can have an fe80:: address, outbound interface disambiguates which link the next hop lives on. Exam items may show either GUA next hops (clearer for beginners) or link-local next hops (more “real IPv6”).
| Next-hop style | Pros | Cons / traps |
|---|---|---|
| GUA/ULA on interconnect | Easy to read in labs | Changes if interconnect renumbered |
| Link-local + interface | Stable if only interconnect GUAs change | Must specify interface; FE80 scope mistakes |
| Interface-only | Sometimes used on true P2P | Same Ethernet caveats as IPv4 interface statics |
Verification: the IPv6 table, not the IPv4 table
<Huawei> display ipv6 routing-table
<Huawei> display ipv6 routing-table protocol static
<Huawei> display ipv6 routing-table 2001:db8:2::10
| Check | Healthy sign |
|---|---|
| Destination/mask | 2001:DB8:2::/64 (display capitalization may vary) |
| Protocol | Static |
| Preference | Default static preference unless you set otherwise |
| Next hop / interface | Matches design |
| Lookup of a host in the LAN | Hits the static /64, not only ::/0 if both exist |
Also verify underlay:
<Huawei> display ipv6 interface brief
<Huawei> ping ipv6 2001:db8:12::2
<Huawei> ping ipv6 2001:db8:2::1
If the next hop does not answer, fix addressing/ND before blaming the static syntax.
Removal
Use undo with matching parameters:
[R1] undo ipv6 route-static 2001:db8:2:: 64 2001:db8:12::2
Match destination, length, and next hop carefully—partial undo lines may not delete the intended route.
Longest match and preference still rule
Selection logic does not flip for IPv6:
- Longest prefix match among covering IPv6 routes.
- Preference among same-prefix candidates (lower better).
- Cost/tie-breakers as applicable.
| Table contents | Packet to 2001:db8:2::10 |
|---|---|
2001:db8:2::/64 static + ::/0 static | Uses /64 |
Only ::/0 | Uses default |
Same /64 from Static Pre 60 vs a dynamic source with better Pre | Dynamic wins if it offers the same prefix with better preference |
Floating IPv6 statics use the same preference knob as IPv4 statics: better (lower) preference primary, worse preference backup.
End-to-end lab narrative
Goal: Host on R1 LAN (2001:db8:1::10) pings host on R2 LAN (2001:db8:2::10).
- Both hosts/routers have IPv6 enabled and on-link GUAs.
- R1 has static to
2001:db8:2::/64via2001:db8:12::2. - R2 has static to
2001:db8:1::/64via2001:db8:12::1. display ipv6 routing-tableon each shows the remote LAN as Static.- ND resolves the interconnect next hops’ MACs.
- Bidirectional pings succeed.
One-way ping almost always means a missing return static (or missing return dynamic route)—the same classic IPv4 static failure, now on the IPv6 RIB.
Default route design notes
Stub site R1 with a single exit to R2:
[R1] ipv6 route-static :: 0 2001:db8:12::2
R1 no longer needs a static per remote enterprise prefix if R2 (or the core) knows them. R2 still needs routes back to R1’s LANs—or a matching default/dynamic design. Default routes do not override more specific prefixes when those exist.
Comparison table: IPv4 vs IPv6 static on VRP
| Task | IPv4 VRP | IPv6 VRP |
|---|---|---|
| Enable routing family | IPv4 typically present | ipv6 + per-interface ipv6 enable |
| Interface address | ip address | ipv6 address |
| Static route | ip route-static | ipv6 route-static |
| Default route | 0.0.0.0 0.0.0.0 | :: 0 (::/0) |
| Display table | display ip routing-table | display ipv6 routing-table |
| L2 resolution for next hop | ARP | ND (NS/NA) |
Memorizing this side-by-side chart converts IPv4 static skills into IPv6 static skills with minimal new theory.
Troubleshooting matrix
| Symptom | First checks |
|---|---|
| Static missing from table | Syntax; ipv6 enabled; next hop resolvable; interface up |
| Static present, ping fails | Return route; ND neighbors; wrong next hop; ACL |
| Works to interconnect, not to remote LAN | Remote LAN static missing or wrong prefix length |
Using display ip routing-table only | Switch to display ipv6 routing-table |
| Link-local next hop issues | Specify outbound interface; confirm neighbor entry |
| Host has only link-local | Address assignment (SLAAC/DHCPv6/static) problem, not static routing yet |
Operational best practices
- Document every IPv6 static: prefix, length, next hop, interface, purpose.
- Prefer consistent lab style (all GUA next hops or all link-local+interface).
- Configure both directions in pure static designs.
- Verify with IPv6 display commands and
ping ipv6. saveafter success if persistence is required.- Move to dynamic IPv6 routing (for example OSPFv3 in broader studies) when scale outgrows statics—HCIA still requires static mastery first.
Exam traps for IPv6 static routes
- Writing
ip route-staticfor an IPv6 prefix. - Using dotted masks (
255.255.0.0) instead of prefix-length integers. - Configuring
ipv6 route-static 2001:db8:1::/64 …with Cisco-like slash in the wrong parameter position—know VRP’s destination then length form taught for HCIA:2001:db8:1:: 64. - Default as something other than
::/0(::with length0). - Looking at the IPv4 routing table to verify IPv6.
- Forgetting return routes.
- Assuming connected IPv4 routes somehow forward IPv6 (dual-stack tables are separate).
- Ignoring that next-hop GUA must be on a connected IPv6 subnet (or recursively reachable).
Mastery checklist
-
ipv6+ipv6 enable+ipv6 addresscomplete before statics. - Can write
ipv6 route-static 2001:db8:2:: 64 2001:db8:12::2from memory. - Can write IPv6 default
ipv6 route-static :: 0 <next-hop>. - Verifies with
display ipv6 routing-table/protocol static. - Explains FE80 next-hop + interface requirement.
- Applies longest match and preference without IPv4/IPv6 confusion.
Chapter synthesis
IPv6 on HCIA-Datacom is a stack of skills: read and classify addresses, use ND/ICMPv6 instead of ARP/broadcast, choose SLAAC vs stateful vs stateless DHCPv6, and steer traffic with ipv6 route-static. If you can configure a dual-router lab with GUAs, confirm neighbors, and install bidirectional statics verified in display ipv6 routing-table, you have the operational core of this chapter for H12-811.
Which VRP command correctly configures a static IPv6 route to 2001:db8:1::/64 via next hop 2001:db8::1?
Which command displays the IPv6 routing table on Huawei VRP?
How is an IPv6 default static route expressed in the common HCIA VRP form?
R1 has a correct IPv6 static route to R2’s LAN, but return traffic fails. Both routers use only IPv6 static routing. What is the most likely cause?