Cis 185 ccnp route ch 8 implementing ipv6 part 2
Download
1 / 81

CIS 185 CCNP ROUTE Ch. 8 Implementing IPv6 – Part 2 - PowerPoint PPT Presentation


  • 186 Views
  • Uploaded on

CIS 185 CCNP ROUTE Ch. 8 Implementing IPv6 – Part 2. Rick Graziani Cabrillo College [email protected] Last Updated: Fall 2010. Materials. Book: Implementing Cisco IP Routing (ROUTE) Foundation Learning Guide: Foundation learning for the ROUTE 642-902 Exam By Diane Teare Book

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' CIS 185 CCNP ROUTE Ch. 8 Implementing IPv6 – Part 2' - dyre


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Cis 185 ccnp route ch 8 implementing ipv6 part 2

CIS 185 CCNP ROUTECh. 8 Implementing IPv6 – Part 2

Rick Graziani

Cabrillo College

[email protected]

Last Updated: Fall 2010


Materials
Materials

  • Book:

    • Implementing Cisco IP Routing (ROUTE) Foundation Learning Guide: Foundation learning for the ROUTE 642-902 Exam

    • By Diane Teare

    • Book

      • ISBN-10: 1-58705-882-0

      • ISBN-13: 978-1-58705-882-0

    • eBook

      • ISBN-10: 0-13-255033-4

      • ISBN-13: 978-0-13-255033-8


Ipv6 routing protocols
IPv6 Routing Protocols

  • Static routes

  • RIP new generation (RIPng) (defined in RFC 2080, RIPng for IPv6)

  • OSPFv3 (defined in RFC 5340, OSPF for IPv6)

  • EIGRP for IPv6

  • Multiprotocol Border Gateway Protocol Version 4 (MP-BGP4 or MBGP) (defined in RFC 2545, Use of BGP-4 Multiprotocol Extensions for IPv6 Inter-Domain Routing, and RFC 4760, Multiprotocol Extensions for BGP-4)


Router(config)# ipv6 unicast-routing

  • Ipv6 unicast-routing global configuration command

  • enables IPv6 routing

  • Required before any ipv6 routing protocol can be configured


Ipv6 static routes
IPv6 Static Routes

Router(config)# ipv6 route ipv6-prefix/prefix-length {ipv6-address | interface-type interface-number [ipv6-address]} [administrative-distance] [administrative-multicast-distance | unicast| multicast] [next-hop-address] [tag tag]

Types of static routes (same as IPv4)

  • A directly attached static route is created using only the interface-type and interface-number parameters.

    Router(config)# ipv6 route 2001:CC1E::/32 serial 0/0/0

  • A recursive static route is created using only the next-hop address parameter.

    Router(config)# ipv6 route 2001:CC1E::/32 2001:12::1

  • A fully specified static route includes both the outgoing interface and the next hop address.

    Router(config)# ipv6 route 2001:CC1E::/32 ser 0/0/0 2001:12::1

  • A floating static route

  • Router(config)# ipv6 route 2001:CC1E::/32 ser 0/0/0 15


Default ::

R1(config)# ipv6 unicast-routing

R1(config)# ipv6 route 13::/64 s0/1/0

R1# show ipv6 route static

IPv6 Routing Table - 9 entries

<output omitted>

S 13::/64 [1/0]

via ::, Serial0/1/0

R2(config)# ipv6 unicast-routing

R2(config)# ipv6 route ::/64 s0/1/0

R2# show ipv6 route static

IPv6 Routing Table - 7 entries

<output omitted>

S ::/64 [1/0]

via ::, Serial0/1/0


R1# ping 13::13:1

!!!!!

R1#

R2# ping 11::11:1

!!!!!

R2# ping 10::10:1

!!!!!

R2#


Ripng the next generation
RIPng (the Next Generation)

For Enterprise Networks


Ripv2 vs ripng
RIPv2 vs RIPng

IPv4 IPv6

IPv4, UDP IPv6, UDP

520 521

IPv4 address IPv6 link-local address

224.0.0.9 FF02::9

RIP-specific uses IPv6 AH/ESP

yes yes

120 120

yes yes

yes N/A

yes yes

yes yes

yes yes

yes yes

yes yes

16 16

yes yes

Advertises routes for…

Layer 3/4 protocols

UDP Port

Source IP address

Multicast Update destination (All RIP routers)

Authentication

Use Distance Vector

Default Administrative distance

Supports VLSM

Automatic summarization

Uses Split Horizon

Uses Poison Reverse

30 second periodic full updates

Uses triggered updates

Uses Hop Count metric

Metric meaning infinity

Supports route tags


Enable IPv6 routing

Configure an IPv6 addressing and enable RIPng, process “luigi"

R1(config)# ipv6 unicast-routing

R1(config)# interface FastEthernet0/0

R1(config-if)# ipv6 address 2012::1/64

R1(config-if)# ipv6 rip luigi enable

R1(config)# interface FastEthernet0/1

R1(config-if)# ipv6 address 2013::1/64

R1(config-if)# ipv6 rip luigi enable

R1(config)# interface Serial0/0/0

R1(config-if)# ipv6 address 2014::1/64

R1(config-if)# ipv6 rip luigi enable

R1(config)# interface Serial0/0/1

R1(config-if)# ipv6 address 2015::1/64

R1(config-if)# ipv6 rip luigi enable

R1(config)# ipv6 router luigi

Create the RIPng process named “luigi“


R3# show ipv6 route

IPv6 Routing Table - Default - 19 entries

Codes: C - Connected, L - Local, S - Static, U - Per-user Static route

B - BGP, M - MIPv6, R - RIP, I1 - ISIS L1

<output omitted>

R 2005::/64 [120/3]

via FE80::11FF:FE11:1111, Serial0/0/0

via FE80::22FF:FE22:2222, Serial0/0/1

R 2012::/64 [120/2]

via FE80::11FF:FE11:1111, Serial0/0/0

via FE80::22FF:FE22:2222, Serial0/0/1

All next-hop IP addresses that begin with FE80 – RIPng uses link local addresses as next-hop addresses.


Ripng over frame relay
RIPng over Frame Relay

  • See our text book for an example of RIPng over Frame Relay.


Ospfv3
OSPFv3

OSPFv3


Ospf vs ospfv3
OSPF vs OSPFv3

IPv4 IPv6

IPv4 IPv6

89 89

IPv4 address IPv6 link-local

224.0.0.5 FF02::5

224.0.0.6 FF02::6

yes yes

yes yes

same same

same same

same same

same same

same same

yes yes

yes yes

yes yes

yes yes

yes yes

30 minutes 30 minutes

OSPF-specific uses IPv6 AH/ESP

same no "same subnet" check

no yes

Advertises routes for…

Layer 3 protocol

IP Protocol Type

Source IP address

Multicast – all SPF routers

Multicast – All Designated routers

Uses Link State logic

Supports VLSM

RID process, compared to OSPFv2

LSA flooding and aging compared to OSPFv2

Area structure compared to OSPFv2

Packet types

LSA flooding and aging compared to OSPFv2

RID

32-bit LSID

Cost metric, bandwidth

Supports route tags

DR/BDR election compared to OSPFv2

Periodic re-flooding every…

Authentication

Neighbor checks compared to OSPFv2 (table 5-5)

multiple instances per interface


Ospf version 3 ospfv3 rfc 2740
OSPF Version 3 (OSPFv3) (RFC 2740)

  • Router ID:

    • OSPFv3 uses the same process as OSPFv2 including an IPv4 address.

    • If there are no IPv4 addresses configured, the router ID (IPv4 address) must be explicitly configured.

  • Similar to OSPF for IPv4:

    • Same mechanisms, but a major rewrite of the internals of the protocol

  • Updated features for IPv6:

    • Every IPv4-specific semantic is removed

    • Carry IPv6 addresses

    • Link-local addresses used as source


Example of two instances of OSPFv3 running on the same physical network segment, using two different IPv6 prefixes.

  • OSPF interfaces connect to links instead of to IP subnets.

    • Multiple IPv6 subnets can be assigned to a single link, and two nodes can talk directly over a single link, even if they do not share a common IPv6 subnet (IPv6 prefix), because they use the link-local addresses, rather than the global unicast addresses, to communicate.

    • OSPF for IPv6 therefore runs per-link instead of the IPv4 behavior of per-IP-subnet

  • OSPFv3 has explicit support for multiple instances per link through the instance ID field in the packet header.

    • This feature allows separate routing domains, each running OSPF, to use a common link.

    • A single link could belong to multiple areas.

    • Instances need to have the same instance ID to communicate with each other.

    • By default, the instance ID is 0


Ospfv3 similarities with ospfv2
OSPFv3—Similarities with OSPFv2 physical network segment, using two different IPv6 prefixes.

  • OSPFv3 is OSPF for IPv6 (RFC 2740):

    • Based on OSPFv2, with enhancements

    • Distributes IPv6 prefixes

    • Runs directly over IPv6

  • OSPFv3 & v2 can be run concurrently, because each address family has a separate SPF (ships in the night).

  • OSPFv3 uses the same basic packet types as OSPFv2:

    • Hello

    • Database description blocks (DDB)

    • Link state request (LSR)

    • Link state update (LSU)

    • Link state acknowledgement (ACK)

  • Neighbor discovery and adjacency formation mechanism are identical.

  • LSA flooding and aging mechanisms are identical.


  • The multicast addresses used by OSPFv3 are as follows: physical network segment, using two different IPv6 prefixes.

  • FF02::5—This address represents all SPF routers on the link-local scope; it is equivalent to 224.0.0.5 in OSPFv2.

  • FF02::6—This address represents all designated routers (DRs) on the link-local scope; it is equivalent to 224.0.0.6 in OSPFv2.


Enable the interface for OSPFv3 physical network segment, using two different IPv6 prefixes.

Creates the “ipv6 router ospf 100” process dynamically

Enable the interface for OSPFv3

  • Two routers and two areas

    • Area 1

    • Area 0

Enable the interface for OSPFv3

Creates the “ipv6 router ospf 100” process dynamically

Summarizes area 0’s routes to the 2001:410::/32 route



R1(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R1(config)# interface Serial0/1/0

R1(config-if)# ipv6 address 12:12::1/64

R1(config-if)# ipv6 ospf 1 area 0

R1(config)# interface Fa0/0

R1(config-if)# ipv6 address 13:13::1/64

R1(config-if)# ipv6 ospf 1 area 13

R1(config)# ipv6 router ospf 1

R1(config-router)# router-id 0.0.0.1

R2(config)# ipv6 unicast-routing

R2(config)# interface Serial0/1/0

R2(config-if)# ipv6 address 12:12::2/64

R2(config-if)# ipv6 ospf 1 area 0

R2(config)# interface Fa0/0

R2(config-if)# ipv6 address 24:24::1/64

R2(config-if)# ipv6 ospf 1 area 24

R2(config)# ipv6 router ospf 1

R2(config-router)# router-id 0.0.0.2

  • These routers do not have any IPv4 addresses configured, so the 32-bit router ID must be configured with the router-id command


R2# physical network segment, using two different IPv6 prefixes. show ipv6 ospf neighbor

Neighbor ID Pri State Dead Time Interface ID Interface

0.0.0.1 1 FULL/ - 00:00:39 6 Serial0/1/0

R2# show ipv6 ospf interface serial 0/1/0

Serial0/1/0 is up, line protocol is up

Link Local Address FE80::219:55FF:FE92:B212, Interface ID 6

Area 0, Process ID 1, Instance ID 0, Router ID 0.0.0.2

Network Type POINT_TO_POINT, Cost: 64

Transmit Delay is 1 sec, State POINT_TO_POINT,

Timer intervals configured, Hello 10, Dead 40,Wait 40, Retransmit 5

Hello due in 00:00:06

Index 1/3/3, flood queue length 0

Next 0x0(0)/0x0(0)/0x0(0)

<output omitted>

  • This output is from R2, and indicates that R2 has a FULL relationship with R1.


R2(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R2(config)# interface Serial0/1/0

R2(config-if)# ipv6 address 12:12::2/64

R2(config-if)# ipv6 ospf 1 area 0

R2(config)# interface Fa0/0

R2(config-if)# ipv6 address 24:24::1/64

R2(config-if)# ipv6 ospf 1 area 24

R2(config)# ipv6 router ospf 1

R2(config-router)# router-id 0.0.0.2

R4(config)# ipv6 unicast-routing

R4(config)# interface Fa0/0

R4(config-if)# ipv6 address 24:24::4/64

R4(config-if)# ipv6 ospf 1 area 24

R4(config)# ipv6 router ospf 1

R4(config-router)# router-id 0.0.0.4

  • R2 was configured earlier.

  • Here is the configuration for R4


R4# show ipv6 route ospf physical network segment, using two different IPv6 prefixes.

OI 12:12::/64 [110/65]

via FE80::219:55FF:FE92:B212, FastEthernet0/0

  • OSPF portion of R4’s routing table

  • Includes the 12:12::/64 inter-area route; the link between R1 and R2.


R1(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R1(config)# interface Serial0/1/0

R1(config-if)# ipv6 address 12:12::1/64

R1(config-if)# ipv6 ospf 1 area 0

R1(config)# interface Fa0/0

R1(config-if)# ipv6 address 13:13::1/64

R1(config-if)# ipv6 ospf 1 area 13

R1(config)# ipv6 router ospf 1

R1(config-router)# router-id 0.0.0.1

R3(config)# ipv6 unicast-routing

R3(config)# interface Fa0/0

R3(config-if)# ipv6 address 13:13::3/64

R3(config-if)# ipv6 ospf 1 area 13

R3(config)# ipv6 router ospf 1

R3(config-router)# router-id 0.0.0.3

  • R1 was configured earlier.

  • Here is the configuration for R3


R3# show ipv6 route ospf physical network segment, using two different IPv6 prefixes.

OI 12:12::/64 [110/65]

via FE80::219:56FF:FE2C:9F60, FastEthernet0/0

OI 24:24::/64 [110/66]

via FE80::219:56FF:FE2C:9F60, FastEthernet0/0

R3# ping 24:24::4

!!!!!

R3#

  • OSPF portion of R3’s routing table


R1(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R1(config)# interface Serial0/1/0

R1(config-if)# ipv6 address 12:12::1/64

R1(config-if)# ipv6 ospf 1 area 0

R1(config)# interface Fa0/0

R1(config-if)# ipv6 address 13:13::1/64

R1(config-if)# ipv6 ospf 1 area 13 stub no summary

R1(config)# ipv6 router ospf 1

R1(config-router)# router-id 0.0.0.1

Totally

Stubby

R3(config)# ipv6 unicast-routing

R3(config)# interface Fa0/0

R3(config-if)# ipv6 address 13:13::3/64

R3(config-if)# ipv6 ospf 1 area 13 stub

R3(config)# ipv6 router ospf 1

R3(config-router)# router-id 0.0.0.3

  • Area 13 can be configured to be a totally stubby area since the area has only one ABR which it can use to get anywhere outside of the area.

  • R3 now only has a default route (::/0), but it can still ping R4 successfully


Totally physical network segment, using two different IPv6 prefixes.

Stubby

R3# show ipv6 route ospf

OI ::/0 [110/2]

via FE80::219:56FF:FE2C:9F60, FastEthernet0/0

R3# ping 24:24::4

!!!!!

R3#

  • R3 now only has a default route (::/0), but it can still ping R4 successfully.


Eigrp for ipv6
EIGRP for IPv6 physical network segment, using two different IPv6 prefixes.

For Winnebago Networks


Eigrp vs eigrp for ipv6
EIGRP vs EIGRP for IPv6 physical network segment, using two different IPv6 prefixes.

IPv4 IPv6

IPv4 IPv6

88 88

N/A N/A

yes yes

yes yes

yes yes

yes N/A

yes yes

yes yes

224.0.0.10 FF02::10

EIGRP-specific IPv6 AH/ESP

Advertises routes for…

Layer 3 protocol for EIGRP messages

Layer 3 header protocol type

UDP Port

Uses Successor, Feasible Successor

Uses Dual

Supports VLSM

Can perform automatic summarization

Uses triggered updates

Default metric bandwidth and delay

Multicast Update destination

Authentication


Eigrp for ipv61
EIGRP for IPv6 physical network segment, using two different IPv6 prefixes.

  • EIGRP RID decision steps based on IPv4 configuration:

  • Use the configured value (using the eigrp router-ida.b.c.d EIGRP subcommand under the ipv6 router eigrp command)

  • Use the highest IPv4 address on an up/up loopback interface

  • Use the highest IPv4 address on an up/up non-loopback interface

  • IOS lets you stop and start the EIGRP process with the shutdown and no shutdown router mode subcommands.

  • After initial configuration, the EIGRP for IPv6 process starts in shutdown mode,

    • To start the EIGRP process it is required to issue the no shutdown


  • EIGRP for IPv6 configuration physical network segment, using two different IPv6 prefixes.

  • All interfaces have IPv6 addresses, including the three loopback interfaces on R3.


R1(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R1(config)# interface Serial0/0/0.2 point-to-point

R1(config-if)# ipv6 address 12::1/64

R1(config-if)# ipv6 eigrp 100

R1(config)# interface Serial0/0/0.3 point-to-point

R1(config-if)# ipv6 address 13::1/64

R1(config-if)# ipv6 eigrp 100

R1(config)# ipv6 router eigrp 100

R1(config-router)# router-id 1.1.1.1

R1(config-router)# no shutdown

R3(config)# ipv6 unicast-routing

R3(config)# interface Serial0/0/0.1 point-to-point

R3(config-if)# ipv6 address 13::3/64

R3(config-if)# ipv6 eigrp 100

R3(config)# interface loopback 301

R3(config-if)# ipv6 address 3:1::3/64

R3(config-if)# ipv6 eigrp 100

R3(config)# interface loopback 302

R3(config-if)# ipv6 address 3:2::3/64

R3(config-if)# ipv6 eigrp 100

R3(config)# interface loopback 303

R3(config-if)# ipv6 address 3:3::3/64

R3(config-if)# ipv6 eigrp 100

R3(config)# ipv6 router eigrp 100

R3(config-router)# router-id 3.3.3.3

R3(config-router)# no shutdown


R1# show ipv6 route eigrp physical network segment, using two different IPv6 prefixes.

D 3:1::/64 [90/2297856]

via FE80::3, Serial 0/0/0.3

D 3:2::/64 [90/2297856]

via FE80::3, Serial 0/0/0.3

D 3:3::/64 [90/2297856]

via FE80::3, Serial 0/0/0.3


R2(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R2(config)# interface Serial0/0/0.1 point-to-point

R2(config-if)# ipv6 address 12::2/64

R2(config-if)# ipv6 eigrp 100

R2(config)# interface Serial0/0/0.4 point-to-point

R2(config-if)# ipv6 address 24::2/64

R2(config-if)# ipv6 eigrp 100

R2(config)# ipv6 router eigrp 100

R2(config-router)# router-id 2.2.2.2

R2(config-router)# no shutdown

R4(config)# ipv6 unicast-routing

R4(config)# interface Serial0/0/0.2 point-to-point

R4(config-if)# ipv6 address 24::4/64

R4(config-if)# ipv6 eigrp 100

R4(config)# ipv6 router eigrp 100

R4(config-router)# router-id 3.3.3.3

R4(config-router)# no shutdown


R4# show ipv6 route eigrp physical network segment, using two different IPv6 prefixes.

D 3:1::/64 [90/3321856]

via FE80::2, Serial 0/0/0.2

D 3:2::/64 [90/3321856]

via FE80::2, Serial 0/0/0.2

D 3:3::/64 [90/3321856]

via FE80::2, Serial 0/0/0.2

D 12::/64 [90/2681856]

via FE80::2, Serial 0/0/0.2

D 13::/64 [90/2681856]

via FE80::2, Serial 0/0/0.2

R4# ping 3:1::3

!!!!!


R4# show ipv6 eigrp neighbors physical network segment, using two different IPv6 prefixes.

IPv6-EIGRP neighbors for process 1

H Address Interface Hold Uptime SRTT RTO Q Seq

(sec) (ms) Cnt Num

0 Link-local address: Se0/0/0.2 14 01:50:51 3 200 0 82

FE80::2


R4(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R4(config)# interface Serial0/0/0.2 point-to-point

R4(config-if)# ipv6 address 24::4/64

R4(config-if)# ipv6 eigrp 100

R4(config)# ipv6 router eigrp 100

R4(config-router)# router-id 3.3.3.3

R4(config-router)# eirgp stub

R4(config-router)# no shutdown

No EIGRP Queries sent to R4

EIGRP Update

X

EIGRP Reply

Stub

  • Remember an EIGRP stub router indicates in its hello packet to all neighboring routers its status as a stub router.

  • The neighboring routers do not query the stub router for any routes.

  • Since R4 is a stub router, it should be configured as such, to stop unnecessary queries going to it.

  • If the link goes down between R3 and R1, there are no queries sent to R4

    • Only an update and a reply message are received, telling R4 about the deleted route.


R3(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R3(config)# interface Serial0/0/0.1 point-to-point

R3(config-if)# ipv6 address 13::3/64

R3(config-if)# ipv6 eigrp 100

R3(config-if)# ipv6 summary-address eigrp 100 3::/16

R3(config)# interface loopback 301

R3(config-if)# ipv6 address 3:1::3/64

R3(config-if)# ipv6 eigrp 100

R3(config)# interface loopback 302

R3(config-if)# ipv6 address 3:2::3/64

R3(config-if)# ipv6 eigrp 100

R3(config)# interface loopback 303

R3(config-if)# ipv6 address 3:3::3/64

R3(config-if)# ipv6 eigrp 100

R3(config)# ipv6 router eigrp 100

R3(config-router)# router-id 3.3.3.3

R3(config-router)# no shutdown

EIGRP Summary

  • Another feature supported by EIGRP for IPv6 is route summarization.

  • Unlike EIGRP for IPv4, this protocol does not automatically summarize


R3(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R3(config)# interface Serial0/0/0.1 point-to-point

R3(config-if)# ipv6 address 13::3/64

R3(config-if)# ipv6 eigrp 100

R3(config-if)# ipv6 summary-address eigrp 100 3::/16

R3(config)# interface loopback 301

R3(config-if)# ipv6 address 3:1::3/64

R3(config-if)# ipv6 eigrp 100

R3(config)# interface loopback 302

R3(config-if)# ipv6 address 3:2::3/64

R3(config-if)# ipv6 eigrp 100

R3(config)# interface loopback 303

R3(config-if)# ipv6 address 3:3::3/64

R3(config-if)# ipv6 eigrp 100

R3(config)# ipv6 router eigrp 100

R3(config-router)# router-id 3.3.3.3

R3(config-router)# no shutdown

EIGRP Summary

R4# show ipv6 route eigrp

D 3::/16 [90/3321856]

via FE80::2, Serial 0/0/0.2

D 12::/64 [90/2681856]

via FE80::2, Serial 0/0/0.2

D 13::/64 [90/2681856]

via FE80::2, Serial 0/0/0.2

R4# ping 3:1::3

!!!!!


MBGP physical network segment, using two different IPv6 prefixes.


IPv4 Header physical network segment, using two different IPv6 prefixes.

TCP Header

BGP: IPv4 Prefixes

IPv4 Header

TCP Header

BGP: IPv6 Prefixes

IPv6 Header

TCP Header

BGP: IPv6 Prefixes

Multiprotocol BGP

  • IPv6-specific extensions incorporated into MBGP include the following:

    • The NEXT_HOP and Network Layer Reachability Information (NLRI) attributes are expressed as IPv6 addresses and prefixes.

  • Operates by identifying two separate protocols:

    • Carrier protocol

    • Passenger protocol


IPv4 Header physical network segment, using two different IPv6 prefixes.

TCP Header

BGP: IPv4 Prefixes

  • In an all-IPv4 environment, BGP establishes sessions using IPv4

    • IPv4 is the carrier protocol

  • The routes that BGP advertises are also IPv4

    • IPv4 is also the passenger protocol


IPv4 Header physical network segment, using two different IPv6 prefixes.

TCP Header

BGP: IPv6 Prefixes

  • Protocols other than IPv4 also need to advertise reachability information:

    • MPLS VPN

    • Multicast

    • IPv6 prefixes for BGP

  • MBGP extensions allow these and other protocols to be carried using BGP.

  • An analogy is that BGP is a truck that can transport multiple payloads.

    • BGP “truck” (IPv4) could be used to transport “payloads” (IPv6 prefixes)

    • The carrier protocol is IPv4

    • The passenger protocol is IPv6 prefixes being advertised


IPv6 Header physical network segment, using two different IPv6 prefixes.

TCP Header

BGP: IPv6 Prefixes

  • In an all IPv6 environment, BGP can be used as both the:

    • Carrier protocol

    • Passenger protocol

    • Both the truck and the payload are IPv6

  • In this case IPv6 is used to:

    • Establish BGP sessions

    • BGP advertises IPv6 prefixes


IPv6 Header physical network segment, using two different IPv6 prefixes.

TCP Header

BGP: IPv6 Prefixes

  • The first section:

    • router bgp configuration defines a 32-bit router ID (which must be configured in an IPv6-only network)

    • The peering session is established using IPv6, so IPv6 is the carrier protocol.

  • The second section:

    • address-family ipv6 command defines the passenger protocol, the protocol that is to be advertised using MBGP.

    • The passenger protocol is IPv6.


Ipv6 policy base routing pbr
IPv6 Policy Base Routing (PBR) physical network segment, using two different IPv6 prefixes.

  • Policy-based routing (PBR) allows the network administrator to define a routing policy other than destination-based routing using the routing table.

    • Sometimes called traffic engineering

    • Provide a higher degree of control over routing

    • Available for both IPv4 and IPv6

  • Like IPv4, IPv6 PBR is based on:

    • match commands for identifying the traffic to be policy-based routed

    • set commands for defining how that traffic will be routed


R1(config)# physical network segment, using two different IPv6 prefixes. interface fa 0/0

R1(config-if)# ipv6 policy route-map PBR_SOURCE_ADDRESS

R1(config)# route-map PBR_SOURCE_ADDRESS permit 10

R1(config-route-map)# match ipv6 address SOURCE_104

R1(config-route-map)# set ipv6 next-hop 123::3

R1(config)# ipv6 access-list SOURCE_104

R1(config-ipv6-acl)# permit ipv6 104::/64 any

  • Recall that PBR is configured on the interface that receives the traffic that should be routed differently than the default path.

  • R1: The traffic is received on the FastEthernet 0/0 interface

  • If the packets are from R4’s loopback interface, they will be routed via R3

    • Otherwise they will be routed normally, through R2.

  • Notice the ipv6 commands which are similar to ipv4:

    • match ipv6 address

    • ipv6 access-list

    • permit ipv6

  • Can verify with ping and debug ipv6 policy commands


Ipv6 redistribution

IPv6 Redistribution physical network segment, using two different IPv6 prefixes.


Ipv6 redistribution1
IPv6 Redistribution physical network segment, using two different IPv6 prefixes.

  • Similar to IPv4, IPv6 routing information can be redistributed between routing protocols, and between instances of routing protocols.

  • The examples used in this section are a bit complex, maybe more than they need to be, but…

  • This also is a good review of IPv4 redistribution.

  • It’s exactly the same only different.


Ripng redistribution
RIPng Redistribution physical network segment, using two different IPv6 prefixes.

  • Routers R1, R2, and R3 will all be configured for RIP but in two different RIP processes:

    • R1R2

    • R1R3

  • The networks on the R2 and R3 loopback and lower serial interfaces will be redistributed into the RIP processes.


R1(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R1(config)# interface Serial0/0/0

R1(config-if)# ipv6 rip R1R3 enable

R1(config)# ipv6 router rip R1R3

R2(config)# ipv6 unicast-routing

R2(config)# interface Serial0/0/0.1

R2(config-if)# ipv6 rip R1R2 enable

R2(config)# ipv6 router rip R1R2

  • R1: We are only configuring the RIP process R1R3

  • R2: We have only configured the RIP process R1R2.


R1(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R1(config)# interface Serial0/0/0

R1(config-if)# ipv6 rip R1R3 enable

R1(config)# ipv6 router rip R1R3

2

1

R2(config)# ipv6 unicast-routing

R2(config)# interface Serial0/0/0.1

R2(config-if)# ipv6 rip R1R2 enable

R2(config)# ipv6 router rip R1R2

R2# debug ipv6 rip

1

  • Since the processes are different, we may expect that R2 would only send, and not receive, updates from R1.

  • The debug output shows both sending and receiving happening

  • Notice that both processes by default use the FF02::9 multicast group address (for all RIPng routers) and use port 521.

2


R1(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R1(config)# interface Serial0/0/0

R1(config-if)# ipv6 rip R1R3 enable

R1(config)# ipv6 router rip R1R3

R2(config)# ipv6 unicast-routing

R2(config)# interface Serial0/0/0.1

R2(config-if)# ipv6 rip R1R2 enable

R2(config)# ipv6 router rip R1R2

R2(config-router)# redistribute connected

R2# debug ipv6 rip

  • R2, the redistribute connected command is configured under the R1R2

  • R2 will advertise its connected routes (24::/64 and 102::/64) to R1.

  • The update is using the default FF02::9 multicast group address (for all RIPng routers) and port 521.

  • The connected routes are being redistributed with a default metric of 1.


R1(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R1(config)# interface Serial0/0/0

R1(config-if)# ipv6 rip R1R3 enable

R1(config)# ipv6 router rip R1R3

R2(config)# ipv6 unicast-routing

R2(config)# interface Serial0/0/0.1

R2(config-if)# ipv6 rip R1R2 enable

R2(config)# ipv6 router rip R1R2

R2(config-router)# redistribute connected

R1# show ipv6 route rip

R 24::/64 [120/2]

via FE80::2, Serial0/0/0

R 102::/64 [120/2]

via FE80::2, Serial0/0/0

  • R1’s routing table contains routes to R2’s loopback and serial interface networks


R1(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R1(config)# interface Serial0/0/0

R1(config-if)# ipv6 rip R1R3 enable

R1(config)# ipv6 router rip R1R3

R3(config)# ipv6 unicast-routing

R3(config)# interface Serial1/1.7

R3(config-if)# ipv6 rip R1R3 enable

R2(config)# ipv6 router rip R1R3

R3# show ipv6 route rip

R 24::/64 [120/3]

via FE80::2, Serial1/1.7

R 102::/64 [120/3]

via FE80::2, Serial1/1.7

  • R3, enabling the R1R3 RIPng process.

  • Viewing R3’s routing table confirms that it is also learning R2’s redistributed routes, network 24::/64 and 102::/64.

  • All three of the RIPng routers are:

    • Advertising to the same multicast address using the same port number

    • Therefore learning from each other.


R1(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R1(config)# interface Serial0/0/0

R1(config-if)# ipv6 rip R1R3 enable

R1(config)# ipv6 router rip R1R3

R1(config-router)# port 1013 multicast-group FF02::9

Port 521

Dest FF02::9

Port 1013

Dest FF02::9

R3(config)# ipv6 unicast-routing

R3(config)# interface Serial1/1.7

R3(config-if)# ipv6 rip R1R3 enable

R2(config)# ipv6 router rip R1R3

R1(config-router)# port 1013 multicast-group FF02::9

R3# clear ipv6 route *

R3# show ipv6 route rip

R3#

  • To segregate the RIPng domains, the port number and or the multicast group address parameters must be changed.

  • Changing the port number to 1013 on R3 and R1 (for the R1R3 process).

  • The multicast group address was left as the default FF02::9.

  • The routing tables on both routers are checked

    • there are no longer any RIP routes on either router.

    • R1 and R3 are no longer listening to the updates from R2, because they are using different ports.


R1(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R1(config)# interface Serial0/0/0

R1(config-if)# ipv6 rip R1R3 enable

R1(config-if)# ipv6 rip R1R2 enable

R1(config)# ipv6 router rip R1R3

R1(config-router)# port 1013 multicast-group FF02::9

R1(config-router)# redistribute R1R2

R1(config)# ipv6 router rip R1R2

R1(config-router)# redistribute R1R3

Port 521

Dest FF02::9

Port 1013

Dest FF02::9

R3# show ipv6 route rip

R 24::/64 [120/3]

via FE80::1, Serial1/1.7

R 102::/64 [120/3]

via FE80::1, Serial1/1.7

  • To allow R1 and R3 to see R2’s connected routes again:

    • R1 is first configured to be part of the R1R2 process

      • R1 again sees the routes sent (redistribute connected) from R2

    • R1 remains in the R1R3 process too

    • R1 configured to redistribute the R1R2 routes into the R1R3 process.

    • R1 configured to redistribute the R1R3 routes into the R1R2 process

  • R3’s routing table shows the R1R2 redistributed networks 24::/64 and 102::/64

    • Notice that the directly connected network 123::2/64 was not redistributed.


R1(config)# physical network segment, using two different IPv6 prefixes. ipv6 unicast-routing

R1(config)# interface Serial0/0/0

R1(config-if)# ipv6 rip R1R3 enable

R1(config-if)# ipv6 rip R1R2 enable

R1(config)# ipv6 router rip R1R3

R1(config-router)# port 1013 multicast-group FF02::9

R1(config-router)# redistribute R1R2

R1(config)# ipv6 router rip R1R2

R1(config-router)# redistribute R1R3

Port 521

Dest FF02::9

Port 1013

Dest FF02::9

R3# show ipv6 route rip

R 24::/64 [120/3]

via FE80::1, Serial1/1.7

R 102::/64 [120/3]

via FE80::1, Serial1/1.7

  • In IPv4, if you redistribute a protocol, by default you also redistribute the subnet on the interfaces over which the protocol is running.

  • In IPv6 this is not the default behavior.

  • To redistribute the subnet on the interfaces over which the protocol is running in IPv6, use:

    • include-connectedkeyword

    • redistribute-connected router command


<some configuration omitted> physical network segment, using two different IPv6 prefixes.

R3(config)# ipv6 router rip R1R3

R3(config-router)# port 1013 multicast-group FF02::9

R3(config-router)# redistribute R1R2

R3(config-router)# redistribute connected route-map CONN_PREFIX

R3(config)# route-map CONN_PREFIX permit 10

R3(config-r-map)# match ipv6 address PREFIX_34

R3(config-r-map)# set metric 15

R3(config)# route-map CONN_PREFIX permit 20

R3(config-r-map)# match ipv6 address prefix-list PREFIX_103

R3(config-r-map)# set metric 5

R3(config)# ipv6 access-list PREFIX_34

R3(config-ipv6-acl)# permit ipv6 34::/64 any

R3(config)# ipv6 prefix-list PREFIX_103 permit 103::/64

If there is a match the metric is set to 15 (hops)

If there is a match the metric is set to 5 (hops)

  • The metrics of redistributed routes can be changed with route maps.

    • R3 is configured to redistribute its connected routes

    • Loopback is advertised with a metric of 5 hops

    • Serial network is advertised with a metric of 15 hops.

  • Thus, when these metrics get to R1, they will be 6 hops and 16 hops respectively.

5 hops

15 hops


R1# physical network segment, using two different IPv6 prefixes. show ipv6 route rip

R 24::/64 [120/2]

via FE80::2, Serial1/1.7

R 102::/64 [120/2]

via FE80::2, Serial1/1.7

R 103::/64 [120/6]

via FE80::1, Serial1/1.7

  • R1 has learned about network 103::/64 with a metric of 6.

  • However R1 has no knowledge of network 34::/64 because it had reached a metric of 16(unreachable)

  • This example shows the importance of the seed metric value chosen when redistributing.


Redistribution ripng and ospfv3
Redistribution: RIPng and OSPFv3 physical network segment, using two different IPv6 prefixes.

L104:104::1/64

  • Disclaimer: This example is probably more complex than it needs to be but it is a good review of redistribution and route filtering.

  • Extending our previous example, we will be redistributing:

    • Connected interfaces into OSPFv3

    • Redistributing between different OSPFv3 processes

    • Redistributing between OSPFv3 and RIPng

  • Issues examined include:

    • Metrics used in distribution

    • Suboptimal routing

    • Routing loops encountered and resolved


L104:104::1/64 physical network segment, using two different IPv6 prefixes.

  • Confirm that the mutual redistribution is configured and working between the two RIP processes

  • show ipv6 protocols

  • show ipv6 rip


R3(config)# physical network segment, using two different IPv6 prefixes. ipv6 router ospf 2

R3(config-router)# redistribute connected metric-type 1 tag 3333 route-map LOOPBACKS

R3(config)# route-map LOOPBACKS permit 10

R3(config-r-map)# match ipv6 address L103

R3(config)# ipv6 access-list L103

R3(config-ipv6-acl)# permit ipv6 103::/64 any

Tag 3333

Metric type 1

R4# show ipv6 route ospf

OI 102::1/128 [110/64]

via FE80::2, Serial 0/0/0.2

OE1 103::/64 [110/84], tag 3333

via FE80::3, Serial0/0/0.3

L104:104::1/64

  • First we redistribute R3’s connected loopback interface into OSPFv3 on R3

  • Redistributes the connected routes with:

    • metric type 1

    • tag of 3333

    • route map called LOOPBACKS.

  • Metric type 1 (OE1) routes add the external cost to the internal cost of each link

  • Metric type 2 (OE2) routes (default) the cost of these routes is always the external cost only.

  • Route map LOOPBACKS matches routes permitted by the ACL L103, only the loopback interface network to be redistributed into OSPFv3.


R4(config)# physical network segment, using two different IPv6 prefixes. ipv6 router ospf 1

R4(config-router)# redistribute ospf 2

R4(config-router)# redistribute connected

R4(config)# ipv6 router ospf 2

R4(config-router)# redistribute ospf 1

R4(config-router)# redistribute connected

Tag 3333

Metric type 1

L104:104::1/64

  • R2 and R3 do not see any OSPFv3 networks yet (everything is directly connected)

  • R4 must be configured to redistribute between its two OSPFv3 processes

  • Connected routes are also redistributed into both processes.


R4(config)# physical network segment, using two different IPv6 prefixes. ipv6 router ospf 1

R4(config-router)# redistribute connected

R4(config-router)# redistribute ospf 2

R4(config)# ipv6 router ospf 2

R4(config-router)# redistribute connected

R4(config-router)# redistribute ospf 1

Tag 3333

Type 1

R2# show ipv6 route ospf

OE2 34::/64 [110/20]

via FE80::4, Serial 0/0/0.4

OE2 103::/64 [110/84], tag 3333

via FE80::4, Serial 0/0/0.4

OE2 104::/64 [110/20]

via FE80::4, Serial 0/0/0.4

L104:104::1/64

  • All routes appear on both routers.

  • R2 and R3 see all other routes as type 2.

  • Since type 2 routes do not include the internal network cost, suboptimal routing could result.

R3# show ipv6 route ospf

OE2 24::/64 [110/20]

via FE80::4, Serial 0/0/0.4

OE2 102::1/128 [110/64]

via FE80::4, Serial 0/0/0.4

OE2 104::/64 [110/20]

via FE80::4, Serial 0/0/0.4


R2(config)# physical network segment, using two different IPv6 prefixes. ipv6 router rip R1R2

R2(config-router)# redistribute connected

R2(config-router)# redistribute ospf 1 metric 1

R2(config)# ipv6 router ospf 1

R2(config-router)# redistribute connected

R2(config-router)# redistribute rip R1R2

R3(config)# ipv6 router rip R1R3

R3(config-router)# redistribute connected

R3(config-router)# redistribute ospf 2 metric 1

R3(config)# ipv6 router ospf 2

R3(config-router)# redistribute connected

R3(config-router)# redistribute rip R1R3

L104:104::1/64

  • Now configure mutual redistribution between RIPng and OSPFv3, starting on R2

    • OSPFv3 and connected routes are redistributed into RIPng

    • RIPng and connected routes are redistributed into OSPFv3

  • Routes redistributed into RIP must have a metric configured otherwise they are considered “unreachable”

  • Routes redistributed into OSPF have a default metric of 20


R2(config)# physical network segment, using two different IPv6 prefixes. ipv6 router rip R1R2

R2(config-router)# redistribute connected

R2(config-router)# redistribute ospf 1 metric 1

R2(config)# ipv6 router ospf 1

R2(config-router)# redistribute connected

R2(config-router)# redistribute rip R1R2

R3(config)# ipv6 router ospf 2

R3(config-router)# redistribute connected

R3(config-router)# redistribute rip R1R3

R3(config)# ipv6 router rip R1R3

R3(config-router)# redistribute connected

R3(config-router)# redistribute ospf 2 metric 1

L104:104::1/64

R1# show ipv6 route rip

R 24::/64 [120/2]

via FE80::2, Serial0/0/0

R 34::/64 [120/2]

via FE80::3, Serial0/0/0

R 102::/64 [120/2]

via FE80::2, Serial0/0/0

R 102::1/128 [120/2]

via FE80::3, Serial0/0/0

R 103::/64 [120/2]

via FE80::3, Serial0/0/0

R 104::/64 [120/2]

via FE80::2, Serial0/0/0

  • R1 sees all networks but let’s make sure it is optimal routing.


L104:104::1/64 physical network segment, using two different IPv6 prefixes.

  • R4 trace - The path goes through R2 (24::2) and then to R1, which is the optimal path.

  • Also shown in R3’s routing table

  • Command and regular expression section 10[14]::64 means that only networks 101 or 104 are displayed).

  • R3 is learning about both 101 and 104 via R4 with OSPFv3 (AD = 110)

  • However it would be better to get to 101 via R1 with RIPng (AD = 120)

  • This is suboptimal routing.

  • A trace from R3 to the 101 loopback confirms that it goes via R4, to R2, and then to R1.

R3# show ipv6 route | 10[14]::/64

OE2 101::/64 [110/20]

via FE80::4, Serial 0/0/0.4

OE2 104::/64 [110/20]

via FE80::4, Serial 0/0/0.4


AD 120 physical network segment, using two different IPv6 prefixes.

AD 110

L104:104::1/64

  • R3 is learning about 101 from both:

    • R1 via RIPng (AD = 120)

    • R4 via OSPFv3 (AD = 110)

  • The OSPFv3 route preferred because of the lower administrative distance

  • This can be easily fixed but there are other problems when multiple routers doing redistribution such as routing loops (feedback loops).

R3# show ipv6 route | 10[14]::/64

OE2 101::/64 [110/20]

via FE80::4, Serial 0/0/0.4

OE2 104::/64 [110/20]

via FE80::4, Serial 0/0/0.4


X physical network segment, using two different IPv6 prefixes.

X

X

X

L104:104::1/64

Solution

  • Redistribute OSPFv3 routes into RIPng, but prevent those same routes from going back into OSPFv3

  • Redistribute RIPng routes into OSPFv3, but prevent those same routes from going back into RIPng.

  • Route filtering can be configured to implement this solution.


R2(config)# physical network segment, using two different IPv6 prefixes. ipv6 router rip R1R2

R2(config-router)# redistribute ospf 1 metric 1 route-map OSPF_TO_RIP

R2(config)# route-map OSPF_TO_RIP deny 10

R2(config-r-map)# match ipv6 address prefix-list RIP_NATIVE

R2(config)# route-map OSPF_TO_RIP permit 20

R2(config)# ipv6 prefix-list RIP_NATIVE seq 5 permit 101::/64

R3(config)# ipv6 router rip R1R3

R3(config-router)# redistribute connected

R3(config-router)# redistribute ospf 2 metric 1 route-map OSPF_TO_RIP

R3(config)# route-map OSPF_TO_RIP deny 10

R3(config-r-map)# match ipv6 address prefix-list RIP_NATIVE

R3(config)# route-map OSPF_TO_RIP permit 20

R3(config)# ipv6 prefix-list RIP_NATIVE seq 5 permit 101::/64

R1(config)# ipv6 router rip R1R3

R1(config-router)# redistribute rip R1R2 route-map RIP_NOT_OSPF

R1(config)# ipv6 router rip R1R2

R1(config-router)# redistribute rip R1R3 route-map RIP_NOT_OSPF

R1(config)# route-map RIP_NOT_OSPFpermit 10

R1(config-r-map)# match ipv6 address prefix-list RIP_NATIVE

R1(config)# route-map RIP_NOT_OSPFdeny 20

R1(config)# ipv6 prefix-list RIP_NATIVE seq 5 permit 101::/64


R2(config)# physical network segment, using two different IPv6 prefixes. ipv6 router rip R1R2

R2(config-router)# redistribute ospf 1 metric 1 route-map OSPF_TO_RIP

R2(config)# route-map OSPF_TO_RIP deny 10

R2(config-r-map)# match ipv6 address prefix-list RIP_NATIVE

R2(config)# route-map OSPF_TO_RIP permit 20

R2(config)# ipv6 prefix-list RIP_NATIVE seq 5 permit 101::/64

X

L104:104::1/64

  • RIPng process – redistribution is modified to refer to a route map OSPF_TO_RIP

  • OSPF_TO_RIP route map:

    • Denies routes matched by the RIP_NATIVE ACL from being redistributed

      • RIP_NATIVE ACL identifies the R1 loopback network 101

    • Permits all other routes to be redistributed.

  • Network 101 will be denied from being redistributed into RIPng, because it was originally a RIPng learned route.

  • All other routes will be redistributed.


R2(config)# physical network segment, using two different IPv6 prefixes. ipv6 router rip R1R2

R2(config-router)# redistribute ospf 1 metric 1 route-map OSPF_TO_RIP

R2(config)# route-map OSPF_TO_RIP deny 10

R2(config-r-map)# match ipv6 address prefix-list RIP_NATIVE

R2(config)# route-map OSPF_TO_RIP permit 20

R2(config)# ipv6 prefix-list RIP_NATIVE seq 5 permit 101::/64

X

L104:104::1/64

R3(config)# ipv6 router rip R1R3

R3(config-router)# redistribute connected

R3(config-router)# redistribute ospf 2 metric 1 route-map OSPF_TO_RIP

R3(config)# route-map OSPF_TO_RIP deny 10

R3(config-r-map)# match ipv6 address prefix-list RIP_NATIVE

R3(config)# route-map OSPF_TO_RIP permit 20

R3(config)# ipv6 prefix-list RIP_NATIVE seq 5 permit 101::/64

  • Exactly the same for R3

  • RIPng process – redistribution is modified to refer to a route map OSPF_TO_RIP

  • OSPF_TO_RIP route map:

    • Denies routes matched by the RIP_NATIVE ACL from being redistributed

      • RIP_NATIVE ACL identifies the R1 loopback network 101

    • Permits all other routes to be redistributed.

  • Network 101 will be denied from being redistributed into RIPng, because it was originally a RIPng learned route.

  • All other routes will be redistributed.


L104:104::1/64 physical network segment, using two different IPv6 prefixes.

  • R1 configuration filters routes going between the two RIP processes.

  • In each RIP process redistribution modified to refer to a route map RIP_NOT_OSPF

  • The route map permits only routes that match the prefix list RIP_NATIVE to be redistributed; only the 101 network matches.

  • Only the RIPng network 101 is redistributed between the two RIP processes

  • No other routes (ones from OSPFv3) will be redistributed into the other RIP process.

R1(config)# ipv6 router rip R1R3

R1(config-router)# redistribute rip R1R2 route-map RIP_NOT_OSPF

R1(config)# ipv6 router rip R1R2

R1(config-router)# redistribute rip R1R3 route-map RIP_NOT_OSPF

R1(config)# route-map RIP_NOT_OSPFpermit 10

R1(config-r-map)# match ipv6 address prefix-list RIP_NATIVE

R1(config)# route-map RIP_NOT_OSPFdeny 20

R1(config)# ipv6 prefix-list RIP_NATIVE seq 5 permit 101::/64


R2(config)# physical network segment, using two different IPv6 prefixes. ipv6 router rip R1R2

R2(config-router)# redistribute ospf 1 metric 1 route-map OSPF_TO_RIP

R2(config)# route-map OSPF_TO_RIP deny 10

R2(config-r-map)# match ipv6 address prefix-list RIP_NATIVE

R2(config)# route-map OSPF_TO_RIP permit 20

R2(config)# ipv6 prefix-list RIP_NATIVE seq 5 permit 101::/64

Routing Loops fixed but

Need to address suboptimal routing

R3(config)# ipv6 router rip R1R3

R3(config-router)# redistribute connected

R3(config-router)# redistribute ospf 2 metric 1 route-map OSPF_TO_RIP

R3(config)# route-map OSPF_TO_RIP deny 10

R3(config-r-map)# match ipv6 address prefix-list RIP_NATIVE

R3(config)# route-map OSPF_TO_RIP permit 20

R3(config)# ipv6 prefix-list RIP_NATIVE seq 5 permit 101::/64

R1(config)# ipv6 router rip R1R3

R1(config-router)# redistribute rip R1R2 route-map RIP_NOT_OSPF

R1(config)# ipv6 router rip R1R2

R1(config-router)# redistribute rip R1R3 route-map RIP_NOT_OSPF

R1(config)# route-map RIP_NOT_OSPFpermit 10

R1(config-r-map)# match ipv6 address prefix-list RIP_NATIVE

R1(config)# route-map RIP_NOT_OSPFdeny 20

R1(config)# ipv6 prefix-list RIP_NATIVE seq 5 permit 101::/64


AD 120 physical network segment, using two different IPv6 prefixes.

AD 110

L104:104::1/64

Suboptimal Routing

  • R3 is learning about 101 from both:

    • R1 via RIPng (AD = 120)

    • R4 via OSPFv3 (AD = 110)

  • The OSPFv3 route preferred because of the lower administrative distance

R3# show ipv6 route | 10[14]::/64

OE2 101::/64 [110/20]

via FE80::4, Serial 0/0/0.4

OE2 104::/64 [110/20]

via FE80::4, Serial 0/0/0.4


R2(config)# physical network segment, using two different IPv6 prefixes. ipv6 router rip R1R2

R2(config-router)# distance 109

R2# show ipv6 route | 10[14]::/64

R 101::/64 [109/2]

via FE80::4, Serial 0/0/0.123

OE2 104::/64 [110/20]

via FE80::4, Serial 0/0/0.4

AD 120

AD 109

AD 110

R3(config)# ipv6 router rip R1R3

R3(config-router)# distance 109

R3# show ipv6 route | 10[14]::/64

R 101::/64 [109/2]

via FE80::4, Serial 0/0/0.123

OE2 104::/64 [110/20]

via FE80::4, Serial 0/0/0.4

L104:104::1/64

  • Solution: Give RIPng preference, with a lower administrative distance, for those networks that should be learned via RIPng

    • Use the distance command under the RIPng process.

  • R3 and R2: RIP administrative distance is set to 109 (lower than the OSPFv3 AD 110.

  • R2 and R3: Routing tables confirm that R2 and R3 now reach the 101 network via RIPng.

  • Pings and traceroutes network has full end-to-end connectivity.


  • To summarize the issues and solutions observed in this example:

    • OSPFv3 does not redistribute connected networks by default

    • The metric and metric type may be reset when redistributing:

      • Solution: Explicitly configure the seed metric and metric type.

    • Redistribution may cause suboptimal routing and routing loops:

      • Solutions: Change AD and apply route filtering (route maps).



Cis 185 ccnp route ch 8 implementing ipv6 part 21

CIS 185 CCNP ROUTE example:Ch. 8 Implementing IPv6 – Part 2

Rick Graziani

Cabrillo College

[email protected]

Last Updated: Fall 2010


ad