8/8/2019 Belgrade Kalogeras Intra Routing
1/39
IGP: Open Shortest Path First v3
Dr. Dimitrios
Kalogeras
GRNET
8/8/2019 Belgrade Kalogeras Intra Routing
2/39
IGP IS/IS
Distance Vector IGPs
RIP
RIP2
IGRP EIGRP
Link State IGPs
OSPF
IS/IS
8/8/2019 Belgrade Kalogeras Intra Routing
3/39
OSPFv2
April 1998 was the most recent revision (RFC2328)
OSPF uses a 2-level hierarchical model SPF calculation is performed independently for
each area
Typically faster convergence than DVRPs
Relatively low, steady state bandwidthrequirements
8/8/2019 Belgrade Kalogeras Intra Routing
4/39
OSPFv3 overview
OSPF for IPv6
Based on OSPFv2, with enhancements Distributes IPv6 prefixes
Runs directly over IPv6
Ships-in-the-night with OSPFv2
8/8/2019 Belgrade Kalogeras Intra Routing
5/39
OSPFv3 / OSPFv2 Similarities
Basic packet types Hello, DBD, LSR, LSU, LSA
Mechanisms for neighbor discovery andadjacency formation
Interface types P2P, P2MP, Broadcast, NBMA, Virtual
LSA flooding and aging Nearly identical LSA types
8/8/2019 Belgrade Kalogeras Intra Routing
6/39
OSPFv3 / OSPFv2 Differences
OSPFv3 runs over a link, rather than a subnet
Multiple instances per link
OSPFv2 topology not IPv6-specific Router ID
Link ID
Standard authentication mechanisms
Uses link-local addresses
Generalized flooding scope
Two new LSA types
8/8/2019 Belgrade Kalogeras Intra Routing
7/39
LSA Type Review
LSA
Function Code
LSA
Function CodeLSA typeLSA type
Router-LSARouter-LSA
Network-LSANetwork-LSA
Inter-Area-Prefix-LSAInter-Area-Prefix-LSA
Inter-Area-Router-LSAInter-Area-Router-LSA
AS-External-LSAAS-External-LSA
Group-membership-LSAGroup-membership-LSA
Type-7-LSAType-7-LSA
Link-LSALink-LSA
Intra-Area-Prefix-LSAIntra-Area-Prefix-LSA
11
22
44
33
55
66
77
88
99
0x20010x2001
0x20020x2002
0x20030x2003
0x20040x2004
0x40050x4005
0x20060x2006
0x00080x0008
0x20090x2009
0x20070x2007
8/8/2019 Belgrade Kalogeras Intra Routing
8/39
Link LSA
A link LSAper link
Link local scope flooding on the link with which
they are associated
Provide router link local address
List all IPv6 prefixes attached to the link
Assert a collection of option bit for the Router-LSA
8/8/2019 Belgrade Kalogeras Intra Routing
9/39
Inter-Area Prefix LSA
Describes the destination outside the area but still in the AS
Summary is created for one area, which is flooded out in all
other areas Originated by an ABR
Only intra-area routes are advertised into the backbone
Link State ID simply serves to distinguish inter-area-prefix-
LSAs originated by the same router Link-local addresses must never be advertised in inter-
area- prefix-LSAs
8/8/2019 Belgrade Kalogeras Intra Routing
10/39
Configuring OSPFv3 in Cisco IOS
Software
Similar to OSPFv2
Prefixing existing Interface and Exec mode
commands with ipv6
Interfaces configured directly Replaces network command
Native IPv6 router mode Not a sub-mode ofrouter ospf
8/8/2019 Belgrade Kalogeras Intra Routing
11/39
Configuration Modes in OSPFv3
Entering router mode
[no] ipv6 router ospf
Entering interface mode [no] ipv6 ospf area
Exec mode [no] show ipv6 ospf[] clear ipv6 ospf[]
8/8/2019 Belgrade Kalogeras Intra Routing
12/39
Cisco IOS OSPFv3 SpecificAttributes
Configuring area range [no] area range /
Showing new LSA show ipv6 ospf[] database link
show ipv6 ospf[] database prefix
8/8/2019 Belgrade Kalogeras Intra Routing
13/39
OSPFv3 Debug Commands
Adjacency is not appearing [no] debug ipv6 ospf adj
[no] debug ipv6 ospf hello
SPF is running constantly [no] debug ipv6 ospf spf
[no] debug ipv6 ospf flooding
[no] debug ipv6 ospf events
[no] debug ipv6 ospf lsa-generation
[no] debug ipv6 ospf database-timer
General purpose [no] debug ipv6 ospfpackets
[no] debug ipv6 ospf retransmission
[no] debug ipv6 ospf tree
8/8/2019 Belgrade Kalogeras Intra Routing
14/39
OSPFv3 configuration example
LAN1: 2001:1:1:1::/64
LAN2: 2001:2:2:2::/64
Eth0
Eth1
Router1
Router1#
interface Ethernet0
ipv6 address 2001:1:1:1::1/64
ipv6 ospf 1 area 0
interface Ethernet1
ipv6 address 2001:2:2:2::2/64
ipv6 ospf 1 area 1
ipv6 router ospf 1
router-id 1.1.1.1
area 1 range 2001:2:2::/48
Area 0
Area 1
Router2
8/8/2019 Belgrade Kalogeras Intra Routing
15/39
Cisco IOS OSPFv3 Display
Router 2# show ipv6 route ospf
IPv6 Routing Table - 9 entries
Codes: C - Connected, L - Local, S - Static, R - RIP, B - BGP
U - Per-user Static route
I1 - ISIS L1, I2 - ISIS L2, IA - ISIS interarea
O - OSPF intra, OI - OSPF inter, OE1 - OSPF ext 1, OE2 - OSPF ext 2
O 2001:1:1:2::1/128 [110/1]
via FE80::205:5FFF:FEAF:2C38, Ethernet0
OI 2001:2:2::/48 [110/2]
via FE80::205:5FFF:FEAF:2C38, Ethernet0
Area 0
Area 1
Router2
8/8/2019 Belgrade Kalogeras Intra Routing
16/39
Cisco IOS OSPFv3 DatabaseDisplay
Router2# show ipv6 ospf database
OSPF Router with ID (3.3.3.3) (Process ID 1)
Router Link States (Area 0)
Link ID ADV Router Age Seq# Checksum Link count
0 1.1.1.1 2009 0x8000000A 0x2DB1 1
0 3.3.3.3 501 0x80000007 0xF3E6 1
Net Link States (Area 0)
Link ID ADV Router Age Seq# Checksum
7 1.1.1.1 480 0x80000006 0x3BAD
Inter Area Prefix Link States (Area 0)
ADV Router Age Seq# Prefix
1.1.1.1 1761 0x80000005 2001:2:2:2::/64
1.1.1.1 982 0x80000005 2001:2:2:4::2/128
Link (Type-8) Link States (Area 0)
Link ID ADV Router Age Seq# Checksum Interface
11 3.3.3.3 245 0x80000006 0xF3DC Lo0
7 1.1.1.1 236 0x80000008 0x68F Fa2/0
7 3.3.3.3 501 0x80000008 0xE7BC Fa2/0
Intra Area Prefix Link States (Area 0)
Link ID ADV Router Age Seq# Checksum Ref lstype
0 1.1.1.1 480 0x80000008 0xD670 0x2001
107 1.1.1.1 236 0x80000008 0xC05F 0x2002
0 3.3.3.3 245 0x80000006 0x3FF7 0x2001
8/8/2019 Belgrade Kalogeras Intra Routing
17/39
Cisco IOS OSPFv3 Detailed LSADisplay
show ipv6 ospf 1 database inter-area prefix
LS age: 1714
LS Type: Inter Area Prefix Links
Link State ID: 0
Advertising Router: 1.1.1.1
LS Seq Number: 80000006
Checksum: 0x25A0
Length: 36
Metric: 1Prefix Address: 2001:2:2:2::
Prefix Length: 64, Options: None
show ipv6 ospf 1 database link
LS age: 283
Options: (IPv6 Router, Transit Router, E-Bit, No Type 7-to-5, DC)
LS Type: Link-LSA (Interface: Loopback0)
Link State ID: 11 (Interface ID)
Advertising Router: 3.3.3.3LS Seq Number: 80000007
Checksum: 0xF1DD
Length: 60
Router Priority: 1
Link Local Address: FE80::205:5FFF:FEAC:1808
Number of Prefixes: 2
Prefix Address: 2001:1:1:3::
Prefix Length: 64, Options: None
Prefix Address: 2001:1:1:3::
Prefix Length: 64, Options: None
8/8/2019 Belgrade Kalogeras Intra Routing
18/39
1
OSPFv3 on IPv6 Tunnels overIPv4
IPv6Network
IPv4Backbone
IPv4Backbone
IPv6
Tunnel
IPv6
Tunnel
IPv6 Tunnel
IPv6
Network
IPv6Network
interface Tunnel0
no ip address
ipv6 address 2001:0001::45A/64
ipv6 address FE80::10:7BC2:ACC9:10 link-local
ipv6 router ospf 1 area 0
tunnel source Ethernet1
tunnel destination 10.42.2.1
tunnel mode ipv6ip
!
ipv6 router ospf 1
interface Tunnel0no ip address
ipv6 address 2001:0001::45C/64
ipv6 address FE80::10:7BC2:B280:11 link-local
ipv6 router ospf 1 area 0
tunnel source Ethernet2
tunnel destination 10.42.1.1
tunnel mode ipv6ip
!
ipv6 router ospf 1
8/8/2019 Belgrade Kalogeras Intra Routing
19/39
References
RFC 2740 OSPF for IPv6
RFC 2328 OSPF version 2
8/8/2019 Belgrade Kalogeras Intra Routing
20/39
IGP: IS-IS
Not that different form
OSPF
8/8/2019 Belgrade Kalogeras Intra Routing
21/39
IGP IS/IS
OSI in the magic fantasy world everything iseither an End System (ES) or an IntermediateSystem (IS.)
ES=Hosts
IS=Routers
IS/IS: Aprotocol to let Intermediate Systems talk
to other Intermediate Systems. IE: Router toRouter. IE: Routing
ISO 10589 specifies OSI IS-IS routing protocol for CLNS traffic
8/8/2019 Belgrade Kalogeras Intra Routing
22/39
IGP IS/IS
IS/IS carries routing information for the OSI protocols.
Type/Length/Value discipline instead of byte code for
capabilities
It is also VERY easy to modify to carry otherprotocols,
like IPv4 and IPv6.
The language is different, but the concepts are the same
as in OSPF (Well, not really, but close enough.)
OSPF Areas=IS/IS Levels
OSPF Neighbors=IS/IS Adjacencies
DR = DIS
8/8/2019 Belgrade Kalogeras Intra Routing
23/39
IGP - IS/IS
Two Level hierarchical architecture: Levels Two(backbone) and Level One (stub.)
Level 2Level 1
Level 1
Level 1
Level 1
8/8/2019 Belgrade Kalogeras Intra Routing
24/39
IS-IS Standards
IETF IS-IS for IP Internets WG
http://www.ietf.org/html.charters/isis-charter.html
ISO 10589 specifies OSI IS-IS routing protocol for CLNS traffic
RFC 1195 added IP support, also known as Integrated IS-IS
(I/IS-IS)I/IS-IS runs on top of the Data Link Layer
Requires CLNP to be configured
Draft RFC defines how to add IPv6 address family support to IS-
IS
http://www.ietf.org/internet-drafts/draft-ietf-isis-ipv6-05.txt Draft RFC introduces Multi-Topology concept for IS-IS
http://www.ietf.org/internet-drafts/draft-ietf-isis-wg-multi-topology-
06.txt
8/8/2019 Belgrade Kalogeras Intra Routing
25/39
IS-IS for IPv6
2 Tag/Length/Values for IPv6 routing
IPv6 Reachability TLV (0xEC)
External bit
Equivalent to IP Internal/External Reachability TLVs
IPv6 Interface Address TLV (0xE8)
For Hello PDUs, must contain the Link-Local address
For LSP, must only contain the non-Link Local address
IPv6 NLPID (0x8E) is advertised by IPv6 enabled routers
8/8/2019 Belgrade Kalogeras Intra Routing
26/39
Single SPF rules
single SPF per level for OSI, IPv4 and IPv6
If IS-IS is used for both IPv4 and IPv6 in an area, both
protocols must support the same topology within this area.
All interfaces configured with IS-ISv6 MUST support IPv6
All interfaces configured with IS-IS for both protocols MUST
support both of them
Otherwise Multi-Topology IS-IS (separate SPF)
8/8/2019 Belgrade Kalogeras Intra Routing
27/39
IS-IS Single Topology
IPv4-IPv6 enable router
Area A
Area B
Area C
Area D
IPv4-only enable router
8/8/2019 Belgrade Kalogeras Intra Routing
28/39
Restrictions from Single SPF
Not really suitable for an existing IPv4 IS-IS network withscattered IPv6 support.
If IS-IS for both IPv4 and IPv6 then the IPv4 and IPv6topologies MUST match exactly. Cannot run IS-IS IPv6 on
some interfaces, IS-IS IPv4 on others.
Form adjacencies with similarly-configured routers.
E.g. Problem with An IS-IS IPv6-only router on adjacencywith an IS-IS IPv4/IPv6 router. (Exception is over L2-only
interface)
Cannot join two IPv6 areas via an IPv4-only area. L2adjacencies will form OK but IPv6 traffic will black-hole in theIPv4 area.
8/8/2019 Belgrade Kalogeras Intra Routing
29/39
IS-IS Multi Topology
IPv4-IPv6 enable router
Area A
Area B
Area C
Area D
IPv4-only enable router
The Multi-Topology software will create two
topologies inside Area
IPv4 and IPv6.
IPv4-only routers will be excluded from theIPv6 topology
8/8/2019 Belgrade Kalogeras Intra Routing
30/39
IGP IS/IS
Always use Wide Metrics.
Always set your metrics.
Always disable Level 1 and force Level 2.
OSI MTU must be
8/8/2019 Belgrade Kalogeras Intra Routing
31/39
IGP IS/IS Cisco Interface Config
interface POS0/0
description BACKBONE: OC48 to IPLSng
mtu 9180
ipv6 enable
ipv6 address
ip router isis
ipv6 router isis clns mtu 1497
8/8/2019 Belgrade Kalogeras Intra Routing
32/39
IGP IS/IS Cisco Routing
router isis
redistribute connected metric-type external
!
address-family ipv6
redistribute connected
exit-address-family
net 49.0000.0000.0000.0006.00 is-type level-2-only
metric-style wide
8/8/2019 Belgrade Kalogeras Intra Routing
33/39
IGP IS/IS Cisco Commands
ipls-gsr#sh clns neigh
System Id Interface SNPA State Holdtime Type
Protocol
clev-gsr PO2/0 *HDLC* Up 21 L2 IS-IS
IPLSng PO0/0 *HDLC* Up 26 L2 IS-IS
8/8/2019 Belgrade Kalogeras Intra Routing
34/39
IGP IS/IS Cisco Commands
ipls-gsr#sh isis top
IS-IS paths to level-2 routers
System Id Metric Next-Hop Interface SNPA
atla-gsr 588 IPLSng-re0 PO0/0 *HDLC*chin-gsr 262 IPLSng-re0 PO0/0 *HDLC*
clev-gsr 324 clev-gsr PO2/0 *HDLC*
dnvr-gsr 1194 IPLSng-re0 PO0/0 *HDLC*
hstn-gsr 1457 IPLSng-re0 PO0/0 *HDLC*
ipls-gsr --
kscy-gsr 550 IPLSng-re0 PO0/0 *HDLC*losa-gsr 2850 IPLSng-re0 PO0/0 *HDLC*
8/8/2019 Belgrade Kalogeras Intra Routing
35/39
IGP IS/IS Lab
Bring up IS/IS on your EXTERNAL links.
Your external interfaces will be advertised by
IS/IS while your internal interface will beadvertised by your BGP aggregate.
Longest Match and Distance/Preference will
keep things working correctly.
8/8/2019 Belgrade Kalogeras Intra Routing
36/39
Multi-Topology IS-IS
Multi-Topology IS-IS against the limitations of a
single SPF process on networks where both IPv4
and IPv6 topologies cannot be aligned, while
maintaining the current IS-IS IPv6 functionalities.
IS-IS extension by additions of new Type Length Value
(TLVs).This IS-IS extension impacts adjacency forming,
prefix advertisement and Intermediate Systems reachability.
Maintenance of 2 topologies, one for IPv6 and one
common topology for IPv4 and ISO.
8/8/2019 Belgrade Kalogeras Intra Routing
37/39
Multi-Topology IS-IS extensions
New TLVs attributes for Multi-Topology extensions.Multi-topology TLV:
MT Intermediate Systems TLV
Multi-Topology Reachable IPv4 Prefixes TLV
Multi-Topology Reachable IPv6 Prefixes TLV:
Multi-Topology ID ValuesMulti-Topology ID (MT ID) standardized and in use in Cisco IOS:
MT ID #0 standard topology for IPv4/CLNS
MT ID #2 IPv6 Routing Topology.
8/8/2019 Belgrade Kalogeras Intra Routing
38/39
Multi-Topology IS-IS Restrictions
NOT compatible with the single SPF model, as new TLV are used totransmit and advertise IPv6 capabilities.
All routers that run IS-IS for IPv6 are expected to enable multi-topology
within the network.
A transition mode (refer to documentation) is provided for existing IS-IS
IPv6 network to migrate to Multi-Topology IS-IS IPv6.
IPv4, IPv6, or IPv4/IPv6 for either level-1 level-2 or level-1-2. But if IPv4
and IPv6 are configured on the same interface, they must be running
the same IS-IS level
Tricky adjacency between Multi topology and non multi topology (IPv4
is fine though). Wide metric is required to be enabled globally on the Autonomous
System to run
8/8/2019 Belgrade Kalogeras Intra Routing
39/39
Multi-Topology IS-IS example
IPv4-IPv6 enable router
Area A
Area B
Area C
Area D
IPv4-only enable router
The Multi-Topology software will create two
topologies inside Area
IPv4 and IPv6.
IPv4-only routers will be excluded from theIPv6 topology