Network Working Group F. Templin, Ed.
Internet-Draft Boeing Research and Technology
Intended status: Informational February 4, 2009
Expires: August 8, 2009
Virtual Enterprise Traversal (VET)
draft-templin-autoconf-dhcp-33.txt
Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
This Internet-Draft will expire on August 8, 2009.
Copyright Notice
Copyright (c) 2009 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document.
Abstract
Enterprise networks connect routers over various link types, and may
also connect to provider networks and/or the global Internet. Nodes
Templin Expires August 8, 2009 [Page 1]
Internet-Draft VET February 2009
in enterprise networks must have a way to automatically provision IP
addresses/prefixes and other information, and must also support
internetworking operation even in highly-dynamic networks. This
document specifies a Virtual Enterprise Traversal (VET) abstraction
for autoconfiguration and operation of nodes in enterprise networks.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 5
3. Enterprise Characteristics . . . . . . . . . . . . . . . . . . 9
4. Autoconfiguration . . . . . . . . . . . . . . . . . . . . . . 10
4.1. Enterprise Interior Router (EIR) Autoconfiguration . . . . 10
4.2. Enterprise Border Router (EBR) Autoconfiguration . . . . . 11
4.2.1. VET Interface Autoconfiguration . . . . . . . . . . . 12
4.2.2. Provider-Aggregated (PA) Prefix Autoconfiguration . . 13
4.2.3. Provider-Independent (PI) Prefix Autoconfiguration . . 14
4.3. Enterprise Border Gateway (EBG) Autoconfiguration . . . . 14
4.4. VET Host Autoconfiguration . . . . . . . . . . . . . . . . 14
5. Internetworking Operation . . . . . . . . . . . . . . . . . . 15
5.1. Routing Protocol Participation . . . . . . . . . . . . . . 15
5.2. PA Prefix Maintenance . . . . . . . . . . . . . . . . . . 15
5.3. IPv6 Border Router Discovery and PI Prefix Maintenance . . 15
5.3.1. IPv6 EBG Discovery . . . . . . . . . . . . . . . . . . 15
5.3.2. IPv6 PI Prefix Registration . . . . . . . . . . . . . 16
5.3.3. IPv6 Next-Hop EBR Discovery . . . . . . . . . . . . . 18
5.4. IPv4 Border Router Discovery and PI Prefix Maintenace . . 19
5.5. Forwarding Packets . . . . . . . . . . . . . . . . . . . . 19
5.6. SEAL Encapsulation . . . . . . . . . . . . . . . . . . . . 20
5.7. Generating Errors . . . . . . . . . . . . . . . . . . . . 21
5.8. Processing Errors . . . . . . . . . . . . . . . . . . . . 21
5.9. Mobility and Multihoming Considerations . . . . . . . . . 22
5.10. Enterprise-Local Communications . . . . . . . . . . . . . 23
5.11. Multicast . . . . . . . . . . . . . . . . . . . . . . . . 23
5.12. Service Discovery . . . . . . . . . . . . . . . . . . . . 24
5.13. Enterprise Partitioning . . . . . . . . . . . . . . . . . 24
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 25
7. Security Considerations . . . . . . . . . . . . . . . . . . . 25
8. Related Work . . . . . . . . . . . . . . . . . . . . . . . . . 25
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 26
10. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 26
11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 26
11.1. Normative References . . . . . . . . . . . . . . . . . . . 26
11.2. Informative References . . . . . . . . . . . . . . . . . . 28
Appendix A. Duplicate Address Detection (DAD) Considerations . . 31
Appendix B. Change Log . . . . . . . . . . . . . . . . . . . . . 31
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 35
Templin Expires August 8, 2009 [Page 2]
Internet-Draft VET February 2009
1. Introduction
Enterprise networks [RFC4852] connect routers over various link types
(see: [RFC4861], Section 2.2). The term "enterprise network" in this
context extends to a wide variety of use cases and deployment
scenarios. For example, an "enterprise" can be as small as a SOHO
network, as complex as a multi-organizational and/or multi-national
corporation, or as large as the global Internet itself. Certain
Mobile Ad-hoc Networks (MANETs) [RFC2501] can be considered as a
challenging example of an enterprise network, in that their
topologies may change dynamically over time and that they may employ
little/no active management by a centralized network administrative
authority. These specialized characteristics for MANETs require
careful consideration, but the same principles apply equally to other
enterprise network scenarios.
This document specifies a Virtual Enterprise Traversal (VET)
abstraction for autoconfiguration and internetworking operation,
where addresses of different scopes may be assigned on various types
of interfaces with diverse properties. Both IPv4 [RFC0791] and IPv6
[RFC2460] are discussed within this context. The use of standard
DHCP [RFC2131][RFC3315] and neighbor discovery
[RFC0826][RFC1256][RFC4861] mechanisms is assumed unless otherwise
specified.
Templin Expires August 8, 2009 [Page 3]
Internet-Draft VET February 2009
Provider-edge Interfaces
x x x
| | |
+--------------------+---+--------+----------+ E
| | | | | n
| I | | .... | | t
| n +---+---+--------+---+ | e
| t | +--------+ /| | r
| e I x----+ | Host | I /*+------+--< p I
| r n | |Function| n|**| | r n
| n t | +--------+ t|**| | i t
| a e x----+ V e|**+------+--< s e
| l r . | E r|**| . | e r
| f . | T f|**| . | f
| V a . | +--------+ a|**| . | I a
| i c . | | Router | c|**| . | n c
| r e x----+ |Function| e \*+------+--< t e
| t s | +--------+ \| | e s
| u +---+---+--------+---+ | r
| a | | .... | | i
| l | | | | o
+--------------------+---+--------+----------+ r
| | |
x x x
Enterprise-edge Interfaces
Figure 1: Enterprise Router Architecture
Figure 1 above depicts the architectural model for an enterprise
router. As shown in the figure, an enterprise router may have a
variety of interface types including enterprise-edge, enterprise-
interior, provider-edge, internal-virtual, as well as VET interfaces
used for encapsulation of inner IP packets within outer IP headers.
The different types of interfaces are defined, and the
autoconfiguration mechanisms used for each type are specified. This
architecture applies equally for MANET routers, in which enterprise-
interior interfaces correspond to the wireless multihop radio
interfaces typically associated with MANETs. Out of scope for this
document is the autoconfiguration of provider interfaces, which must
be coordinated in a manner specific to the service provider's
network.
Enterprise routers must have a means for supporting both Provider-
Independent (PI) and Provider-Aggregated (PA) IP prefixes for global-
scope communications. This is especially true for enterprise
scenarios that involve mobility and multihoming. Ingress filtering
for multi-homed sites, adaptation based on authenticated ICMP
feedback from on-path routers, effective tunnel path MTU mitigations
Templin Expires August 8, 2009 [Page 4]
Internet-Draft VET February 2009
and routing scaling suppression are also required in many enterprise
network scenarios. The VET specification provides a comprehensive
solution that addresses these issues and more.
VET represents a functional superset of 6over4 [RFC2529] and ISATAP
[RFC5214], and further supports additional encapsulations such as
IPsec [RFC4301], SEAL [I-D.templin-seal], etc. As a result, VET
provides a map-and-encaps architecture using IP-in-IP tunneling based
on both forwarding table and mapping service lookups (defined
herein).
The VET principles can be either directly or indirectly traced to the
deliberations of the ROAD group in January 1992, and also to still
earlier works including NIMROD [RFC1753], the Catenet model for
internetworking [CATENET][IEN48][RFC2775], etc. [RFC1955] captures
the high-level architectural aspects of the ROAD group deliberations
in a "New Scheme for Internet Routing and Addressing [ENCAPS] for
IPNG".
VET is related to the present-day activites of the IETF autoconf,
dhc, ipv6, manet and v6ops working groups, as well as the IRTF rrg
working group.
2. Terminology
The mechanisms within this document build upon the fundamental
principles of IP-within-IP encapsulation. The terms "inner" and
"outer" are used to respectively refer to the innermost IP {address,
protocol, header, packet, etc.} *before* encapsulation, and the
outermost IP {address, protocol, header, packet, etc.} *after*
encapsulation. VET also allows for inclusion of "mid-layer"
encapsulations between the inner and outer layers, including IPSec
[RFC4301], the Subnetwork Encapsulation and Adaptation Layer (SEAL)
[I-D.templin-seal], etc.
The terminology in the normative references apply; the following
terms are defined within the scope of this document:
subnetwork
the same as defined in [RFC3819].
enterprise
the same as defined in [RFC4852].
Templin Expires August 8, 2009 [Page 5]
Internet-Draft VET February 2009
site
a logical and/or physical grouping of interfaces that connect a
topological area less than or equal to an enterprise in scope. A
site within an enterprise can in some sense be considered as an
enterprise unto itself.
Mobile Ad-hoc Network (MANET)
a connected topology of mobile or fixed routers that maintain a
routing structure among themselves over dynamic links, where a
wide variety of MANETs share common properties with enterprise
networks. Characteristics of MANETs are defined in [RFC2501],
Section 3.
enterprise/site/MANET
throughout the remainder of this document, the term "enterprise"
is used to collectively refer to any of enterprise/site/MANET,
i.e., the VET mechanisms and operational principles apply equally
to enterprises, sites and MANETs.
enterprise router
an Enterprise Interior Router, Enterprise Border Router, or
Enterprise Border Gateway. As depicted in Figure 1, an enterprise
router comprises a router function, a host function, one or more
enterprise-interior interfaces and zero or more internal virtual,
enterprise-edge, provider-edge and VET interfaces.
Enterprise Interior Router (EIR)
a fixed or mobile enterprise router that forwards packets over one
or more sets of enterprise-interior interface, where each set
connects to a distinct enterprise.
Enterprise Border Router (EBR)
an EIR that connects edge networks to the enterprise, and/or
connects multiple enterprises together. An EBR configures a
seperate VET interface over each set of enterprise-interior
interfaces that connect the EBR to each distinct enterprise. In
particular, an EBR may configure mulitple VET interfaces - one for
each distinct enterprise. All EBRs are also EIRs.
Enterprise Border Gateway (EBG)
an EBR that connects VET interfaces configued over child
enterprises to a provider network - either directly via a
provider-edge interface, or indirectly via another VET interface
configured over a parent enterprise. EBRs may act as EBGs on some
VET interfaces and as ordinary EBRs on other VET interfaces. All
EBGs are also EBRs.
Templin Expires August 8, 2009 [Page 6]
Internet-Draft VET February 2009
EBGs provide packet forwarding, relaying and mapping services on
behalf of EBRs and ordinary VET hosts within the enterprise. A
"default mapper" [I-D.jen-apt] is a special case of an EBG that
performs all EBG services except forwarding packets to provider
networks. Default mappers must therefore configure a default
route via a fully-qualified EBG.
enterprise-interior interface
a EIR's attachment to a link within an enterprise. Packets sent
over enterprise-interior interfaces may be forwarded over multiple
additional enterprise-interior interfaces within the enterprise
before they are forwarded via an enterprise-edge interface,
provider-edge interface or a VET interface configured over a
different enterprise.
enterprise-edge interface
an EBR's attachment to a link (e.g., an ethernet, a wireless
personal area network, etc.) on an arbitrarily-complex edge
network that the EBR connects to an enterprise and/or to provider
networks.
internal-virtual interface
a virtual interface that is a special case of either an
enterprise-edge or an enterprise-interior interface. Internal-
virtual interfaces that are also enterprise-edge interfaces are
often loopback interfaces of some form. Internal-virtual
interfaces that are also enterprise-interior interfaces are often
tunnel interfaces of some form configured over another enterprise-
interior interface.
provider-edge interface
an EBR's attachment to the Internet, or to a provider network
outside of the enterprise via which the Internet can be reached.
Enterprise Local Address (ELA)
an enterprise-scoped IP address (e.g., an IPv6 Unique Local
Address [RFC4193], an IPv4 privacy address [RFC1918], etc.) that
is assigned to an enterprise-interior interface and unique within
the enterprise. ELAs are used as identifiers for operating the
routing protocol and/or locators for packet forwarding within the
scope of the enterprise. ELAs are used as the *outer* IP
addresses during encapsulation, and can also be used as addresses
for enterprise-internal communications that do not require
encapsulation.
Templin Expires August 8, 2009 [Page 7]
Internet-Draft VET February 2009
Provider-Independent (PI) prefix
an IPv6 or IPv4 prefix (e.g., 2001:DB8::/48, 192.0.2/24, etc.)
that is routable within a limited scope and may also appear in a
global mapping table. PI prefixes that can appear in a global
mapping table are typically delegated to an EBR by a registry, but
are not aggregated by a provider network. Local-use IPv6 and IPv4
prefixes (e.g., FD00::/8, 192.168/16, etc.) are another example of
a PI prefix, but these typically do not appear in a global mapping
table.
Provider Aggregated (PA) prefix
an IPv6 or IPv4 prefix that is either derived from a PI prefix or
delegated directly to a provider network by a registry.
Virtual Enterprise Traversal (VET)
an abstraction that uses IP-in-IP encapsulation to span a multi-
link enterprise in a single (inner) IP hop.
VET interface
an EBR's Non-Broadcast, Multiple Access (NBMA) interface used for
Virtual Enterprise Traversal. The EBR configures a VET interface
over a set of underlying enterprise-interior interface(s)
belonging to the same enterprise. When there are multiple
distinct enterprises (each with their own distinct set of
enterprise-interior interfaces), the EBR configures a separate VET
interface over each set of enterprise-interior interfaces, i.e.,
the EBR configures multiple VET interfaces.
The VET interface encapsulates each inner IP packet in any mid-
layer headers plus an outer IP header then forwards it on an
underlying enterprise-interior interface such that the TTL/Hop
Limit in the inner header is not decremented as the packet
traverses the enterprise. The VET interface therefore presents an
automatic tunneling abstraction that represents the enterprise as
a single IP hop.
VET host
any node (host or router) that configures a VET interface for host
operation only. Note that a single node may configure some of its
VET interfaces as host interfaces and others as router interfaces.
VET node
any node that configures and uses a VET interface.
The following additional acronyms are used throughout the document:
CGA - Cryptographically Generated Address
DHCP[v4,v6] - the Dynamic Host Configuration Protocol
Templin Expires August 8, 2009 [Page 8]
Internet-Draft VET February 2009
FIB - Forwarding Information Base
ISATAP - Intra-Site Automatic Tunnel Addressing Protocol
NBMA - Non-Broadcast, Multiple Access
ND - Neighbor Discovery
PA - Provider Aggregated
PI - Provider Independent
PIO - Prefix Information Option
PRL - Potential Router List
PRLNAME - Identifying name for the PRL (default is "isatap")
RIO - Route Information Option
RS/RA - IPv6 Neighbor Discovery Router Solicitation/Advertisement
SEAL - Subnetwork Encapsulation and Adaptation Layer
SLAAC - IPv6 StateLess Address AutoConfiguation
3. Enterprise Characteristics
Enterprises consist of links that are connected by enterprise routers
as depicted in Figure 1. All enterprise routers are also Enterprise
Interior Routers (EIRs), and typically participate in a routing
protocol over enterprise-interior interfaces to discover routes that
may include multiple Layer-2 or Layer-3 forwarding hops. Enterprise
Border Routers (EBRs) are EIRs that connect edge networks and/or join
multiple enterprises together, while Enterprise Border Gateways
(EBGs) are EBRs that either directly or indirectly connect
enterprises to provider networks. A "default mapper" is a special
case of an EBG that performs all EBG services except forwarding
packets to provider networks.
An enterprise may be as simple as a small collection of enterprise
routers (and their attached edge networks); an enterprise may also
contain other enterprises and/or be a subnetwork of a larger
enterprise. An enterprise may further encompass a set of branch
offices and/or nomadic hosts connected to a home office over one or
several service providers, e.g., through Virtual Private Network
(VPN) tunnels.
Enterprises that comprise link types with sufficiently similar
properties (e.g., Layer-2 (L2) address formats, maximum transmission
units (MTUs), etc.) can configure a sub-IP layer routing service such
that IP sees the enterprise as an ordinary shared link the same as
for a (bridged) campus LAN. In that case, a single IP hop is
sufficient to traverse the enterprise without IP layer encapsulation.
Enterprises that comprise link types with diverse properties and/or
configure multiple IP subnets must also provide a routing service
that operates as an IP layer mechanism. In that case, multiple IP
hops may be necessary to traverse the enterprise such that specific
Templin Expires August 8, 2009 [Page 9]
Internet-Draft VET February 2009
autoconfiguration procedures are necessary to avoid multilink subnet
issues [RFC4903]. In particular, we describe herein the use of IP-
in-IP encapsulation to span the enterprise in a single (inner) IP hop
in order to avoid the multilink subnet issues that arise when
enterprise-interior interfaces are used directly by applications.
Conceptually, an enterprise router (i.e, an EIR/EBR/EBG) embodies
both a host function and router function. The host function supports
global-scoped communications over any of the enterprise router's non-
enterprise-interior interfaces according to the weak end system model
[RFC1122] and also supports enterprise-local-scoped communications
over its enterprise-interior interfaces. The router function engages
in the enterprise-interior routing protocol, connects any of the
enterprise router's edge networks to the enterprise and may also
connect the enterprise to provider networks (see: Figure 1).
In addition to other interface types, VET nodes configure VET
interfaces that view all other VET nodes in an enterprise as single-
hop neighbors, where the enterprise can also appear as a single IP
hop within another enterprise. VET nodes configure a separate VET
interface for each distinct enterprise to which they connect, and
discover a list of EBRs for each VET interface that can be used for
forwarding packets to off-enterprise destinations. The following
sections present the Virtual Enterprise Traversal approach.
4. Autoconfiguration
EIRs, EBRs, EBGs, and VET hosts configure themselves for operation as
specified in the following subsections:
4.1. Enterprise Interior Router (EIR) Autoconfiguration
EIRs configure enterprise-interior interfaces and engage in routing
protocols over those interfaces.
When an EIR joins an enterprise, it first configures a unique IPv6
link-local address on each enterprise-interior interface that
requires an IPv6 link-local capability and an IPv4 link-local address
on each enterprise-interior interface that requires an IPv4 link-
local capability. IPv6 link-local address generation mechanisms that
provide sufficient uniqueness include Cryptographically Generated
Addresses (CGAs) [RFC3972], IPv6 Privacy Addresses [RFC4941],
StateLess Address AutoConfiguration (SLAAC) using EUI-64 interface
identifiers [RFC4862], etc. The mechanisms specified in [RFC3927]
provide an IPv4 link-local address generation capability.
Next, the EIR configures an Enterprise Local Address (ELA) of the
Templin Expires August 8, 2009 [Page 10]
Internet-Draft VET February 2009
outer IP protocol version on each of its enterprise-interior
interfaces and engages in any routing protocols on those interfaces.
The EIR can configure an ELA via explicit management, DHCP
autoconfiguration, pseudo-random self-generation from a suitably
large address pool, or through an alternate autoconfiguration
mechanism. In some enterprise use cases (e.g., highly dynamic
MANETs), assignment of ELAs as singleton addresses (i.e., as /32s for
IPv4 and /128s for IPv6) may be necessary to avoid multilink subnet
issues.
EIRs that configure ELAs using DHCP may require relay support from
other EIRs within the enterprise; the EIR can alternatively configure
both a DHCP client and relay that are connected, e.g., via a pair of
back-to-back connected ethernet interfaces, a tun/tap interface, a
loopback interface, custom S/W coding, etc. For DHCPv6, relays that
do not already know the ELA of a server relay requests to the
'All_DHCP_Servers' site-scoped IPv6 multicast group. For DHCPv4,
relays that do not already know the ELA of a server relay requests to
the site-scoped IPv4 multicast group address 'All_DHCPv4_Servers'
(see: Section 6). DHCPv4 servers that delegate ELAs join the
'All_DHCPv4_Servers' multicast group and service any DHCPv4 messages
received for that group.
Self-generation of ELAs for IPv6 can be from a large IPv6 local-use
address range, e.g., IPv6 Unique Local Addresses [RFC4193]. Self-
generation of ELAs for IPv4 can be from a large IPv4 private address
range (e.g., [RFC1918]). When self-generation is used alone, the EIR
must continuously monitor the ELAs for uniqueness, e.g., by
monitoring the routing protocol, but care must be taken in the
interaction of this monitoring with existing mechanisms.
A combined approach using both DHCP and self-generation is also
possible in which the EIR first self-generates a temporary ELA used
only for the purpose of procuring an actual ELA taken from a disjoint
addressing range. The EIR then assigns the temporary ELA to an
enterprise-interior interface, engages in the routing protocol and
performs a DHCP client/relay exchange using the temporary ELA as the
address of the relay. When the DHCP server delegates an actual ELA,
the EIR abandons the temporary ELA, assigns the actual ELA to the
enterprise-interior interface and re-engages in the routing protocol.
4.2. Enterprise Border Router (EBR) Autoconfiguration
EBRs are EIRs that configure VET interfaces over distinct sets of
underlying enterprise-interior interfaces; an EBR can connect to
multiple enterprises, in which case it would configure multiple VET
interfaces. EBRs perform the following autoconfiguration operations:
Templin Expires August 8, 2009 [Page 11]
Internet-Draft VET February 2009
4.2.1. VET Interface Autoconfiguration
VET interface autoconfiguration entails: 1) interface initialization,
2) EBG discovery and enterprise identification, and 3) IPv6 stateless
address autoconfiguration. These functions are specified in the
following sections:
4.2.1.1. Interface Initialization
EBRs configure a VET interface over a set of underlying enterprise-
interior interfaces belonging to the same enterprise, where the VET
interface presents a Non-Broadcast, Multiple Access (NBMA)
abstraction in which all EBRs in the enterprise appear as single hop
neighbors through the use of IP-in-IP encapsulation.
When IPv6 and IPv4 are used as the inner/outer protocols
(respectively), the EBR autoconfigures an ISATAP link-local address
([RFC5214], Section 6.2) on the VET interface to support packet
forwarding and operation of the IPv6 neighbor discovery protocol.
The ISATAP link-local address embeds an IPv4 ELA assigned to an
underlying enterprise-interior interface, and need not be checked for
uniqueness since the IPv4 ELA itself was already checked (see:
Section 4.1). Link-local address configuration for other inner/outer
IP protocol combinations is through administrative configuration or
through an unspecified alternate method.
After the EBR configures a VET interface, it can communicate with
other VET nodes as single-hop neighbors from the viewpoint of the
inner IP protocol.
4.2.1.2. Enterprise Border Gateway Discovery and Enterprise
Identification
The EBR next discovers a list of EBGs for each of its VET interfaces.
The list can be discovered through information conveyed in the
routing protocol and/or through the Potential Router List (PRL)
discovery mechanisms outlined in ([RFC5214], Section 8.3.2). In
multicast-capable enterprises, they can also listen for
advertisements on the 'rasadv' [RASADV] IPv4 multicast group address.
In particular, whether or not routing information is available the
EBR can discover the list of EBGs in the PRL by resolving an
identifying name for the PRL ('PRLNAME') using an enterprise local
name resolution service (e.g., an enterprise-local DNS service, LLMNR
[RFC4759], etc.). 'PRLNAME' is formed as 'hostname.domainname',
where 'hostname' is an enterprise-specific name string and
'domainname' is an enterprise-specific DNS suffix when such a suffix
is available.
Templin Expires August 8, 2009 [Page 12]
Internet-Draft VET February 2009
The EBR discovers 'PRLNAME' through manual configuration, a DHCP
option, 'rasadv' protocol advertisements, link-layer information
(e.g., an IEEE 802.11 SSID) or through some other means specific to
the enterprise. In the absence of other information, the EBR sets
the 'hostname' component of 'PRLNAME' to "isatap" and sets the
'domainname' component only if an enterprise-specifc DNS suffix
"example.com" is known (e.g., as "isatap.example.com").
After discovering 'PRLNAME', the EBR can discover the list of EBGs by
resolving 'PRLNAME' to a list of IPv4 addresses through a name
service lookup. 'PRLNAME' as well as the ELAs of EBGs and/or the IP
prefixes they aggregate serve as an identifier for the enterprise.
4.2.2. Provider-Aggregated (PA) Prefix Autoconfiguration
EBRs can acquire Provider-Aggregated (PA) prefixes through
autoconfiguration exchanges with EBGs over VET interfaces. When IPv4
is used as the inner IP protocol, the EBR acquires PA prefixes via an
unspecified automated IPv4 prefix delegation exchange, explicit
management, etc.
When IPv6 is used as the inner IP protocol, the EBR acquires PA
prefixes via IPv6 Neighbor Discovery and DHCPv6 Prefix Delegation
exchanges. In particular, the EBR (acting as a requesting router)
can use DHCPv6 prefix delegation [RFC3633] over the VET interface to
obtain PA IPv6 prefixes from the server (acting as a delegating
router).
The EBR obtains prefixes using either a 2-message or 4-message DHCPv6
exchange [RFC3315]. For example, to perform the 2-message exchange
the EBR's DHCPv6 client forwards a Solicit message with an IA_PD
option to its DHCPv6 relay, i.e., the EBR acts as a combined client/
relay (see: Section 4.1). The relay then forwards the message over
the VET interface to the EBG. The forwarded Solicit message will
elicit a reply from the server containing PA IPv6 prefix delegations.
The EBR can propose a specific prefix to the DHCPv6 server per
Section 7 of [RFC3633], e.g., if a prefix delegation hint is
available. The server will check the proposed prefix for consistency
and uniqueness, then return it in the reply to the EBR if it was able
to perform the delegation.
After the EBR receives PA prefix delegations, it can provision the
prefixes on its enterprise-edge interfaces as well as on other VET
interfaces for which it is configured as an EBG.
Templin Expires August 8, 2009 [Page 13]
Internet-Draft VET February 2009
4.2.3. Provider-Independent (PI) Prefix Autoconfiguration
Independent of any PA prefixes, EBRs can acquire and use Provider-
Independent (PI) prefixes that are either delegated by a registration
authority or self-configured by the EBR
[RFC4193][I-D.ietf-ipv6-ula-central]).
When an EBR acquires a PI prefix, it must also obtain credentials
(e.g., from a certification authority) that it can use to prove
prefix ownership through Secure Neighbor Discovery (SEND) [RFC3971]
messaging as specified in Section 5.3 and Section 5.4.
The minimum-sized IPv6 PI prefix that an EBR may acquire is a /56.
4.3. Enterprise Border Gateway (EBG) Autoconfiguration
EBGs are EBRs that connect child enterprises to a provider network
via ordinay provider-edge interfaces and/or VET interfaces configured
over parent enterprises. EBGs autoconfigure provider-edge interfaces
in a manner that is specific to their provider connections, and
autoconfigure VET interfaces as specified in Section 4.2.1. EBGs
that support PA prefix delegation also configure a DHCP relay/server.
For each VET interface on which it is configured as an EBG, the EBG
must arrange to add its enterprise-interior interface addresses
(i.e., its ELAs) to the PRL (see: Section 4.2.1.2), and must maintain
these resource records in accordance with ([RFC5214], Section 9). In
particular, for each such VET interface the EBG adds its ELAs to name
service resource records for 'PRLNAME'.
4.4. VET Host Autoconfiguration
Nodes that cannot be attached via an EBR's enterprise-edge interface
(e.g., nomadic laptops that connect to a home office via a Virtual
Private Network (VPN)) can instead be configured for operation as a
simple host connected to the VET interface. Such VET hosts perform
the same VET interface autoconfiguration procedures as specified for
EBRs in Section 4.2.1, but they configure their VET interfaces as
host interfaces (and not router interfaces). VET hosts can then send
packets to other hosts on the VET interface, or to off-enterprise
destinations via a next-hop EBR.
Note that a node may be configured as a host on some VET interfaces
and as an EBR/EBG on other VET interfaces.
Templin Expires August 8, 2009 [Page 14]
Internet-Draft VET February 2009
5. Internetworking Operation
Following the autoconfiguration procedures specified in Section 4,
EIRs, EBRs, EBGs and VET hosts engage in normal internetworking
operations as discussed in the following sections:
5.1. Routing Protocol Participation
Following autoconfiguration, EIRs engage in any routing protocols
over their enterprise-interior interfaces and forward outer IP
packets within the enterprise as for any ordinary router.
EBRs can additionally engage in any inner IP routing protocols over
enterprise-edge and provider-edge interfaces, and can use those
interfaces for forwarding inner IP packets to off-enterprise
destinations. Note that these inner IP routing protocols are
separate and distinct from any enterprise-interior routing protocols.
5.2. PA Prefix Maintenance
When an EBR uses DHCP prefix delegation to obtain PA prefixes via an
EBG, the DHCP server ensures that the delegations are unique and that
the EBG's router function will forward IP packets over the VET
interface to the correct EBR.
The DHCP prefix delegations remain active as long as the EBR
continues to issue renewals over the VET interface before lease
lifetimes expire. The lease lifetime also keeps the delegation state
active even if communications between the EBR and DHCP server are
disrupted for a period of time (e.g., due to an enterprise network
partition) before being reestablished (e.g., due to an enterprise
network merge).
Additionnally, ordinary requesting routers on enterprise edge
interfaces can maintain PA prefix delegations exactly as specified in
[RFC3633].
5.3. IPv6 Border Router Discovery and PI Prefix Maintenance
The following sections discuss border router discovery and PI prefix
maintenance for the case of IPv6 as the inner IP protocol:
5.3.1. IPv6 EBG Discovery
EBGs follow the router and prefix discovery procedures specified in
([RFC5214], Section 8.2). They send solicited RAs over VET
interfaces for which they are configured as gateways with default
router lifetimes, with PIOs that contain PA prefixes for SLAAC, and
Templin Expires August 8, 2009 [Page 15]
Internet-Draft VET February 2009
with any other required options/parameters. EBGs must set the 'M'
flag in RAs to 0, since the use of DHCPv6 for address configuration
on VET interfaces is undefined. EBGs can also include PIOs with the
'L' bit set to 0 and with a prefix such as '2001:DB8::/48' as a hint
of an aggregated prefix from which it is willing to delegate longer
PA prefixes.
VET nodes follow the router and prefix discovery procedures specified
in ([RFC5214], Section 8.3). They discover EBGs within the
enterprise as specified in Section 4.2.1.2, then perform SEND-
protected RS/RA exchanges with the EBGs to establish and maintain
default routes. In particular the VET node sends SEND-protected
unicast RS messages to EBGs over its VET interface(s) to receive
SEND-protected RAs. When the VET node receives an RA, it configures
a default route based on the Router Lifetime. If the RA contains
Prefix Information Options (PIOs) with the 'A' and 'L' bits set to 1,
the VET node also autoconfigures IPv6 addresses from the advertised
prefixes using SLAAC and assigns them to the VET interface.
Thereafter, the VET node accepts packets that are fowarded by EBGs
for which it has current default routing information (i.e., ingress
filtering is based on the default router relationship rather than a
prefix-specific ingress filter entry).
5.3.2. IPv6 PI Prefix Registration
When an EBR discovers EBGs for the enterprise, it must register its
PI prefixes by sending SEND-protected RAs to a set of one or more
EBGs with Route information Options (RIOs) [RFC4191] that contain the
EBR's PI prefixes. Each RA must include the ELA of an EBG as the
outer IP destination address and an ISATAP link-local address derived
from the ELA as the inner IP destination address. The RAs must also
include a CGA link-local inner source address along with a SEND
signature that can be used to validate the CGA plus any certificates
needed to prove ownership of the PI prefixes. The EBR additionally
tracks the set of EBGs that it sends RAs to so that it can send
subsequent RAs to the same set.
When the EBG receives the RA, it uses SEND to authenticate the
message; if the authentication fails, the EBG discards the RA.
Otherwise, the EBG installs the PI prefixes with their respective
lifetimes in its Forwarding Information Base (FIB) and configures
them for both ingress filtering [RFC3704] and forwarding purposes.
In particular, the EBG configures the FIB entries as ingress filter
rules to accept packets received on the VET interface with a source
address taken from the PI prefixes. It also configures the FIB
entries to forward packets received on other interfaces with a
destination address taken from the PI prefixes to the EBR that
registered the prefixes on the VET interface.
Templin Expires August 8, 2009 [Page 16]
Internet-Draft VET February 2009
The EBG then publishes the PI prefixes in a distributed database
(e.g., in a private instance of a routing protocol in which only EBGs
participate, via an automated name service update mechanism
[RFC3007], etc.). For enterprises that are managed under a
cooperative administrative authority, the EBG also makes the PI
prefixes available for enterprise-local name service queries
[RFC1035]. For VET interfaces configured over enterprises that are
managed in a distributed fashion, EBG should instead respond directly
to LLMNR [RFC4759] name service queries.
To support name service queries, the EBG publishes each /56 prefix
taken from the PI prefixes as a seperate FQDN that consists of a
sequence of 14 nibbles in reverse order (i.e., the same as in
[RFC3596], Section 2.5) followed by the string 'PRLNAME'. For
example, when 'PRLNAME' is "isatap.example.com", the EBG publishes
the prefix '2001:DB8::/56' as:
'0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.isatap.example.com'. The EBG
includes the inner IPv6 CGA source address (e.g., in a DNS AAAA
record) and the outer IPv4 source address of the RA (e.g., in a DNS A
resource record) in each prefix publication. If the prefix was
already installed in the distributed database, the EBG instead adds
the outer IPv4 source address (e.g., in an additional DNS AAAA
record) to the pre-existing publication.
After the EBG authenticates the RA and publishes the PI prefixes, it
next acts as a Secure Neighbor Discovery Proxy (SENDProxy)
[I-D.ietf-csi-proxy-send] on the VET interfaces configured over any
of its provider enterprises and relays a SEND-protected proxied RA to
the default routers (i.e., EBGs) on those interfaces. Those EBGs in
turn act as SENDProxys to relay the RAs to EBGs on their provider
enterprises, etc. The RA proxying and PI prefix publication recurses
in this fashion and ends when a default mapping service for the
interdomain routing core is reached. (In the case of the global
Internet interdomain routing core, the 'PRLNAME' for the default
mapping service is "isatap.net".)
After the initial PI prefix registration, the EBR that owns the
prefix(es) must periodically send additional RAs to its set of EBGs
to refresh prefix lifetimes. Each such EBG/SENDProxy tracks the set
of EBGs that it relays the proxied RAs to, and should relay
subsequent RAs to the same set of EBGs.
This procedure has a direct analogy in the Teredo method of
maintaining state in network middleboxes through the periodic
transmission of "bubbles" [RFC4380].
Templin Expires August 8, 2009 [Page 17]
Internet-Draft VET February 2009
5.3.3. IPv6 Next-Hop EBR Discovery
VET nodes discover destination-specific next-hop EBRs within the
enterprise by querying the name service for the /56 IPv6 PI prefix
taken from a packet's destination address, by forwarding packets via
a default route to an EBG, or by some other inner IP to outer IP
address mapping mechansim. For example, for the IPv6 destination
address '2001:DB8:1:2::1' and 'PRLNAME' "isatap.example.com" the VET
node can lookup the domain name:
'0.0.1.0.0.0.8.b.d.0.1.0.0.2.ip6.isatap.example.com'. If the name
service lookup succeeds, it will return an IPv6 CGA address (e.g., in
a DNS AAAA record) and IPv4 addresses (e.g., in DNS A records) that
correspond to the ELAs assigned to enterprise interior interfaces of
next-hop EBRs to which the VET node can forward packets.
Alternatively, the VET node can simply forward an initial packet via
a default route to an EBG. The EBG will forward the packet to a
next-hop EBR on the VET interface and return a SEND-protected ICMPv6
Redirect [RFC4861]. If the packet's source address is on-link on the
VET interface, the EBG returns an ordinary "router-to-host" redirects
with the source address of the packet as its destination. If the
packet's source address is not on-link, the EBG instead returns a
"router-to-router" redirect with the link-local ISATAP address of the
previous-hop EBR as its destination. The EBG also includes in the
redirect one or more IPv6 Link-Layer Address Options (LLAOs) that
contain the IPv4 ELAs of potential next-hop EBRs arranged in order
from highest to lowest priority (i.e., the first LLAO contains the
highest priority ELA and the final LLAO option contains the lowest
priority). The LLAOs are formatted using a modified version of the
form specified in ( [RFC2529], Section 5) as shown in Figure 2:
+-------+-------+-------+-------+-------+-------+-------+-------+
| Type |Length | TTL | IPv4 Address |
+-------+-------+-------+-------+-------+-------+-------+-------+
Figure 2: VET Link-Layer Address Option Format
For each LLAO, the Type is set to 2 (for Target Link-Layer Address
Option), Length is set to 1, and IPv4 Address is set to the IPv4 ELA
of the next-hop EBR. TTL is set to the time in seconds that the
recipient may cache the ELA, where the value 65535 represents
infinity and the value 0 suspends forwarding through this ELA.
When a VET host receives an ordinay "router-to-host" redirect, it
processes the redirect exacly as specified in [RFC4861], Section 8.
When an EBR receives a "router-to-router" redirect, it discovers the
IPv4 ELA addresses of potential next-hop EBRs by examining the LLAOs
included in the redirect. The EBR then installs a FIB entry that
Templin Expires August 8, 2009 [Page 18]
Internet-Draft VET February 2009
contains the /56 prefix of the destination address encoded in the
redirect and the list of IPv4 ELAs of potential next-hop EBRs. The
EBR then enables the FIB entry for forwarding to next-hop EBRs but
DOES NOT enable it for ingress filtering acceptance of packets from
next-hop EBRs (i.e., the forwarding determination is unidirectional).
The EBR then sends RAs over the VET interface to one or more of the
potential next-hop EBRs with a link-local ISATAP address that embeds
a next-hop EBR IPv4 ELA as the destination. The RAs must include the
EBR's CGA link-local address as the inner IPv6 source address along
with a SEND signature. The RAs must also include a Route Information
Option (RIO) [RFC4191] that contains the /56 PI prefix of the
original packet's source address. Afte sending the RAs, the EBR can
either enable the new FIB entry for forwarding immediately or delay
until it receives an acknowledgement that a next-hop EBR received the
RA (see: Section 5.6).
When a next-hop EBR receives the RA, it uses SEND to verify the CGA
then performs a name service lookup on the prefix in the RIO. If the
name service returns the correct CGA and ELA information, the next-
hop EBR then installs the prefix in the RIO in its FIB and enables
the FIB entry for ingress filtering but DOES NOT enable it for
forwarding purposes. After an EBR sends initial RAs following a
redirect, it should send periodic RAs to refresh the next-hop EBR's
ingress filter prefix lifetimes as long as traffic is flowing.
EBRs retain the FIB entrys created as side effect of an ICMP redirect
until all ELA TTLs expire, or until no hints of forward progress
through any of the associated ELAs are received. In this way, ELA
liveness detection exactly parallels IPv6 Neighbor Unreachability
Detection ([RFC4861], Section 3).
5.4. IPv4 Border Router Discovery and PI Prefix Maintenace
When IPv4 is used as the inner IP protocol, border router discovery
and PI prefix maintenance exactly parallels the mechanisms specified
for IPv6 in Section 5.3. To support this, modifications to the
ICMPv4 Router Advertisement [RFC1256] function to include SEND
constructs, and modifications to the ICMPv4 Redirect [RFC0792]
function to support router-to-router redirects will be specified in a
future document. Additionally, publications for IPv4 prefixes will
be in dotted-nibble format in the 'ip4.isatap.example.com' domain.
For example, the IPv4 prefix 192.0.2/24 would be represented as:
'2.0.0.0.0.c.ip4.isatap.example.com'.
5.5. Forwarding Packets
VET nodes forward packets by consulting the FIB to determine a
specific EBR/EBG as the next-hop router on a VET interface. When
Templin Expires August 8, 2009 [Page 19]
Internet-Draft VET February 2009
multiple next-hop routers are available, VET nodes can use default
router preferences, routing protocol information, traffic engineering
configurations, etc. to select the best exit router. When there is
no FIB information other than ::/0 available, VET nodes can discover
the next-hop EBR/EBG through the mechanisms specified in
Section 5.3.1 and Section 5.3.3.
VET interfaces encapsulate inner IP packets in any mid-layer headers
followed by an outer IP header according to the specific
encapsulation type (e.g., [RFC4301][RFC5214][I-D.templin-seal]); they
next submit the encapsulated packet to the outer IP forwarding engine
for transmission on an underlying enterprise-interior interface.
For forwarding to next-hop addresses over VET interfaces that use
IPv6-in-IPv4 encapsulation, VET nodes determine the outer destination
address (i.e., the IPv4 ELA of the next-hop EBR) through static
extraction of the IPv4 address embedded in the next-hop ISATAP
address. For other IP-in-IP encapsulations, determination of the
outer destination address is through administrative configuration or
through an unspecified alternate method. When there are multiple
candidate destination ELAs available, the VET node should only select
an ELA for which there is current forwarding information in the outer
IP protocol FIB.
5.6. SEAL Encapsulation
VET nodes that do not use IPsec encapsulation should use SEAL
encapsulation [I-D.templin-seal] in conjunction with packet
forwarding over VET interfaces to accommdate path MTU diversity, to
detect source address spoofing, and to monitor next-hop EBR
reachability. SEAL encapsulation maintains a unidirectional and
monotonically-incrementing per-packet identification value known as
the 'SEAL_ID'. When a VET node that uses SEAL encapsulation sends a
SEND-protected Router Advertisement (RA) or Router Solicitation (RS)
message to another VET node, both nodes cache the new SEAL_ID as per-
tunnel state used for maintaining a window of unacknowledged
SEAL_IDs.
In terms of security, when a VET node receives an ICMP message, it
can confirm that the packet-in-error within the ICMP message
corresponds to one of its recently-sent packets by examining the
SEAL_ID along with source and destination addresses, etc.
Additionally, a next-hop EBR can track the SEAL_ID in packets
received from EBRs for which there is an ingress filter entry and
discard packets that have SEAL_ID values outside of the current
window.
In terms of next-hop reachability, an EBR can set the SEAL
Templin Expires August 8, 2009 [Page 20]
Internet-Draft VET February 2009
"Acknowledgement Requested" bit in messages to receive confirmation
that a next-hop EBR is reachable (see also Section 5.3.3. Setting
the "Acknowledgement Requested" bit is also used as the method for
maintaining the window of outstanding SEAL_ID's.
5.7. Generating Errors
When an EBR receives a packet over a VET interface and there is no
matching ingress filter entry, it drops the packet and returns an
ICMPv6 [RFC4443] "Destination Unreachable; Source address failed
ingress/egress policy" message to the previous hop EBR subject to
rate limiting.
When an EBR receives a packet over a VET interface, and there is no
longest-prefix-match FIB entry for the destination, it returns an
ICMPv6 "Destination Unreachable; No route to destination" message to
the previous hop EBR subject to rate limiting.
When an EBR receives a packet over a VET interface and the longest-
prefix-match FIB entry for the destination is configured over the
same VET interface the packet arrived on, the EBR forwards the packet
then (if the FIB prefix is longer than ::/0) sends a SEND-protected
router-to-router ICMPv6 Redirect message to the previous hop EBR as
specified in Section 5.3.3.
Generation of other ICMPv6 messages (e.g., ICMPv6 "Packet Too Big")
is the same as for any IPv6 interface.
5.8. Processing Errors
When an EBR receives an ICMPv6 "Destination Unreachable; Source
address failed ingress/egress policy" message from a next-hop EBR,
and there is a longest-prefix-match FIB entry for the original
packet's destination that is more-specific than ::/0, the EBR
discards the message and marks the FIB entry for the destination as
"forwarding suspended" for the ELA taken from the source address of
the ICMPv6 message. The EBR should then allow subsequent packets to
flow through different ELAs associated with the FIB entry until it
forwards a new SEND-protected RA to the suspended ELA. If the EBR
receives excessive ICMPv6 ingress policy errors through multiple ELAs
associated with the same FIB entry, it should delete the FIB entry
and allow subsequent packets to flow through an EBG.
When a VET node receives an ICMPv6 "Destination Unreachable; No route
to destination" message from a next-hop EBR, it forwards the ICMPv6
message to the source of the original packet as normal. If the EBR
has longest-prefix-match FIB entry for the original packet's
destination that is more-specific than ::/0, the EBR also deletes the
Templin Expires August 8, 2009 [Page 21]
Internet-Draft VET February 2009
FIB entry.
When an EBR receives an ICMPv6 Redirect with a valid SEND signature,
it processes the packet as specified in Section 5.3.3.
When an EBG receives new mapping information for a specific
destination prefix, it can propagate the update to other EBRs/EBGs by
sending an ICMPv6 redirect message to the 'All Routers' link-local
multicast address with a LLAO with the TTL for the unreachable LLAO
set to zero, and with a NULL packet in error.
Additionally, a VET node may receive ICMPv4 [RFC0792] "Destination
Unreachable; net / host unreachable" messages from an EIR indicating
that the path to a VET neighbor may be failing. The EBR should first
check identifying information in the message (e.g., the SEAL_ID,
IPsec sequence number, source address of the original packet if
available, etc.) before accepting it, then should mark the longest-
prefix-match FIB entry for the destination as "forwarding suspended"
for the ELA destination address of the ICMPv4 packet-in-error. If
the EBR receives excessive ICMPv4 unreachable errors through multiple
ELAs associated with the same FIB entry, it should delete the FIB
entry and allow subsequent packets to flow through a different route.
5.9. Mobility and Multihoming Considerations
EBRs can retain their PI prefixes as they travel between distinct
enterprise networks as long as they register the prefixes with new
EBGs and (preferrably) withdraw the prefixes from old EBGs prior to
departure. Prefix registration with new EBGs is coordinated exactly
as specified in Section 5.3.2; prefix withdrawl from old EBGs is
simply through re-announcing the PI prefixes with zero lifetimes.
Since EBRs can move about independently of one another, stale FIB
entry state may be left in VET nodes when a neighboring EBR departs.
Additionally, EBRs can lose state for various reasons, e.g., power
failure, machine reboot, etc. For this reason, EBRs are advised to
set relatively short PI prefix lifetimes in RIO options, and to send
additional RAs to refresh lifetimes before they expire. (EBRs should
place conservative limits on the RAs they send to reduce congestion,
however.)
EBRs may register their PI prefixes with multiple EBGs for
multihoming purposes. EBRs should only forward packets via EBGs with
which it has registered its PI prefixes, since other EBGs may drop
the packets and return ICMPv6 "Destination Unreachable; Source
address failed ingress/egress policy" messages.
EBRs can also act as delegating routers to sub-delegate portions of
Templin Expires August 8, 2009 [Page 22]
Internet-Draft VET February 2009
their PI prefixes to requesting routers on their enterprise edge
interfaces and on VET interfaces for which they are configured as
EBGs. In this sense, the sub-delegations of an EBR's PI prefixes
become the PA prefixes for downstream-dependent nodes. Downstream-
dependent nodes that travel with a mobile provider EBR can continue
to use addresses configured from PA prefixes; downstream-dependent
nodes that move away from their provider EBR must perform address/
prefix renumbering when they assocate with a new provider.
The EBGs of a multi-homed enterprise should participate in a private
inner IP routing protocol instance between themselves (possibly over
an alternate topology) to accommodate enterprise partitions/merges as
well as intra-enterprise mobility events. These peer EBGs should
accept packets from one another without respect to the destination
(i.e., ingress filtering is based on the peering relationship rather
than a prefix-specific ingress filter entry).
5.10. Enterprise-Local Communications
When permitted by policy, end systems that configure the endpoints of
enterprise-local communications can avoid VET interface encapsulation
by directly invoking the outer IP protocol using ELAs assigned to
their enterprise-interior interfaces. For example, when the outer
protocol is IPv4, end systems can use IPv4 ELAs for enterprise-local
communications over their enterprise-interior interfaces without
using encapsulation.
5.11. Multicast
In multicast-capable deployments, EIRs provide an enterprise-wide
multicasting service (e.g., Simplified Multicast Forwarding (SMF)
[I-D.ietf-manet-smf], PIM routing, DVMRP routing, etc.) over their
enterprise-interior interfaces such that outer IP multicast messages
of site- or greater scope will be propagated across the enterprise.
For such deployments, VET nodes can also provide an inner IP
multicast/broadcast capability over their VET interfaces through
mapping of the inner IP multicast address space to the outer IP
multicast address space. In that case, operation of link- or greater
scoped inner IP multicasting services (e.g., a link-scoped neighbor
discovery protocol) over the VET interface is available, but link-
scoped services should be used sparingly to minimize enterprise-wide
flooding.
VET nodes encapsulate inner IP multicast messages sent over the VET
interface in any mid-layer headers (e.g., IPsec, SEAL, etc.) plus an
outer IP header with a site-scoped outer IP multicast address as the
destination. For the case of IPv6 and IPv4 as the inner/outer
protocols (respectively), [RFC2529] provides mappings from the IPv6
Templin Expires August 8, 2009 [Page 23]
Internet-Draft VET February 2009
multicast address space to a site-scoped IPv4 multicast address space
(for other IP-in-IP encapsulations, mappings are established through
administrative configuration or through an unspecified alternate
method).
Multicast forwarding for inner IP multicast groups over outer IP
multicast groups can be accommodated, e.g. through VET interface
snooping of inner multicast group membership and routing protocol
control messages. To support inner-to-outer IP multicast forwarding,
VET interface acts as a virtual outer IP multicast host connected to
its underlying enterprise-interior interfaces. When the VET
interface detects inner IP multicast group joins or leaves, it
forwards corresponding outer IP multicast group membership reports
for each enterprise-interior interface over which the VET interface
is configured. If the VET node is configured as an outer IP
multicast router on the underlying enterprise-interior interfaces,
the VET interface forwards locally looped-back group membership
reports to the outer IP multicast routing process. If the VET node
is configued as a simple outer IP multicast host, the VET interface
instead fowards actual group membership reports (e.g., IGMP messages)
directly over each of the underlying enterprise-interior interfaces.
Since inner IP multicast groups are mapped to site-scoped outer IP
multicast groups, the VET node must ensure that the site-scope outer
IP multicast messages received on the enterprise-interior interfaces
for one VET interface do not "leak over" to the enterprise-interior
interfaces of another VET interface. This is accomodated through
normal site-scoped outer IP multicast group filtering at enterprise-
interior interface boundaries.
5.12. Service Discovery
VET nodes can peform enterprise-wide service discovery using a
suitable name-to-address resolution service. Examples of flooding-
based services include the use of LLMNR [RFC4759] over the VET
interface or mDNS [I-D.cheshire-dnsext-multicastdns] over an
underlying enterprise-interior interface. More scalable and
efficient service discovery mechanisms are for further study.
5.13. Enterprise Partitioning
EBGs can physically partition an enterprise by configuring multiple
VET interfaces over multiple distinct sets of underlying interfaces.
In that case, each partition (i.e., each VET interface) must
configure its own distinct 'PRLNAME' (e.g.,
'isatap.zone1.example.com', 'isatap.zone2.example.com', etc.).
EBGs can logically partition an enterprise using a single VET
Templin Expires August 8, 2009 [Page 24]
Internet-Draft VET February 2009
interface by sending RAs with PIOs containing different IPv6 PA
prefixes to group nodes into different logical partitions. EBGs can
identify partitions, e.g., by examining IPv4 ELA prefixes, observing
the interfaces over which RSs are received, etc. In that case, a
single 'PRLNAME' can cover all partitions.
6. IANA Considerations
A Site-Local Scope IPv4 multicast group ('All_DHCPv4_Servers') for
DHCPv4 server discovery is requested. The allocation should be taken
from the 239.255.000.000-239.255.255.255 Site-Local Scope range in
the IANA 'multicast-addresses' registry.
7. Security Considerations
Security considerations for MANETs are found in [RFC2501].
Security considerations with tunneling that apply also to VET are
found in [RFC2529][RFC5214]. In particular, VET nodes must verify
that the outer IP source address of a packet received on a VET
interface is correct for the inner IP source address using the
procedures specified in ([RFC5214], Section 7.3) in conjunction with
the ingress filtering mechanisms specified in this document.
SEND [RFC3971] and SEAL Section 5.6 provide additional securing
mitigations to detect source address spoofing and bogus RA messages
sent by rogue routers.
Rogue routers can send bogus RA messages with spoofed ELA source
addresses that can consume network resources and cause EBGs to
perform extra work. Nonetheless, EBGs should not "blacklist" such
ELAs, as that may result in a denial of service to the ELAs'
legitimate owners.
8. Related Work
Brian Carpenter and Cyndi Jung introduced the concept of intra-site
automatic tunneling in [RFC2529]; this concept was later called:
"Virtual Ethernet" and investigated by Quang Nguyen under the
guidance of Dr. Lixia Zhang. Subsequent works by these authors and
their colleagues have motivated a number of foundational concepts on
which this work is based.
Telcordia has proposed DHCP-related solutions for MANETs through the
CECOM MOSAIC program.
Templin Expires August 8, 2009 [Page 25]
Internet-Draft VET February 2009
The Naval Research Lab (NRL) Information Technology Division uses
DHCP in their MANET research testbeds.
[I-D.ietf-v6ops-tunnel-security-concerns] discusses security concerns
pertaining to tunneling mechanisms.
An automated IPv4 prefix delegation mechanism is proposed in
[I-D.ietf-dhc-subnet-alloc].
MANET link types are discussed in [I-D.clausen-manet-linktype].
Various proposals within the IETF have suggested similar mechanisms.
9. Acknowledgements
The following individuals gave direct and/or indirect input that was
essential to the work: Jari Arkko, Teco Boot, Emmanuel Bacelli, Scott
Brim, Brian Carpenter, James Bound, Thomas Clausen, Dino Farinacci,
Vince Fuller, Thomas Goff, Joel Halpern, Bob Hinden, Sapumal
Jayatissa, Dan Jen, Darrel Lewis, Tony Li, Joe Macker, David Meyer,
Thomas Narten, Pekka Nikander, Dave Oran, Alexandru Petrescu, John
Spence, Jinmei Tatuya, Dave Thaler, Ole Troan, Michaela Vanderveen,
Lixia Zhang and others in the IETF AUTOCONF and MANET working groups.
Many others have provided guidance over the course of many years.
10. Contributors
The following individuals have contributed to this document:
Eric Fleischman (eric.fleischman@boeing.com)
Thomas Henderson (thomas.r.henderson@boeing.com)
Steven Russert (steven.w.russert@boeing.com)
Seung Yi (seung.yi@boeing.com)
Ian Chakeres (ian.chakeres@gmail.com) contributed to earlier versions
of the document.
11. References
11.1. Normative References
[RFC0791] Postel, J., "Internet Protocol", STD 5, RFC 791,
September 1981.
[RFC0792] Postel, J., "Internet Control Message Protocol", STD 5,
Templin Expires August 8, 2009 [Page 26]
Internet-Draft VET February 2009
RFC 792, September 1981.
[RFC0826] Plummer, D., "Ethernet Address Resolution Protocol: Or
converting network protocol addresses to 48.bit Ethernet
address for transmission on Ethernet hardware", STD 37,
RFC 826, November 1982.
[RFC1035] Mockapetris, P., "Domain names - implementation and
specification", STD 13, RFC 1035, November 1987.
[RFC2131] Droms, R., "Dynamic Host Configuration Protocol",
RFC 2131, March 1997.
[RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6
(IPv6) Specification", RFC 2460, December 1998.
[RFC3007] Wellington, B., "Secure Domain Name System (DNS) Dynamic
Update", RFC 3007, November 2000.
[RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C.,
and M. Carney, "Dynamic Host Configuration Protocol for
IPv6 (DHCPv6)", RFC 3315, July 2003.
[RFC3596] Thomson, S., Huitema, C., Ksinant, V., and M. Souissi,
"DNS Extensions to Support IP Version 6", RFC 3596,
October 2003.
[RFC3633] Troan, O. and R. Droms, "IPv6 Prefix Options for Dynamic
Host Configuration Protocol (DHCP) version 6", RFC 3633,
December 2003.
[RFC3971] Arkko, J., Kempf, J., Zill, B., and P. Nikander, "SEcure
Neighbor Discovery (SEND)", RFC 3971, March 2005.
[RFC3972] Aura, T., "Cryptographically Generated Addresses (CGA)",
RFC 3972, March 2005.
[RFC4191] Draves, R. and D. Thaler, "Default Router Preferences and
More-Specific Routes", RFC 4191, November 2005.
[RFC4291] Hinden, R. and S. Deering, "IP Version 6 Addressing
Architecture", RFC 4291, February 2006.
[RFC4443] Conta, A., Deering, S., and M. Gupta, "Internet Control
Message Protocol (ICMPv6) for the Internet Protocol
Version 6 (IPv6) Specification", RFC 4443, March 2006.
[RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman,
Templin Expires August 8, 2009 [Page 27]
Internet-Draft VET February 2009
"Neighbor Discovery for IP version 6 (IPv6)", RFC 4861,
September 2007.
[RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless
Address Autoconfiguration", RFC 4862, September 2007.
[RFC5214] Templin, F., Gleeson, T., and D. Thaler, "Intra-Site
Automatic Tunnel Addressing Protocol (ISATAP)", RFC 5214,
March 2008.
11.2. Informative References
[CATENET] Pouzin, L., "A Proposal for Interconnecting Packet
Switching Networks", May 1974.
[I-D.cheshire-dnsext-multicastdns]
Cheshire, S. and M. Krochmal, "Multicast DNS",
draft-cheshire-dnsext-multicastdns-07 (work in progress),
September 2008.
[I-D.clausen-manet-linktype]
Clausen, T., "The MANET Link Type",
draft-clausen-manet-linktype-00 (work in progress),
October 2008.
[I-D.ietf-autoconf-manetarch]
Chakeres, I., Macker, J., and T. Clausen, "Mobile Ad hoc
Network Architecture", draft-ietf-autoconf-manetarch-07
(work in progress), November 2007.
[I-D.ietf-csi-proxy-send]
Krishnan, S., Laganier, J., and M. Bonola, "Secure Proxy
ND Support for SEND", draft-ietf-csi-proxy-send-00 (work
in progress), November 2008.
[I-D.ietf-dhc-subnet-alloc]
Johnson, R., "Subnet Allocation Option",
draft-ietf-dhc-subnet-alloc-07 (work in progress),
July 2008.
[I-D.ietf-ipv6-ula-central]
Hinden, R., "Centrally Assigned Unique Local IPv6 Unicast
Addresses", draft-ietf-ipv6-ula-central-02 (work in
progress), June 2007.
[I-D.ietf-manet-smf]
Macker, J. and S. Team, "Simplified Multicast Forwarding
for MANET", draft-ietf-manet-smf-08 (work in progress),
Templin Expires August 8, 2009 [Page 28]
Internet-Draft VET February 2009
November 2008.
[I-D.ietf-v6ops-tunnel-security-concerns]
Hoagland, J., Krishnan, S., and D. Thaler, "Security
Concerns With IP Tunneling",
draft-ietf-v6ops-tunnel-security-concerns-01 (work in
progress), October 2008.
[I-D.jen-apt]
Jen, D., Meisel, M., Massey, D., Wang, L., Zhang, B., and
L. Zhang, "APT: A Practical Transit Mapping Service",
draft-jen-apt-01 (work in progress), November 2007.
[I-D.templin-seal]
Templin, F., "The Subnetwork Encapsulation and Adaptation
Layer (SEAL)", draft-templin-seal-23 (work in progress),
August 2008.
[IEN48] Cerf, V., "The Catenet Model for Internetworking",
July 1978.
[RASADV] Microsoft, "Remote Access Server Advertisement (RASADV)
Protocol Specification", October 2008.
[RFC1122] Braden, R., "Requirements for Internet Hosts -
Communication Layers", STD 3, RFC 1122, October 1989.
[RFC1256] Deering, S., "ICMP Router Discovery Messages", RFC 1256,
September 1991.
[RFC1753] Chiappa, J., "IPng Technical Requirements Of the Nimrod
Routing and Addressing Architecture", RFC 1753,
December 1994.
[RFC1918] Rekhter, Y., Moskowitz, R., Karrenberg, D., Groot, G., and
E. Lear, "Address Allocation for Private Internets",
BCP 5, RFC 1918, February 1996.
[RFC1955] Hinden, R., "New Scheme for Internet Routing and
Addressing (ENCAPS) for IPNG", RFC 1955, June 1996.
[RFC2501] Corson, M. and J. Macker, "Mobile Ad hoc Networking
(MANET): Routing Protocol Performance Issues and
Evaluation Considerations", RFC 2501, January 1999.
[RFC2529] Carpenter, B. and C. Jung, "Transmission of IPv6 over IPv4
Domains without Explicit Tunnels", RFC 2529, March 1999.
Templin Expires August 8, 2009 [Page 29]
Internet-Draft VET February 2009
[RFC2775] Carpenter, B., "Internet Transparency", RFC 2775,
February 2000.
[RFC3056] Carpenter, B. and K. Moore, "Connection of IPv6 Domains
via IPv4 Clouds", RFC 3056, February 2001.
[RFC3704] Baker, F. and P. Savola, "Ingress Filtering for Multihomed
Networks", BCP 84, RFC 3704, March 2004.
[RFC3753] Manner, J. and M. Kojo, "Mobility Related Terminology",
RFC 3753, June 2004.
[RFC3819] Karn, P., Bormann, C., Fairhurst, G., Grossman, D.,
Ludwig, R., Mahdavi, J., Montenegro, G., Touch, J., and L.
Wood, "Advice for Internet Subnetwork Designers", BCP 89,
RFC 3819, July 2004.
[RFC3927] Cheshire, S., Aboba, B., and E. Guttman, "Dynamic
Configuration of IPv4 Link-Local Addresses", RFC 3927,
May 2005.
[RFC4193] Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast
Addresses", RFC 4193, October 2005.
[RFC4301] Kent, S. and K. Seo, "Security Architecture for the
Internet Protocol", RFC 4301, December 2005.
[RFC4380] Huitema, C., "Teredo: Tunneling IPv6 over UDP through
Network Address Translations (NATs)", RFC 4380,
February 2006.
[RFC4759] Stastny, R., Shockey, R., and L. Conroy, "The ENUM Dip
Indicator Parameter for the "tel" URI", RFC 4759,
December 2006.
[RFC4852] Bound, J., Pouffary, Y., Klynsma, S., Chown, T., and D.
Green, "IPv6 Enterprise Network Analysis - IP Layer 3
Focus", RFC 4852, April 2007.
[RFC4903] Thaler, D., "Multi-Link Subnet Issues", RFC 4903,
June 2007.
[RFC4941] Narten, T., Draves, R., and S. Krishnan, "Privacy
Extensions for Stateless Address Autoconfiguration in
IPv6", RFC 4941, September 2007.
Templin Expires August 8, 2009 [Page 30]
Internet-Draft VET February 2009
Appendix A. Duplicate Address Detection (DAD) Considerations
A-priori uniqueness determination (also known as "pre-service DAD")
for an ELA assigned on an enterprise-interior interface would require
either flooding the entire enterprise or somehow discovering a link
in the enterprise on which a node that configures a duplicate address
is attached and performing a localized DAD exchange on that link.
But, the control message overhead for such an enterprise-wide DAD
would be substantial and prone to false-negatives due to packet loss
and intermittent connectivity. An alternative to pre-service DAD is
to autoconfigure pseudo-random ELAs on enterprise-interior interfaces
and employ a passive in-service DAD (e.g., one that monitors routing
protocol messages for duplicate assignments).
Pseudo-random IPv6 ELAs can be generated with mechanisms such as
CGAs, IPv6 privacy addresses, etc. with very small probability of
collision. Pseudo-random IPv4 ELAs can be generated through random
assignment from a suitably large IPv4 prefix space.
Consistent operational practices can assure uniqueness for EBG-
aggregated addresses/prefixes, while statistical properties for
pseudo-random address self-generation can assure uniqueness for the
ELAs assigned on an EIR's enterprise-interior interfaces. Still, an
ELA delegation authority should be used when available, while a
passive in-service DAD mechanism should be used to detect ELA
duplications when there is no ELA delegation authority.
Appendix B. Change Log
(Note to RFC editor - this section to be removed before publication
as an RFC.)
Changes from -32 to 33::
o Secure Neighbor Discovery Proxy
Changes from -28 to 29:
o Updates on processing/receiving errors.
Changes from -27 to 28:
o Introduced concept of a default mapper.
Changes from -26 to 27:
Templin Expires August 8, 2009 [Page 31]
Internet-Draft VET February 2009
o Introduced new model for PI prefix management.
o Teredo mechanisms used in conjunction with ISATAP ("teratap"?
"isado"?)
Changes from -25 to 26:
o Clarifications on Router Discovery and Ingress FIltering.
o Mechanisms for detecting locator liveness
o Mechanisms for avoiding state synchonization requirements.
Changes from -23 to 24:
o Clarifications on router discovery.
Changes from -22 to 23:
o Clarifications on prefix mapping.
Changes from -21 to 22:
o Using SEAL to secure VET
Changes from -20 to 21:
o Enterprise partitioning.
o Mapping and name service management.
Changes from -18 to 20:
o Added support for simple hosts.
o Added EBG name service maintenace procedures
o Added router and prefix maintenace procedures
Changes from -17 to 18:
o adjusted section headings to group autoconf operations under EIR/
EBR/EBG.
o clarified M/O bits
o clarified EBG roles
Templin Expires August 8, 2009 [Page 32]
Internet-Draft VET February 2009
Changes from -15 to 17:
o title change to "Virtual Enterprise Traversal (VET)".
o changed document focus from MANET-centric to the much-broader
Enterprise-centric, where "Enterprise" is understood to also cover
a wide range of MANET types.
Changes from -14 to 15:
o title change to "Virtual Enterprise Traversal (VET) for MANETs".
o Address review comments
Changes from -12 to 14:
o title change to "The MANET Virtual Ethernet Abstraction".
o Minor section rearrangement.
o Clartifications on portable and self-configured prefixes.
o Clarifications on DHCPv6 prefix delegation procedures.
Changes from -11 to 12:
o title change to "MANET Autoconfiguration using Virtual Ethernet".
o DHCP prefix delegation for both IPv4 and IPv6 as primary address
delegation mechanism.
o IPv6 SLAAC for address autoconfiguration on the VET interface.
o fixed editorials based on comments received.
Changes from -10 to 11:
o removed the transparent/opaque VET portal abstractions.
o removed routing header as an option for MANET exit router
selection.
o included IPv6 SLAAC as an endorsed address configuration mechanism
for the VET interface.
Changes from -08 to -09:
Templin Expires August 8, 2009 [Page 33]
Internet-Draft VET February 2009
o Introduced the term "VET".
o Changed address delegation language to speak of "MNBR-aggregated"
instead of global/local.
o Updated figures 1-3.
o Explained why a MANET interface is "neutral".
o Removed DHCPv4 "MLA Address option". Now, MNBRs can only be
DHCPv4 servers; not relays.
Changes from -07 to -08:
o changed terms "unenhanced" and "enhanced" to "transparent" and
"opaque".
o revised MANET Router diagram.
o introduced RFC3753 terminology for Mobile Router; ingress/egress
interface.
o changed abbreviations to "MNR" and "MNBR".
o added text on ULAs and ULA-Cs to "Self-Generated Addresses".
o rearranged Section 3.1.
o various minor text cleanups
Changes from -06 to -07:
o added MANET Router diagram.
o added new references
o various minor text cleanups
Changed from -05 to -06:
o Changed terms "raw" and "cooked" to "unenhanced" and "enhanced".
o minor changes to preserve generality
Changed from -04 to -05:
Templin Expires August 8, 2009 [Page 34]
Internet-Draft VET February 2009
o introduced conceptual "virtual ethernet" model.
o support "raw" and "cooked" modes as equivalent access methods on
the virutal ethernet.
Changed from -03 to -04:
o introduced conceptual "imaginary shared link" as a representation
for a MANET.
o discussion of autonomous system and site abstractions for MANETs
o discussion of autoconfiguration of CGAs
o new appendix on IPv6 StateLess Address AutoConfiguration
Changes from -02 to -03:
o updated terminology based on RFC2461 "asymmetric reachability"
link type; IETF67 MANET Autoconf wg discussions.
o added new appendix on IPv6 Neighbor Discovery and Duplicate
Address Detection
o relaxed DHCP server deployment considerations allow DHCP servers
within the MANET itself
Changes from -01 to -02:
o minor updates for consistency with recent developments
Changes from -00 to -01:
o new text on DHCPv6 prefix delegation and multilink subnet
considerations.
o various editorial changes
Templin Expires August 8, 2009 [Page 35]
Internet-Draft VET February 2009
Author's Address
Fred L. Templin (editor)
Boeing Research and Technology
P.O. Box 3707 MC 7L-49
Seattle, WA 98124
USA
Email: fltemplin@acm.org
Templin Expires August 8, 2009 [Page 36]