Table of contents
The RIB (Routing Information Base), also called the routing table, is where information is kept about where to forward traffic. IPv4 and IPv6 use separate routing tables. They run completely independent of each other.
IPv6 Routing Table Fundamentals
Examining the IPv6 Routing Table
To examine the IPv6 routing table we must use the show ipv6 route command.
If we check the ipv6 routing table with the show ipv6 route command with a factory default configuration there is no output:
Router#sh ipv6 route Router#
First, a Link-Local Address (LLA) and/or a Global Unicast Address (GUI) needs to be configured:
R-1(config)#interface g0/0 R-1(config-if)#no shutdown R-1(config-if)#ipv6 address fe80::1 link-local R-1(config-if)#ipv6 address 2001::1/64
Now if we check the ipv6 routing table we can see:
R-1(config-if)#do sh ipv6 route IPv6 Routing Table - default - 1 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP H - NHRP, I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea IS - ISIS summary, D - EIGRP, EX - EIGRP external, NM - NEMO ND - ND Default, NDp - ND Prefix, DCE - Destination, NDr - Redirect RL - RPL, O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1 OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 la - LISP alt, lr - LISP site-registrations, ld - LISP dyn-eid lA - LISP away, a - Application L FF00::/8 [0/0] via Null0, receive
Note in the output:
- Line 3: default - 1 entries
- There is one entry added to the routing table by default
- Line 4: Codes
- These are the codes for the sources where routes can be learned.
- Line 13: L FF00::/8 [0/0] via Null0, receive
- This is the one default entry mentioned above.
- L – This code denotes that the interface exists on the local router itself. L = Local
- FF00::/8 – This is the network prefix and prefix length. In this entry, it represents all multicast traffic since all multicasts must begin with FF.
- [0/0] – The first value is the Administrative Distance (AD) and the second value is of the metric. A brief explanation is that these values describe the priority of this route to the given network. This is described in more detail below.
- Null0 – A Null interface is a destination to nowhere. Traffic sent to a Null interface is discarded.
- In Sum, this entry causes all multicast traffic to be discarded. Essentially, in IPv6 multicast traffic is disabled by default.
After directly connecting the router to another router (with interfaces on both sides of the link addressed properly and enabled) our routing table will look like this:
R-1#sh ipv6 route IPv6 Routing Table - default - 3 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route B - BGP, HA - Home Agent, MR - Mobile Router, R - RIP H - NHRP, I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea IS - ISIS summary, D - EIGRP, EX - EIGRP external, NM - NEMO ND - ND Default, NDp - ND Prefix, DCE - Destination, NDr - Redirect RL - RPL, O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1 OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2 la - LISP alt, lr - LISP site-registrations, ld - LISP dyn-eid lA - LISP away, a - Application C 2001:DB8:ACE:12::/64 [0/0] via GigabitEthernet0/0, directly connected L 2001:DB8:ACE:12::1/128 [0/0] via GigabitEthernet0/0, receive L FF00::/8 [0/0] via Null0, receive
Notice we have two additional entries in the routing table:
- Line 2: 3 entries
- There are now a total of three entries inserted into the routing table.
- Line 12: C 2001:DB8:ACE:12::/64 [0/0]
via GigabitEthernet0/0, directly connected
- Directly Connected to the router’s G0/0 interface is network 2001:DB8:ACE:12:: with a prefix length of /64. The AD = 0 and the metric = 0.
- Line 14: L 2001:DB8:ACE:12::1/128 [0/0]
via GigabitEthernet0/0, receive
- Local to our router on the G0/0 interface is network prefix 2001:DB8:ACE:12::1 with a prefix of /128. While it looks like an address, it actually denotes a network (routing tables only have networks, not addresses). AD = 0, Metric = 0.
Key items in the output of the ipv6 routing table are:
- How many entries are in the routing table
- How the routes were learned
- The network ID and prefix for a learned route
- The AD and metric for each route
- The egress interface for each route
Pro Tip: Even though we have some information now in the routing table, the router will not route ipv6 packets unless ipv6 unicast-routing has been enabled by issuing the ipv6 unicast-routing command. This is explained in more detail below.
Administrative Distance and Metric
Let's now take a closer look at Administrative Distance and Metric - they're important to understanding the traffic flow.
Administrative Distance (AD) is a value given to the trustworthiness of a route. The value ranges from 0-255 with 0 being the most trusted. If a device has multiple routes to the same destination, the route with the lowest AD is trusted the most and so it will be placed into the routing table.
Internal EIGRPv6, for example, is trusted more than OSPFv3 because it is more “powerful”... It takes bandwidth and delay into account while OSPFv3 uses a less precise method for calculating its best path.
If multiple routes have the same AD, then the metric will be the tie breaker, if metric is the same – the routing protocol usually load balances the traffic. Below is a table of Administrative Distances for the most common route sources: