Network Working Group C. Hopps
Request for Comments: 5308 Cisco Systems
Category: Standards Track October 2008
Routing IPv6 with IS-IS
Status of This Memo
This document specifies an Internet standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "Internet
Official Protocol Standards" (STD 1) for the standardization state
and status of this protocol. Distribution of this memo is unlimited.
Abstract
This document specifies a method for exchanging IPv6 routing
information using the IS-IS routing protocol. The described method
utilizes two new TLVs: a reachability TLV and an interface address
TLV to distribute the necessary IPv6 information throughout a routing
domain. Using this method, one can route IPv6 along with IPv4 and
OSI using a single intra-domain routing protocol.
1. Overview
IS-IS is an extendible intra-domain routing protocol. Each router in
the routing domain issues an Link State Protocol Data Unit (LSP) that
contains information pertaining to that router. The LSP contains
typed variable-length data, often referred to as TLVs (type-length-
values). We extend the protocol with two new TLVs to carry
information required to perform IPv6 routing.
In [RFC1195], a method is described to route both OSI and IPv4. We
utilize this same method with some minor changes to allow for IPv6.
To do so, we must define two new TLVs, namely "IPv6 Reachability" and
"IPv6 Interface Address", and a new IPv6 protocol identifier. In our
new TLVs, we utilize the extended metrics and up/down semantics of
[RFC5305].
1.1. Requirements Language
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119 [RFC2119].
Hopps Standards Track [Page 1]
RFC 5308 Routing IPv6 with IS-IS October 2008
2. IPv6 Reachability TLV
The "IPv6 Reachability" TLV is TLV type 236 (0xEC).
[RFC1195] defines two Reachability TLVs, "IP Internal Reachability
Information" and "IP External Reachability Information". We provide
the equivalent IPv6 data with the "IPv6 Reachability" TLV and an
"external" bit.
The "IPv6 Reachability" TLV describes network reachability through
the specification of a routing prefix, metric information, a bit to
indicate if the prefix is being advertised down from a higher level,
a bit to indicate if the prefix is being distributed from another
routing protocol, and OPTIONALLY the existence of Sub-TLVs to allow
for later extension. This data is represented by the following
structure:
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 236 | Length | Metric .. |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| .. Metric |U|X|S| Reserve | Prefix Len |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Prefix ...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Sub-TLV Len(*) | Sub-TLVs(*) ...
* - if present
U - up/down bit
X - external original bit
S - subtlv present bit
The above IPv6 Reachability TLV MAY appear any number of times
(including none) within an LSP. Link-local prefixes MUST NOT be
advertised using this TLV.
As is described in [RFC5305]: "The up/down bit SHALL be set to 0 when
a prefix is first injected into IS-IS. If a prefix is advertised
from a higher level to a lower level (e.g. level 2 to level 1), the
bit SHALL be set to 1, indicating that the prefix has traveled down
the hierarchy. Prefixes that have the up/down bit set to 1 may only
be advertised down the hierarchy, i.e., to lower levels".
If the prefix was distributed into IS-IS from another routing
protocol, the external bit SHALL be set to 1. This information is
useful when distributing prefixes from IS-IS to other protocols.
Hopps Standards Track [Page 2]
RFC 5308 Routing IPv6 with IS-IS October 2008