IPv6 Routing
IPv6 Routing
IPv6 Routing
www.netpro.com.vn
Objectives
• RIPng
• EIGRP for IPv6
• OSPFv3
• MP-BGP4
IPv6 Routing
RIPng
www.netpro.com.vn
Operation of RIPng
• RIPng for IPv6 is based on RIPv2, but it is not
an extension of RIPv2
• RIPng does not support IPv4, so to use RIP to
route both IPv4 and IPv6, you must run RIPv1 or
v2 for IPv4 and RIPng for IPv6
• RIPng uses the same timers, procedures, and
message types as RIPv2
• IPv6 multicast address used by RIPng is
FF02::9
• Unlike RIPv1 and v2, which run at UDP port 520,
RIPng sends and receives its messages at UDP
port 521
RIPng message format
RIPng message format (cont.)
• Command is always set to 1, indicating a Request message, or to
2, indicating a Response message.
• Version is always set to 1, that is, the current version of RIPng in
RIPngv1.
• IPv6 Prefix is the 128-bit IPv6 destination prefix of the route entry.
• Route Tag is used in the same way the 16-bit RIPv2 Route Tag
field is used: for transporting external route attributes across the
RIP domain.
• Prefix Length is an 8-bit field specifying, in bits, the significant
part of the address in the IPv6 Prefix field. For example, if the
advertised prefix is 3ffe:2100:1201::/48, the value in the Prefix
Length field is 48 (0x30). If the advertised route entry is a default
route, the IPv6 prefix is 0:0:0:0:0:0:0:0 and the Prefix Length is 0.
• Metric is the same hop count metric used by RIPv1 and v2. But as
the maximum possible value is 16, the field is reduced to 8 bits
from the unnecessarily large 16 bits of RIPv1 and v2.
Configuring RIPng
• Step 1: IPv6 unicast routing is enabled on the router
• Step 2: Enable RIPng for IPv6 routing on interfaces
will run RIPng (ipv6 rip process-name enable)
• Example:
!
ipv6 unicast-routing
interface Ethernet0
ipv6 address 2001:db8:0:6::1/64
ipv6 rip VTN enable
!
IPv6 route table
RIPng configuration with a modified UDP
port number
!
ipv6 router rip VTN
port 527 multicast-group ff02::9
!
show ipv6 rip
debug ipv6 rip
Modifing AD, LB, protocol times
!
ipv6 router rip VTN
timers 10 30 30 60
maximum-paths 8
distance 200
!
RIPng metric-offset
!
interface Ethernet1
ipv6 rip VTN metric-offset 3
!
Summarization advertised RIPng
addresses
!
interface Ethernet0
ipv6 address 2001:DB8:0:4::2/64
ipv6 rip VTN enable
ipv6 rip VTN summary-address 2001:DB8:0:10::/62
!
IPv6 Routing
www.netpro.com.vn
Operation of EIGRP for IPv6
• EIGRP is an enhanced version of the IGRP
developed by Cisco. EIGRP uses the same
distance vector algorithm and distance
information as IGRP.
• EIGRP has the following four basic
components:
– Neighbor discovery
– Reliable transport protocol
– DUAL finite state machine
– Protocol-dependent modules
Enabling EIGRP for IPv6 on an Interface
• Step 1: enable
• Step 2: configure terminal
• Step 3: ipv6 unicast-routing
• Step 4: interface type number
• Step 5: no shut
• Step 6: ipv6 enable
• Step 7: ipv6 eigrp as-number
• Step 8: ipv6 router eigrp as-number
• Step 9: eigrp router-id ip-address
Configuring the Percentage of Link Bandwidth
Used by EIGRP
• Step 1: enable
• Step 2: configure terminal
• Step 3: interface type number
• Step 4: no shut
• Step 5: ipv6 bandwidth-percent eigrp as-
number percent
Configuring Summary Addresses
• Step 1: enable
• Step 2: configure terminal
• Step 3: interface type number
• Step 4: no shut
• Step 5: ipv6 summary-address eigrp as-
number ipv6-address [admin-distance]
Configuring EIGRP Route Authentication
• Step 1: enable
• Step 2: configure terminal
• Step 3: interface type number
• Step 4: no shut
• Step 5: ipv6 authentication mode eigrp as-number md5
• Step 6: ipv6 authentication key-chain eigrp as-number key-chain
• Step 7: exit
• Step 8: key chain name-of-chain
• Step 9: key key-id
• Step 10: key-string text
• Step 11: accept-lifetime start-time {infinite | end-time | duration
seconds}
• Step 12: send-lifetime start-time {infinite | end-time | duration
seconds}
Adjusting Hello and Hold timer
• Step 1: enable
• Step 2: configure terminal
• Step 3: interface type number
• Step 4: no shut
• Step 5: ipv6 hello-interval eigrp as-number
seconds
• Step 6: ipv6 hold-time eigrp as-number
seconds
Disabling Split Horizon in EIGRP for IPv6
!
interface type number
no shut
no ipv6 split-horizon eigrp as-number
!
Configuring stub in EIGRP for IPv6
!
enable
configure terminal
ipv6 router eigrp as-number
eigrp stub [receive-only | leak-map |
connected | static | summary | redistributed]
!
IPv6 Routing
OSPFv3
www.netpro.com.vn
Operation of OSPFv3
!
enable
configure terminal
interface type number
ipv6 ospf process-id area area-id
[instance instance-id]
!
Defining an OSPF for IPv6 Area Range
!
enable
configure terminal
ipv6 router ospf process-id
area area-id range ipv6-prefix/prefix-
length [advertise | not-advertise] [cost cost] !
Configuring NBMA Interfaces in OSPF for IPv6
!
enable
configure terminal
interface type number
frame-relay map ipv6 ipv6-address dlci
[broadcast] [cisco] [ietf] [payload-compression
{packet-by-packet | frf9 stac [hardware-options] |
data-stream stac [hardware-options]}]
ipv6 ospf neighbor ipv6-address [priority
number] [poll-interval seconds] [cost number]
[database-filter all out]
!
Example
Verifying OSPF for IPv6 Configuration and
Operation
!
show ipv6 ospf [process-id] [area-id] interface
[interface-type interface-number]
show ipv6 ospf [process-id] [area-id]
show ipv6 ospf [process-ID] event [generic | interface |
lsa | neighbor | reverse | rib | spf]
!
show ipv6 protocol
show ipv6 ospf neighbor
show ipv6 route
show ipv6 ospf interface serial 0/0
IPv6 Routing
www.netpro.com.vn
Multiprotocol BGP Extensions for IPv6
!
enable
configure terminal
router bgp as-number
no bgp default ipv4-unicast
bgp router-id ip-address
!
Configuring an IPv6 Multiprotocol BGP Peer
!
enable
configure terminal
router bgp as-number
neighbor {ip-address | ipv6-address[%] | peer-
group-name} remote-as autonomous-system-
number [alternate-as autonomous-system-
number ...]
address-family ipv6 [vrf vrf-name] [unicast |
multicast | vpnv6]
neighbor {ip-address | peer-group-name | ipv6-
address%} activate
!
Multiprotocol BGP Peering Using Link-Local
Addresses
!
router bgp autonomous-system-number
neighbor {ip-address | ipv6-address[%] | peer-
group-name} remote-as autonomous-system-
number [alternate-as autonomous-system-
number ...]
neighbor {ip-address | ipv6-address[%] | peer-
group-name} update-source interface-type
interface-number
address-family ipv6 [vrf vrf-name] [unicast |
multicast | vpnv6]
neighbor {ip-address | peer-group-name |
ipv6-address%} activate
neighbor {ip-address | peer-group-name |
ipv6-address [%]} route-map map-name {in | out}
!
Configuring an IPv6 Multiprotocol BGP Peer
Group
!
router bgp as-number
neighbor peer-group-name peer-group
neighbor {ip-address | ipv6-address[%] | peer-
group-name} remote-as autonomous-system-
number [alternate-as autonomous-system-
number ...]
address-family ipv6 [vrf vrf-name] [unicast |
multicast | vpnv6]
neighbor {ip-address | peer-group-name |
ipv6-address%} activate
neighbor {ip-address | ipv6-address} send-
label
neighbor {ip-address | ipv6-address} peer-
group peer-group-name
!
Redistributing Prefixes into IPv6
Multiprotocol BGP
!
enable
configure terminal
router bgp as-number
address-family ipv6 [vrf vrf-name] [unicast |
multicast | vpnv6]
redistribute bgp [process-id] [metric
metric-value] [route-map map-name]
[source-protocol-options]
!
Assigning a BGP Administrative Distance
!
enable
configure terminal
router bgp as-number
address-family ipv6 [vrf vrf-name]
[unicast | multicast | vpnv6]
distance bgp external-distance
internal-distance local-distance
!
Monitoring