idnits 2.17.1 draft-templin-autoconf-dhcp-12.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 16. -- Found old boilerplate from RFC 3978, Section 5.5, updated by RFC 4748 on line 925. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 936. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 943. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 949. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (April 2, 2008) is 5868 days in the past. Is this intentional? -- Found something which looks like a code comment -- if you have code sections in the document, please surround them with '' and '' lines. Checking references for intended status: Informational ---------------------------------------------------------------------------- == Missing Reference: 'RFC3056' is mentioned on line 363, but not defined ** Obsolete normative reference: RFC 2460 (Obsoleted by RFC 8200) ** Obsolete normative reference: RFC 3315 (Obsoleted by RFC 8415) ** Obsolete normative reference: RFC 3633 (Obsoleted by RFC 8415) == Outdated reference: A later version (-15) exists of draft-cheshire-dnsext-multicastdns-06 == Outdated reference: A later version (-13) exists of draft-ietf-dhc-subnet-alloc-06 == Outdated reference: A later version (-14) exists of draft-ietf-manet-smf-07 == Outdated reference: A later version (-23) exists of draft-templin-seal-03 -- Obsolete informational reference (is this intentional?): RFC 4941 (Obsoleted by RFC 8981) Summary: 4 errors (**), 0 flaws (~~), 6 warnings (==), 9 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group F. Templin, Ed. 3 Internet-Draft S. Russert 4 Intended status: Informational S. Yi 5 Expires: October 4, 2008 Boeing Phantom Works 6 April 2, 2008 8 MANET Autoconfiguration using Virtual Ethernet (VET) 9 draft-templin-autoconf-dhcp-12.txt 11 Status of this Memo 13 By submitting this Internet-Draft, each author represents that any 14 applicable patent or other IPR claims of which he or she is aware 15 have been or will be disclosed, and any of which he or she becomes 16 aware will be disclosed, in accordance with Section 6 of BCP 79. 18 Internet-Drafts are working documents of the Internet Engineering 19 Task Force (IETF), its areas, and its working groups. Note that 20 other groups may also distribute working documents as Internet- 21 Drafts. 23 Internet-Drafts are draft documents valid for a maximum of six months 24 and may be updated, replaced, or obsoleted by other documents at any 25 time. It is inappropriate to use Internet-Drafts as reference 26 material or to cite them other than as "work in progress." 28 The list of current Internet-Drafts can be accessed at 29 http://www.ietf.org/ietf/1id-abstracts.txt. 31 The list of Internet-Draft Shadow Directories can be accessed at 32 http://www.ietf.org/shadow.html. 34 This Internet-Draft will expire on October 4, 2008. 36 Abstract 38 Mobile Ad-hoc Networks (MANETs) connect routers on links with 39 asymmetric reachability characteristics, and may also connect to 40 other networks including the Internet. Routers in MANETs must have a 41 way to automatically provision IP addresses/prefixes and other 42 information. This document specifies a Virtual Ethernet (VET) 43 abstraction for autoconfiguration of routers in MANETs. 45 Table of Contents 47 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 48 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 49 3. MANET Autoconfiguration . . . . . . . . . . . . . . . . . . . 6 50 3.1. MANET Interface Autoconfiguration . . . . . . . . . . . . 6 51 3.2. MNBR/MNGW List Discovery . . . . . . . . . . . . . . . . . 7 52 3.3. VET Interface Autoconfiguration . . . . . . . . . . . . . 8 53 3.4. Ingress Interface Autoconfiguration . . . . . . . . . . . 8 54 3.4.1. Autoconfiguration of IPv4 Prefixes . . . . . . . . . . 9 55 3.4.2. Autoconfiguration of IPv6 Addresses/Prefixes . . . . . 9 56 3.4.3. Prefix and Route Maintenance . . . . . . . . . . . . . 11 57 3.5. Portable IP Prefixes . . . . . . . . . . . . . . . . . . . 11 58 3.6. Forwarding Packets to Off-MANET Destinations . . . . . . . 12 59 3.7. MANET-Local Communications . . . . . . . . . . . . . . . . 12 60 3.8. Multicast . . . . . . . . . . . . . . . . . . . . . . . . 12 61 3.9. Service Discovery . . . . . . . . . . . . . . . . . . . . 13 62 3.10. Separation of IP Addressing Domains . . . . . . . . . . . 13 63 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13 64 5. Security Considerations . . . . . . . . . . . . . . . . . . . 13 65 6. Related Work . . . . . . . . . . . . . . . . . . . . . . . . . 14 66 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 14 67 8. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 14 68 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 14 69 9.1. Normative References . . . . . . . . . . . . . . . . . . . 14 70 9.2. Informative References . . . . . . . . . . . . . . . . . . 15 71 Appendix A. Duplicate Address Detection (DAD) Considerations . . 17 72 Appendix B. Change Log . . . . . . . . . . . . . . . . . . . . . 17 73 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 20 74 Intellectual Property and Copyright Statements . . . . . . . . . . 21 76 1. Introduction 78 Mobile Ad-hoc Networks (MANETs) connect MANET Routers (MNRs) on links 79 with asymmetric reachability characteristics (see: [RFC4861], Section 80 2.2). MNRs may participate in a routing protocol over MANET 81 interfaces to discover routes across the MANET using multiple Layer-2 82 or Layer-3 forwarding hops if necessary. MANETs may also connect to 83 other networks via MANET Border Routers (MNBRs) and connect to the 84 Internet via MANET Gateways (MNGWs). A MANET may be as simple as a 85 small collection of MNRs (and their attached networks); a MANET may 86 also contain other MANETs and/or be a subnetwork of a larger MANET. 88 MANETs that comprise homogeneous link types within a single IP subnet 89 can configure the routing protocol to operate as a sub-IP layer 90 mechanism such that IP sees the MANET as an ordinary shared link the 91 same as for a (bridged) campus LAN. In that case, a single IP hop is 92 sufficient to traverse the MANET without IP layer encapsulation. 94 MANETs that comprise heterogeneous link types and/or multiple IP 95 subnets must also provide a routing service that operates as an IP 96 layer mechanism, e.g., to accommodate media types with dissimilar 97 Layer-2 address formats and maximum transmission units (MTUs). In 98 that case, multiple IP hops may be necessary to traverse the MANET 99 such that specific autoconfiguration procedures are necessary to 100 avoid multilink subnet issues [RFC4903]. In particular, we describe 101 herein the use of a virtualized link that spans the MANET, to avoid 102 the multilink subnet issues that arise when MANET interfaces are used 103 directly by applications. 105 Conceptually, a MNR embodies a router entity that connects its 106 attached networks to MANETs and/or connects the MANET to other 107 networks including the Internet (see: Figure 1). The router entity 108 may also connect to an imaginary "Virtual Ethernet" that views other 109 routers in the MANET as single-hop neighbors. For each distinct 110 MANET to which they connect, MNRs discover a list of MNBRs that can 111 be used for forwarding packets to off-MANET destinations. An MNR 112 (and its attached networks) is a "site" unto itself, therefore a 113 MANET is a "site-of-sites". 115 This document specifies a Virtual EThernet (VET) abstraction using 116 IP-in-IP encapsulation for MANET autoconfiguration with multilink 117 subnet avoidance; both IPv4 [RFC0791] and IPv6 [RFC2460] are 118 discussed within this context. Operation using standard DHCP 119 [RFC2131][RFC3315] and neighbor discovery [RFC0826][RFC4861] 120 mechanisms is assumed unless otherwise specified. 122 2. Terminology 124 The terms "inner" and "outer" are used throughout this document to 125 respectively refer to the innermost IP {address, protocol, header, 126 packet, etc.} *before* encapsulation, and the outermost IP {address, 127 protocol, header, packet, etc.} *after* encapsulation. (There may 128 also be "mid-layer" encapsulations between the inner and outer 129 layers, including IPSec [RFC4301], the Subnetwork Encapsulation and 130 Adaptation Layer (SEAL) [I-D.templin-seal], etc.) 132 The terminology in [I-D.ietf-autoconf-manetarch] and the normative 133 references apply. The following terms are defined within the scope 134 of this document: 136 subnetwork 137 the same as defined in [RFC3819]. 139 Mobile Ad-hoc Network (MANET) 140 a connected network region of MANET routers that maintain a 141 routing structure among themselves over asymmetric reachability 142 links (see: [RFC4861], Section 2.2). A MANET may be as simple as 143 a small collection of routers (and their attached networks); a 144 MANET may also contain other MANETs and/or be a subnetwork of a 145 larger MANET. A MANET router (and its attached networks) is a 146 site unto itself, and a MANET is therefore a site-of-sites. 148 Further information on the characteristics of MANETs can be found 149 in [RFC2501]. 151 MANET Router (MNR) 152 a mobile router that forwards packets over MANET interfaces. For 153 the purpose of this specification, an MNR comprises a router 154 entity, one or more host entities, one or more MANET interfaces 155 and zero or more ingress/egress/VET interfaces (see: Figure 1). 157 MANET Border Router (MNBR) 158 an MNR that connects other networks to the MANET (via ingress 159 interfaces) and/or connects the MANET to other networks, including 160 the Internet (via egress interfaces). MNBRs also configure a VET 161 interface for automatic tunneling across the MANET. All MNBRs are 162 also MNRs. 164 MANET Gateway (MNGW) 165 a MNBR that connects the MANET to the Internet via egress 166 interfaces and can delegate addresses/prefixes to other MNBRs. 167 All MNGWs are also MNBRs. 169 egress/ingress interface 170 the same as defined in ([RFC3753], Section 3). Note that in some 171 MANET scenarios, an interface may dynamically switch from being an 172 ingress interface to being an egress interface, and vice-versa. 173 Addresses assigned to egress/ingress interfaces are used as 174 *inner* IP addresses during encapsulation. 176 MANET Interface 177 a MNR's attachment to a link in a MANET. A MANET interface is 178 "neutral" in its orientation, i.e., it is inherently neither 179 egress nor ingress. In particular, a packet may need to traverse 180 several MANET interfaces before it is forwarded via either an 181 egress or ingress interface. 183 MANET Local Address (MLA) 184 a MNR's IP address that is assigned to a MANET interface and 185 unique within the MANET. MLAs are used as identifiers for 186 operating the routing protocol and/or locators for packet 187 forwarding within the scope of the MANET; MLAs are also used as 188 *outer* IP addresses during encapsulation. 190 Virtual Ethernet (VET) 191 an imaginary shared link that connects all MNBRs in a MANET. 193 VET interface 194 a MNBR's attachment to a VET. The MNBR configures a VET interface 195 over a set of underlying MANET interface(s) belonging to the same 196 MANET. The VET interface encapsulates each inner IP packet in any 197 mid-layer headers plus an outer IP header then forwards it on an 198 underlying MANET interface such that the TTL/Hop Limit in the 199 inner header is not decremented as the packet traverses the MANET. 200 The VET interface presents an automatic tunneling abstraction that 201 represents the MANET as a unified shared link. 203 The following additional abbreviations are used throughout the 204 document: 206 CGA - Cryptographically Generated Address 207 DHCP[v4,v6] - the Dynamic Host Configuration Protocol 208 IP[v4,v6] - the Internet Protocol 209 ISATAP - Intra-Site Automatic Tunnel Addressing Protocol 210 ND - Neighbor Discovery 211 PIO - Prefix Information Option 212 RIO - Route Information Option 213 RS/RA - IPv6 Neighbor Discovery Router Solicitation/Advertisement 214 SEAL - Subnetwork Encapsulation and Adaptation Layer 215 SLAAC - IPv6 StateLess Address AutoConfiguation 217 3. MANET Autoconfiguration 219 Manet Autoconfiguration entails the configuration of addresses/ 220 prefixes and other information for routers in MANETs. Figure 1 below 221 depicts the conceptual model for a MNR: 222 Egress Interfaces (to Internet) 223 x x x 224 | | | 225 +------------------------+---+--------+----------+ 226 | Internal hosts | | | | M 227 | and routers | | .... | | A 228 | ,-. | +---+---+--------+---+ | N 229 | (H1 )---+ | /| | E 230 | | `-' | | I /*+------+--< T 231 | . | +---+ | | n|**| | 232 | . +--|R1 |---+-----+ t|**| | I 233 | . | +---+ | | Router V e|**+------+--< n 234 | | ,-. | | E r|**| . | t 235 | (H2 )---+ | Entity T f|**| . | e 236 | `-' | . | a|**| . | r 237 | . | c|**| . | f 238 | ,-. . | e \*+------+--< a 239 | (Hn )---------+ \| | c 240 | `-' +---+---+--------+---+ | e 241 | Ingress Interfaces | | .... | | s 242 | (to internal networks) | | | | 243 +------------------------+---+--------+----------+ 244 | | | 245 x x x 246 Ingress Interfaces (to attached networks) 248 Figure 1: MANET Router 250 MNRs configure one or more MANET interfaces and engage in any MANET 251 routing protocols over those interfaces. They also configure zero or 252 more egress interfaces that connect the MANET to the Internet, and 253 zero or more ingress interfaces (including internal virtual 254 interfaces such as a loopback interface) that attach other networks 255 to the MANET. MNRs that configure ingress/egress interfaces also act 256 as MNBRs, and configure a VET interface over a set of underlying 257 MANET interfaces belonging to the same MANET. MNRs obtain addresses/ 258 prefixes and other autoconfiguration information using the mechanisms 259 specified in the following sections: 261 3.1. MANET Interface Autoconfiguration 263 When a MNR joins a MANET, it first configures a unique IPv6 link- 264 local address on each MANET interface that requires an IPv6 link- 265 local capability and an IPv4 link-local address on each MANET 266 interface that requires an IPv4 link-local capability. IPv6 link- 267 local address generation mechanisms that provide sufficient 268 uniqueness include Cryptographically Generated Addresses (CGAs) 269 [RFC3972], StateLess Address AutoConfiguration (SLAAC) using EUI-64 270 interface identifiers [RFC4862], etc. The mechanisms specified in 271 [RFC3927] provide an IPv4 link-local address generation capability, 272 but with limited uniqueness properties. 274 Next, the MNR configures a MANET Local Address (MLA) of the outer IP 275 protocol version on each of its MANET interfaces and engages in any 276 MANET routing protocols on those interfaces. The MNR can configure 277 an MLA via explicit management, DHCP autoconfiguration, pseudo-random 278 self-generation from a suitably large address pool, or through an 279 alternate autoconfiguration mechanism. 281 DHCP configuration of MLAs may require support from relays within the 282 MANET that have already autoconfigured an MLA. For DHCPv6, relays 283 that do not already know the MLA of a server relay requests to the 284 'All_DHCP_Servers' site-scoped IPv6 multicast group. For DHCPv4, 285 relays that do not already know the MLA of a server relay requests to 286 the IPv4 multicast group address TBD (see: Section 4). DHCPv4 287 servers that delegate MLAs join the TBD multicast group and service 288 any DHCPv4 messages received for that group. 290 Self-generation of MLAs for IPv6 can be from a large IPv6 local-use 291 address range, e.g., IPv6 Unique Local Addresses [RFC4193]. Self- 292 generation of MLAs for IPv4 can be from a large IPv4 private address 293 range, e.g., 240/4 [I-D.fuller-240space]. When self-generation is 294 used alone, the MNR must continuously monitor the self-generated MLAs 295 through an in-service duplicate address detection mechanism, e.g., by 296 monitoring the routing protocol. 298 A combined approach using both DHCP and self-generation is also 299 possible. In this combined approach, the MNR first self-generates a 300 temporary MLA which it will use only for the purpose of procuring an 301 actual MLA from a DHCP server. Acting as a combined client/relay, 302 the MNR then uses the temporary MLA to engage in the routing protocol 303 and performs a relay-server exchange using the temporary MLA as an 304 address for the relay. When the DHCP server delegates an actual MLA, 305 the MNR abandons the temporary MLA, assigns the actual MLA to the 306 MANET interface and re-engages in the routing protocol. 308 3.2. MNBR/MNGW List Discovery 310 After the MNR configures its MANET interfaces, it next discovers the 311 list of MNBRs/MNGWs on the MANET. The list can be discovered through 312 information conveyed in the routing protocol or through the discovery 313 mechanisms outlined in [RFC5214], Section 8.3.2. 315 Identifying names/values for MNBRs/MNGWs (and/or the prefixes that 316 they aggregate) serve as an identifier for the MANET. 318 3.3. VET Interface Autoconfiguration 320 MNBRs configure a VET interface over a set of underlying MANET 321 interfaces belonging to the same MANET, where the VET interface 322 represents an attachment to a "virtual ethernet" that connects all 323 MNBRs in the MANET. Inner IP packets forwarded over the VET 324 interface are encapsulated in any mid-layer headers (e.g., IPsec, the 325 SEAL header, etc.) followed by an outer IP header, then submitted to 326 the outer IP forwarding engine for transmission on an underlying 327 MANET interface. 329 When IPv6 and IPv4 are used as the inner/outer protocols 330 (respectively), the MNBR autoconfigures an ISATAP link-local address 331 ([RFC5214], Section 6.2) on the VET interface to support packet 332 forwarding and operation of the IPv6 neighbor discovery protocol. 333 The ISATAP address embeds an IPv4 MLA assigned to an underlying MANET 334 interface, and need not be checked for uniqueness since the IPv4 MLA 335 itself was already determined to be unique. 337 After the MNBR configures a VET interface, it can communicate with 338 other MNBRs as on-link neighbors on the VET, i.e., it can confirm 339 reachability of other MNBRs through Neighbor Discovery (ND) and/or 340 DHCP exchanges over the VET interface. (The MNBR can also confirm 341 reachability through information conveyed in the MANET routing 342 protocol or through some other means associated with the specific 343 MANET subnetwork technology.) 345 The MNBR must be able to detect and recover from the loss of 346 neighbors on the VET due to e.g., MANET partitions, node failures, 347 etc. Mechanisms such as monitoring the routing protocol, ND 348 beaconing/polling, DHCP renewals/leasequeries, upper layer protocol 349 hints of forward progress, bidirectional forward detection, detection 350 of network attachment, etc. can be used according to the particular 351 deployment scenario. 353 3.4. Ingress Interface Autoconfiguration 355 MNBRs can acquire addresses and/or prefix delegations for assignment 356 on ingress interfaces through autoconfiguration exchanges with MNGWs 357 over the VET interface. These prefixes may be: 359 o global-scope and provider aggregated 361 o global-scope and provider-independent 363 o global-scope and 6to4 [RFC3056] 365 o unique-local scope and centrally administrated 367 o unique-local scope and locally assigned 369 o other non-link-local scope 371 Autoconfiguration considerations are discussed in the following 372 sections: 374 3.4.1. Autoconfiguration of IPv4 Prefixes 376 When IPv4 is used as the inner protocol, the MNBR discovers the 377 addresses of one or more MNGWs that delegate IPv4 prefixes then 378 performs a DHCPv4 prefix delegation exchange 379 [I-D.ietf-dhc-subnet-alloc] over the VET interface to obtain IPv4 380 prefixes for assignment and/or sub-delegation on its ingress 381 interfaces. 383 To perform the DHCPv4 prefix delegation exchange, a DHCPv4 client 384 function associated with the MNBR's host entity forwards a 385 DHCPDISCOVER message with a Subnet Allocation option to a relay 386 function associated with its router entity, i.e., the MNBR acts as 387 both client and relay. The relay function then forwards the message 388 over the VET interface to the DHCPv4 server on a MNGW. The forwarded 389 DHCPDISCOVER will elicit a DHCPOFFER from the server containing IPv4 390 prefix delegations, and the MNBR completes the delegation through a 391 DHCPREQUEST/DHCPACK exchange (again using the combined client/relay 392 approach). 394 When the MNBR receives IPv4 prefix delegations, it assigns the 395 prefixes on ingress interfaces; it does not assign them on the VET 396 interface or on MANET interfaces. The MNBR can also obtain /32 397 prefixes using DHCPv4 prefix delegation the same as for any IPv4 398 prefix, and can assign them as IPv4 addresses with /32 netmasks on 399 ingress interfaces (including loopback interfaces). 401 3.4.2. Autoconfiguration of IPv6 Addresses/Prefixes 403 When IPv6 is used as the inner protocol, the MNBR sends unicast IPv6 404 Router Solicitation (RS) messages to MNGWs over the VET interface to 405 receive Router Advertisements (RAs) with Prefix Information Options 406 (PIOs) and/or with the 'M' flag set to signify whether DHCPv6 407 autoconfiguration is available. If the MNBR receives an RA 408 containing PIOs with the 'A' and 'L' bits set to 1, it autoconfigures 409 IPv6 addresses from the prefixes using SLAAC and assigns them to the 410 VET interface. (When IPv4 is used as the outer IP protocol, the 411 addresses are autoconfigured and assigned as ISATAP addresses the 412 same as specified in [RFC5214].) 414 When the MNBR receives an RA with the 'M' flag set to 1, the MNGW 415 that sent the RA also hosts a DHCPv6 server capable of delegating 416 IPv6 prefixes. If the RA also contains PIOs with the 'L' bit set to 417 0, the MNBR can use them as hints of prefixes the server is willing 418 to delegate. For example, a MNGW can include a PIO with a prefix 419 such as 2001::DB8::/64 as a hint of an aggregated prefix from which 420 an MNBR can delegate a /128. Whether or not such hints are 421 available, the MNBR can use DHCPv6 prefix delegation [RFC3633] to 422 obtain IPv6 prefixes from the MNGW for assignment and/or sub- 423 delegation on its ingress interfaces. 425 The MNBR can obtain prefixes using either a 2-message or 4-message 426 DHCPv6 exchange [RFC3315]. To perform the 2-message exchange, a 427 DHCPv6 client function associated with the MNBR's host entity 428 forwards a Solicit message with an IA_PD option to a relay function 429 associated with its router entity, i.e., the MNBR acts as both client 430 and relay. The relay function then forwards the message over the VET 431 interface to the DHCPv6 server. The forwarded Solicit message will 432 elicit a Reply from the server containing IPv6 prefix delegations. 433 When the MNBR receives IPv6 prefix delegations, it assigns the 434 prefixes on ingress interfaces; it does not assign them on the VET 435 interface or on MANET interfaces. 437 The MNBR can also obtain /128 prefixes using DHCPv6 prefix delegation 438 the same as for any IPv6 prefix. When the MNBR receives a prefix 439 delegation hint (see above) it can self-generate an address from the 440 prefix using mechanisms such as CGAs [RFC3972], IPv6 privacy address 441 [RFC4941], etc. without assigning the address to an interface. The 442 MNBR can then issue either a 2-message or 4-message exchange as above 443 to propose this address as a /128 prefix to the DHCPv6 server per 444 Section 7 of [RFC3633]. The server will check the proposed prefix 445 for consistency and uniqueness, then return it in its reply to the 446 MNBR if it was able to delegate the prefix. 448 When no prefix delegation hints are available, the MNBR can attempt 449 delegation of a /128 prefix using "prefix substitution" during a 450 4-message exchange. The MNBR first sends a DHCPv6 Solicit asking the 451 server for an ordinary /128 prefix delegation, then interprets the 452 leading 64 bits of the /128 prefix offered in the server's Advertise 453 message as a /64 prefix delegation hint. The MNBR then self- 454 generates an address from this /64 as above, then substitutes the 455 resulting /128 prefix for the one offered by the server in the 456 concluding Request/Reply of the 4-message exchange. As above, the 457 server will return the prefix in its reply to the MNBR if it was able 458 to delegate the prefix. 460 When the MNBR receives /128 prefix delegations, it can assign them as 461 IPv6 addresses with /128 prefix lengths on ingress interfaces 462 (including loopback interfaces). 464 3.4.3. Prefix and Route Maintenance 466 When DHCP prefix delegation is used, the MNGW's DHCP server ensures 467 that the delegations are unique within the MANET and that its routing 468 function will forward IP packets over the VET interface to the MNBR 469 to which the prefix was delegated. The prefix delegation remains 470 active as long as the MNBR continues to issue renewals over the VET 471 interface before the lease lifetime expires. The lease lifetime also 472 keeps the delegation state active even if the link between the MNBR 473 and MNGW is disrupted for a period of time (e.g., due to a MANET 474 partition) before being reestablished (e.g., due to a MANET merge). 476 Since the DHCP client and relay are co-resident on the same MNBR, no 477 special coordination is necessary for the MNGW to maintain routing 478 information. The MNGW simply retains forwarding information base 479 entries that identify the MNBR as the next-hop toward the prefix via 480 the VET interface, and issues redirects over the VET interface the 481 same as for any link. 483 3.5. Portable IP Prefixes 485 Independent of any MNGW-aggregated addresses/prefixes (see: 486 Section 3.4), a MNBR can retain portable IP prefixes (e.g., taken 487 from a home network) as it travels between visited networks as long 488 it coordinates in some fashion, e.g., with a mapping agent, prefix 489 aggregation authority, etc. MNBRs that use IPv6 as the inner 490 protocol can also self-generate portable IPv6 Unique Local Address 491 (ULA) prefixes [RFC4193][I-D.ietf-ipv6-ula-central] and sub-delegate 492 them on networks connected on their ingress interfaces. 494 Such portable prefixes are not aggregated, redistributed or 495 advertised by MNGWs and can therefore travel with the MNBR as it 496 moves to new visited networks and/or configures peering arrangements 497 with other nodes. Generation and coordination of portable prefixes 498 can therefore occur independently of any other autoconfiguration 499 considerations. 501 3.6. Forwarding Packets to Off-MANET Destinations 503 MNBRs forward IP packets to off-MANET destinations via the VET 504 interface using another MNBR's address as the inner next-hop address. 505 For IPv6-in-IPv4 encapsulation using an ISATAP next-hop address, 506 determination of the outer destination address is through static 507 extraction of the embedded IPv4 address. For other IP-in-IP 508 encapsulations, determination of the outer destination address may 509 require additional supporting mechanisms. 511 MNBRs that use IPv6 as the inner protocol can discover default router 512 preferences and more-specific routes [RFC4191] by sending an RS over 513 the VET interface to elicit an RA from another MNBR. After default 514 and/or more-specific routes are discovered, the MNBR can forward IP 515 packets via a specific MNBR as the next-hop router on the VET 516 interface. When multiple default routers are available on the VET 517 interface, the MNBR can use default router preferences, traffic 518 engineering configurations, etc. to select the best exit router. 520 3.7. MANET-Local Communications 522 When permitted by policy, pairs of MNRs that configure the endpoints 523 of a communications session can avoid VET encapsulation by directly 524 invoking the outer IP protocol using MLAs assigned to their MANET 525 interfaces. For example, when the outer protocol is IPv4 a pair of 526 communicating MNRs can use IPv4 MLAs for direct communications over 527 their MANET interfaces without using the VET interface. 529 3.8. Multicast 531 In multicast-capable deployments, MNRs provide a MANET-wide 532 multicasting service such as Simplified Multicast Forwarding (SMF) 533 [I-D.ietf-manet-smf] over their MANET interfaces so that outer IP 534 multicast messages of site- or greater scope will be propagated 535 across the MANET. For these deployments, MNBRs can also provide an 536 inner IP multicast capability over their VET interfaces through 537 mapping of the inner IP multicast address space to the outer IP 538 multicast address space. 540 MNBRs encapsulate inner IP multicast messages sent over the VET 541 interface in any mid-layer headers (e.g., IPsec, SEAL, etc.) plus an 542 outer IP header with a site-scoped outer IP multicast address as the 543 destination. For the case of IPv6 and IPv4 as the inner/outer 544 protocols (respectively), [RFC2529] provides mappings from the IPv6 545 multicast address space to the IPv4 multicast address space. 547 For multicast-capable MANETs, use of the inner IP multicast service 548 for operating the ND protocol over the VET is available but should be 549 used sparingly to minimize MANET-wide flooding. Therefore, MNBRs 550 should use unicast ND services over the VET interface instead of 551 multicast whenever possible. 553 3.9. Service Discovery 555 MANET-wide service discovery can be accommodated by a suitable name- 556 to-address resolution service. Examples of flooding-based services 557 include the use of LLMNR [RFC4759] over the VET interface or mDNS 558 [I-D.cheshire-dnsext-multicastdns] over an underlying MANET 559 interface. More scalable and efficient service discovery mechanisms 560 for MANETs are for further study. 562 3.10. Separation of IP Addressing Domains 564 When the inner and outer IP protocols are different (i.e., IPv6-in- 565 IPv4 or IPv4-in-IPv6), the dual-stack orientation provides a natural 566 separation between the inner and outer IP addressing domains, and 567 separate default routes can be configured for each domain. 569 When the inner and outer IP protocols are the same (i.e., IPv4-in- 570 IPv4 or IPv6-in-IPv6) separation between inner and outer IP 571 addressing domains can only be determined through the examination of 572 IP prefixes (else, the inner and outer IP addressing domains would 573 overlap). In that case, special configurations/mechanisms may be 574 necessary to support unambiguous determination of when to encapsulate 575 using the VET interface vs when to forward using a MANET interface. 576 In certain use cases, comingling the inner and outer addressing 577 domains directly over MANET interfaces and without invoking VET 578 encapsulation may be acceptable. 580 4. IANA Considerations 582 A site-scoped IPv4 multicast group (TBD) for DHCPv4 server discovery 583 is requested. The group should be allocated from the IPv4 multicast 584 site-local scope address block the same as for '239.255.2.2' (i.e., 585 the IPv4 multicast group allocated for the 'rasadv' protocol 586 [RASADV]). 588 5. Security Considerations 590 Security considerations for MANETs are found in 591 [RFC2501][I-D.ietf-autoconf-manetarch] and apply also to the 592 mechanisms and procedures specified in this document. 594 Security considerations for MANET routing protocols that may be used 595 within this context are found in their respective specifications. 597 6. Related Work 599 The authors acknowledge the work done by Brian Carpenter and Cyndi 600 Jung in [RFC2529] that introduced the concept of intra-site automatic 601 tunneling. This concept was later called: "Virtual Ethernet" and 602 investigated by Quang Nguyen under the guidance of Dr. Lixia Zhang. 604 Telcordia has proposed DHCP-related solutions for the CECOM MOSAIC 605 program. The Naval Research Lab (NRL) Information Technology 606 Division uses DHCP in their MANET research testbeds. Various IETF 607 AUTOCONF working group proposals have suggested similar mechanisms. 609 7. Acknowledgements 611 The following individuals gave direct and/or indirect input that was 612 essential to the work: Jari Arkko, Teco Boot, Emmanuel Bacelli, James 613 Bound, Thomas Clausen, Eric Fleischman, Bob Hinden, Joe Macker, 614 Thomas Narten, Alexandru Petrescu, Jinmei Tatuya, Dave Thaler, 615 Michaela Vanderveen and others in the IETF AUTOCONF and MANET working 616 groups. Many others have provided guidance over the course of many 617 years. 619 8. Contributors 621 Thomas Henderson (thomas.r.henderson@boeing.com) contributed to this 622 document. Ian Chakeres (ian.chakeres@gmail.com) contributed to 623 earlier versions of the document. 625 9. References 627 9.1. Normative References 629 [RFC0791] Postel, J., "Internet Protocol", STD 5, RFC 791, 630 September 1981. 632 [RFC0826] Plummer, D., "Ethernet Address Resolution Protocol: Or 633 converting network protocol addresses to 48.bit Ethernet 634 address for transmission on Ethernet hardware", STD 37, 635 RFC 826, November 1982. 637 [RFC2131] Droms, R., "Dynamic Host Configuration Protocol", 638 RFC 2131, March 1997. 640 [RFC2460] Deering, S. and R. Hinden, "Internet Protocol, Version 6 641 (IPv6) Specification", RFC 2460, December 1998. 643 [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., 644 and M. Carney, "Dynamic Host Configuration Protocol for 645 IPv6 (DHCPv6)", RFC 3315, July 2003. 647 [RFC3633] Troan, O. and R. Droms, "IPv6 Prefix Options for Dynamic 648 Host Configuration Protocol (DHCP) version 6", RFC 3633, 649 December 2003. 651 [RFC4191] Draves, R. and D. Thaler, "Default Router Preferences and 652 More-Specific Routes", RFC 4191, November 2005. 654 [RFC4861] Narten, T., Nordmark, E., Simpson, W., and H. Soliman, 655 "Neighbor Discovery for IP version 6 (IPv6)", RFC 4861, 656 September 2007. 658 [RFC4862] Thomson, S., Narten, T., and T. Jinmei, "IPv6 Stateless 659 Address Autoconfiguration", RFC 4862, September 2007. 661 [RFC5214] Templin, F., Gleeson, T., and D. Thaler, "Intra-Site 662 Automatic Tunnel Addressing Protocol (ISATAP)", RFC 5214, 663 March 2008. 665 9.2. Informative References 667 [I-D.cheshire-dnsext-multicastdns] 668 Cheshire, S. and M. Krochmal, "Multicast DNS", 669 draft-cheshire-dnsext-multicastdns-06 (work in progress), 670 August 2006. 672 [I-D.fuller-240space] 673 Fuller, V., "Reclassifying 240/4 as usable unicast address 674 space", draft-fuller-240space-02 (work in progress), 675 March 2008. 677 [I-D.ietf-autoconf-manetarch] 678 Chakeres, I., Macker, J., and T. Clausen, "Mobile Ad hoc 679 Network Architecture", draft-ietf-autoconf-manetarch-07 680 (work in progress), November 2007. 682 [I-D.ietf-dhc-subnet-alloc] 683 Johnson, R., "Subnet Allocation Option", 684 draft-ietf-dhc-subnet-alloc-06 (work in progress), 685 November 2007. 687 [I-D.ietf-ipv6-ula-central] 688 Hinden, R., "Centrally Assigned Unique Local IPv6 Unicast 689 Addresses", draft-ietf-ipv6-ula-central-02 (work in 690 progress), June 2007. 692 [I-D.ietf-manet-smf] 693 Macker, J. and S. Team, "Simplified Multicast Forwarding 694 for MANET", draft-ietf-manet-smf-07 (work in progress), 695 February 2008. 697 [I-D.templin-seal] 698 Templin, F., "Subnetwork Encapsulation and Adaptation 699 Layer", draft-templin-seal-03 (work in progress), 700 February 2008. 702 [RASADV] MSDN, "Remote Access Server Advertisement (RASADV) 703 Protocol Specification, 704 http://msdn2.microsoft.com/en-us/library/cc240334.aspx", 705 March 2008. 707 [RFC2501] Corson, M. and J. Macker, "Mobile Ad hoc Networking 708 (MANET): Routing Protocol Performance Issues and 709 Evaluation Considerations", RFC 2501, January 1999. 711 [RFC2529] Carpenter, B. and C. Jung, "Transmission of IPv6 over IPv4 712 Domains without Explicit Tunnels", RFC 2529, March 1999. 714 [RFC3753] Manner, J. and M. Kojo, "Mobility Related Terminology", 715 RFC 3753, June 2004. 717 [RFC3819] Karn, P., Bormann, C., Fairhurst, G., Grossman, D., 718 Ludwig, R., Mahdavi, J., Montenegro, G., Touch, J., and L. 719 Wood, "Advice for Internet Subnetwork Designers", BCP 89, 720 RFC 3819, July 2004. 722 [RFC3927] Cheshire, S., Aboba, B., and E. Guttman, "Dynamic 723 Configuration of IPv4 Link-Local Addresses", RFC 3927, 724 May 2005. 726 [RFC3972] Aura, T., "Cryptographically Generated Addresses (CGA)", 727 RFC 3972, March 2005. 729 [RFC4193] Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast 730 Addresses", RFC 4193, October 2005. 732 [RFC4301] Kent, S. and K. Seo, "Security Architecture for the 733 Internet Protocol", RFC 4301, December 2005. 735 [RFC4759] Stastny, R., Shockey, R., and L. Conroy, "The ENUM Dip 736 Indicator Parameter for the "tel" URI", RFC 4759, 737 December 2006. 739 [RFC4903] Thaler, D., "Multi-Link Subnet Issues", RFC 4903, 740 June 2007. 742 [RFC4941] Narten, T., Draves, R., and S. Krishnan, "Privacy 743 Extensions for Stateless Address Autoconfiguration in 744 IPv6", RFC 4941, September 2007. 746 Appendix A. Duplicate Address Detection (DAD) Considerations 748 Pre-service DAD for an MLA assigned on a MANET interface (such as 749 specified in [RFC4862]) would require either flooding the entire 750 MANET or somehow discovering a link in the MANET on which a node that 751 configures a duplicate address is attached and performing a localized 752 DAD exchange on that link. But, the control message overhead for 753 such a MANET-wide DAD would be substantial and prone to false- 754 negatives due to packet loss and intermittent connectivity. An 755 alternative to pre-service DAD is to autoconfigure pseudo-random MLAs 756 on MANET interfaces and employ a passive in-service DAD (e.g., one 757 that monitors routing protocol messages for duplicate assignments). 759 Pseudo-random IPv6 MLAs can be generated with mechanisms such as 760 CGAs, IPv6 privacy addresses, etc. with very small probability of 761 collision. Pseudo-random IPv4 MLAs can be generated through random 762 assignment from a suitably large IPv4 prefix space, e.g., the soon- 763 to-be-reclassified 240/4 space [I-D.fuller-240space]. 765 Consistent operational practices can assure uniqueness for MNGW- 766 aggregated addresses/prefixes, while statistical properties for 767 pseudo-random address self-generation can assure uniqueness for the 768 MLAs assigned on a MNR's MANET interfaces. Still, an MLA delegation 769 authority should be used when available, while a passive in-service 770 DAD mechanism should be used to detect MLA duplications when their is 771 no MLA delegation authority. 773 Appendix B. Change Log 775 (Note to RFC editor - this section to be removed before publication 776 as an RFC.) 778 Changes from -11 to 12: 780 o title change to "MANET Autoconfiguration using Virtual Ethernet". 782 o DHCP prefix delegation for both IPv4 and IPv6 as primary address 783 delegation mechanism. 785 o IPv6 SLAAC for address autoconfiguration on the VET interface. 787 o fixed editorials based on comments received. 789 Changes from -10 to 11: 791 o removed the transparent/opaque VET portal abstractions. 793 o removed routing header as an option for MANET exit router 794 selection. 796 o included IPv6 SLAAC as an endorsed address configuration mechanism 797 for the VET interface. 799 Changes from -08 to -09: 801 o Introduced the term "VET". 803 o Changed address delegation language to speak of "MNBR-aggregated" 804 instead of global/local. 806 o Updated figures 1-3. 808 o Explained why a MANET interface is "neutral". 810 o Removed DHCPv4 "MLA Address option". Now, MNBRs can only be 811 DHCPv4 servers; not relays. 813 Changes from -07 to -08: 815 o changed terms "unenhanced" and "enhanced" to "transparent" and 816 "opaque". 818 o revised MANET Router diagram. 820 o introduced RFC3753 terminology for Mobile Router; ingress/egress 821 interface. 823 o changed abbreviations to "MNR" and "MNBR". 825 o added text on ULAs and ULA-Cs to "Self-Generated Addresses". 827 o rearranged Section 3.1. 829 o various minor text cleanups 831 Changes from -06 to -07: 833 o added MANET Router diagram. 835 o added new references 837 o various minor text cleanups 839 Changed from -05 to -06: 841 o Changed terms "raw" and "cooked" to "unenhanced" and "enhanced". 843 o minor changes to preserve generality 845 Changed from -04 to -05: 847 o introduced conceptual "virtual ethernet" model. 849 o support "raw" and "cooked" modes as equivalent access methods on 850 the virutal ethernet. 852 Changed from -03 to -04: 854 o introduced conceptual "imaginary shared link" as a representation 855 for a MANET. 857 o discussion of autonomous system and site abstractions for MANETs 859 o discussion of autoconfiguration of CGAs 861 o new appendix on IPv6 StateLess Address AutoConfiguration 863 Changes from -02 to -03: 865 o updated terminology based on RFC2461 "asymmetric reachability" 866 link type; IETF67 MANET Autoconf wg discussions. 868 o added new appendix on IPv6 Neighbor Discovery and Duplicate 869 Address Detection 871 o relaxed DHCP server deployment considerations allow DHCP servers 872 within the MANET itself 874 Changes from -01 to -02: 876 o minor updates for consistency with recent developments 878 Changes from -00 to -01: 880 o new text on DHCPv6 prefix delegation and multilink subnet 881 considerations. 883 o various editorial changes 885 Authors' Addresses 887 Fred L. Templin (editor) 888 Boeing Phantom Works 889 P.O. Box 3707 MC 7L-49 890 Seattle, WA 98124 891 USA 893 Email: fltemplin@acm.org 895 Steven W. Russert 896 Boeing Phantom Works 897 P.O. Box 3707 MC 7L-49 898 Seattle, WA 98124 899 USA 901 Email: steven.w.russert@boeing.com 903 Seung Yi 904 Boeing Phantom Works 905 P.O. Box 3707 MC 7L-49 906 Seattle, WA 98124 907 USA 909 Email: seung.yi@boeing.com 911 Full Copyright Statement 913 Copyright (C) The IETF Trust (2008). 915 This document is subject to the rights, licenses and restrictions 916 contained in BCP 78, and except as set forth therein, the authors 917 retain all their rights. 919 This document and the information contained herein are provided on an 920 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 921 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 922 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 923 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 924 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 925 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 927 Intellectual Property 929 The IETF takes no position regarding the validity or scope of any 930 Intellectual Property Rights or other rights that might be claimed to 931 pertain to the implementation or use of the technology described in 932 this document or the extent to which any license under such rights 933 might or might not be available; nor does it represent that it has 934 made any independent effort to identify any such rights. Information 935 on the procedures with respect to rights in RFC documents can be 936 found in BCP 78 and BCP 79. 938 Copies of IPR disclosures made to the IETF Secretariat and any 939 assurances of licenses to be made available, or the result of an 940 attempt made to obtain a general license or permission for the use of 941 such proprietary rights by implementers or users of this 942 specification can be obtained from the IETF on-line IPR repository at 943 http://www.ietf.org/ipr. 945 The IETF invites any interested party to bring to its attention any 946 copyrights, patents or patent applications, or other proprietary 947 rights that may cover technology that may be required to implement 948 this standard. Please address the information to the IETF at 949 ietf-ipr@ietf.org.