idnits 2.17.1 draft-ietf-homenet-front-end-naming-delegation-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. 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 and authors Copyright Line does not match the current year -- The document date (October 27, 2017) is 2372 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Obsolete normative reference: RFC 2845 (Obsoleted by RFC 8945) ** Obsolete normative reference: RFC 4960 (Obsoleted by RFC 9260) ** Obsolete normative reference: RFC 5246 (Obsoleted by RFC 8446) ** Obsolete normative reference: RFC 6347 (Obsoleted by RFC 9147) == Outdated reference: A later version (-24) exists of draft-ietf-homenet-naming-architecture-dhc-options-03 Summary: 4 errors (**), 0 flaws (~~), 2 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 HOMENET D. Migault (Ed) 3 Internet-Draft Ericsson 4 Intended status: Standards Track R. Weber 5 Expires: April 30, 2018 Nominum 6 R. Hunter 7 Globis Consulting BV 8 C. Griffiths 10 W. Cloetens 11 SoftAtHome 12 October 27, 2017 14 Outsourcing Home Network Authoritative Naming Service 15 draft-ietf-homenet-front-end-naming-delegation-06 17 Abstract 19 Designation of services and devices of a home network is not user 20 friendly, and mechanisms should enable a user to designate services 21 and devices inside a home network using names. 23 In order to enable internal communications while the home network 24 experiments Internet connectivity shortage, the naming service should 25 be hosted on a device inside the home network. On the other hand, 26 home networks devices have not been designed to handle heavy loads. 27 As a result, hosting the naming service on such home network device, 28 visible on the Internet exposes this device to resource exhaustion 29 and other attacks, which could make the home network unreachable, and 30 most probably would also affect the internal communications of the 31 home network. 33 As result, home networks may prefer not serving the naming service 34 for the Internet, but instead prefer outsourcing it to a third party. 35 This document describes a mechanisms that enables the Home Network 36 Authority (HNA) to outsource the naming service to the Outsourcing 37 Infrastructure. 39 Status of This Memo 41 This Internet-Draft is submitted in full conformance with the 42 provisions of BCP 78 and BCP 79. 44 Internet-Drafts are working documents of the Internet Engineering 45 Task Force (IETF). Note that other groups may also distribute 46 working documents as Internet-Drafts. The list of current Internet- 47 Drafts is at https://datatracker.ietf.org/drafts/current/. 49 Internet-Drafts are draft documents valid for a maximum of six months 50 and may be updated, replaced, or obsoleted by other documents at any 51 time. It is inappropriate to use Internet-Drafts as reference 52 material or to cite them other than as "work in progress." 54 This Internet-Draft will expire on April 30, 2018. 56 Copyright Notice 58 Copyright (c) 2017 IETF Trust and the persons identified as the 59 document authors. All rights reserved. 61 This document is subject to BCP 78 and the IETF Trust's Legal 62 Provisions Relating to IETF Documents 63 (https://trustee.ietf.org/license-info) in effect on the date of 64 publication of this document. Please review these documents 65 carefully, as they describe your rights and restrictions with respect 66 to this document. Code Components extracted from this document must 67 include Simplified BSD License text as described in Section 4.e of 68 the Trust Legal Provisions and are provided without warranty as 69 described in the Simplified BSD License. 71 Table of Contents 73 1. Requirements notation . . . . . . . . . . . . . . . . . . . . 3 74 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 75 3. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 76 4. Architecture Description . . . . . . . . . . . . . . . . . . 6 77 4.1. Architecture Overview . . . . . . . . . . . . . . . . . . 6 78 4.2. Example: Homenet Zone . . . . . . . . . . . . . . . . . . 8 79 4.3. Example: HNA necessary parameters for outsourcing . . . . 10 80 5. Synchronization between HNA and the Synchronization Server . 11 81 5.1. Synchronization with a Hidden Primary . . . . . . . . . . 11 82 5.2. Securing Synchronization . . . . . . . . . . . . . . . . 12 83 5.3. HNA Security Policies . . . . . . . . . . . . . . . . . . 14 84 6. DNSSEC compliant Homenet Architecture . . . . . . . . . . . . 14 85 6.1. Zone Signing . . . . . . . . . . . . . . . . . . . . . . 14 86 6.2. Secure Delegation . . . . . . . . . . . . . . . . . . . . 16 87 7. Handling Different Views . . . . . . . . . . . . . . . . . . 17 88 7.1. Misleading Reasons for Local Scope DNS Zone . . . . . . . 17 89 7.2. Consequences . . . . . . . . . . . . . . . . . . . . . . 18 90 7.3. Guidance and Recommendations . . . . . . . . . . . . . . 18 91 8. Homenet Reverse Zone . . . . . . . . . . . . . . . . . . . . 19 92 9. Renumbering . . . . . . . . . . . . . . . . . . . . . . . . . 19 93 9.1. Hidden Primary . . . . . . . . . . . . . . . . . . . . . 20 94 9.2. Synchronization Server . . . . . . . . . . . . . . . . . 21 95 10. Privacy Considerations . . . . . . . . . . . . . . . . . . . 22 96 11. Security Considerations . . . . . . . . . . . . . . . . . . . 22 97 11.1. Names are less secure than IP addresses . . . . . . . . 22 98 11.2. Names are less volatile than IP addresses . . . . . . . 23 99 11.3. DNS Reflection Attacks . . . . . . . . . . . . . . . . . 23 100 11.3.1. Reflection Attack involving the Hidden Primary . . . 23 101 11.3.2. Reflection Attacks involving the Synchronization 102 Server . . . . . . . . . . . . . . . . . . . . . . . 25 103 11.3.3. Reflection Attacks involving the Public 104 Authoritative Servers . . . . . . . . . . . . . . . 26 105 11.4. Flooding Attack . . . . . . . . . . . . . . . . . . . . 26 106 11.5. Replay Attack . . . . . . . . . . . . . . . . . . . . . 26 107 12. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 27 108 13. Acknowledgment . . . . . . . . . . . . . . . . . . . . . . . 27 109 14. References . . . . . . . . . . . . . . . . . . . . . . . . . 27 110 14.1. Normative References . . . . . . . . . . . . . . . . . . 27 111 14.2. Informational References . . . . . . . . . . . . . . . . 30 112 Appendix A. Document Change Log . . . . . . . . . . . . . . . . 31 113 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 33 115 1. Requirements notation 117 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 118 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 119 document are to be interpreted as described in [RFC2119]. 121 2. Introduction 123 IPv6 provides global end to end IP reachability. End users prefer to 124 use names instead of long and complex IPv6 addresses when accessing 125 services hosted in the home network. 127 Customer Edge Routers and other Customer Premises Equipment (CPEs) 128 are already providing IPv6 connectivity to the home network, and 129 generally provide IPv6 addresses or prefixes to the nodes of the home 130 network. In addition, [RFC7368] recommends that home networks be 131 resilient to connectivity disruption from the ISP. This could be 132 achieved by a dedicated device inside the home network that builds, 133 serves or manage the Homenet Zone, thus providing bindings between 134 names and IP addresses. 136 CPEs are of course good candidates to manage the binding between 137 names and IP addresses of nodes. However, this could also be 138 performed by another device in the home network that is not a CPE. 139 In addition, a given home network may have multiple nodes that may 140 implement this functionality. Since management of the Homenet Zone 141 involves DNS specific mechanisms that cannot be distributed (primary 142 server), when multiple nodes can potentially manage the Homenet Zone, 143 a single node needs to be selected. This selected node is designated 144 as the Homenet Naming Authority (HNA). 146 CPEs, Homenet Naming Authority, as well as home network devices are 147 usually low powered devices not designed not for terminating heavy 148 traffic. As a result, hosting an authoritative DNS service on the 149 Internet may expose the home network to resource exhaustion and other 150 attacks. This may isolate the home network from the Internet and 151 also impact the services hosted by the such an home network device, 152 thus affecting overall home network communication. 154 In order to avoid resource exhaustion and other attacks, this 155 document describes an architecture that outsources the authoritative 156 naming service of the home network. More specifically, the Homenet 157 Naming Authority builds the Homenet Zone and outsources it to an 158 Outsourcing Infrastructure. The Outsourcing Infrastructure in in 159 charge of publishing the corresponding Public Homenet Zone on the 160 Internet. 162 Section 4.1 provides an architecture description that describes the 163 relation between the Homenet Naming Authority and the Outsourcing 164 Architecture. In order to keep the Public Homenet Zone up-to-date 165 Section 5 describes how the Homenet Zone and the Public Homenet Zone 166 can be synchronized. The proposed architecture aims at deploying 167 DNSSEC, and the Public Homenet Zone is expected to be signed with a 168 secure delegation. The zone signing and secure delegation may be 169 performed either by the Homenet Naming Authority or by the 170 Outsourcing Infrastructure. Section 6 discusses these two 171 alternatives. Section 7 discusses the consequences of publishing 172 multiple representations of the same zone also commonly designated as 173 views. This section provides guidance to limit the risks associated 174 with multiple views. Section 8 discusses management of the reverse 175 zone. Section 9 discusses how renumbering should be handled. 176 Finally, Section 10 and Section 11 respectively discuss privacy and 177 security considerations when outsourcing the Homenet Zone. 179 3. Terminology 181 - Customer Premises Equipment: (CPE) is a router providing 182 connectivity to the home network. 184 - Homenet Naming Authority: (HNA) is a home network node 185 responsible to manage the Homenet Zone. This includes building 186 the Homenet Zone, as well as managing the distribution of that 187 Homenet Zone through the Outsourcing Infrastructure. 189 - Registered Homenet Domain: is the Domain Name associated to the 190 home network. 192 - Homenet Zone: is the DNS zone associated with the home network. 193 It is designated by its Registered Homenet Domain. This zone 194 is built by the HNA and contains the bindings between names and 195 IP addresses of the nodes in the home network. The HNA 196 synchronizes the Homenet Zone with the Synchronization Server 197 via a hidden primary / secondary architecture. The Outsourcing 198 Infrastructure may process the Homenet Zone - for example 199 providing DNSSEC signing - to generate the Public Homenet Zone. 200 This Public Homenet Zone is then transmitted to the Public 201 Authoritative Server(s) that publish it on the Internet. 203 - Public Homenet Zone: is the public version of the Homenet Zone. 204 It is expected to be signed with DNSSEC. It is hosted by the 205 Public Authoritative Server(s), which are authoritative for 206 this zone. The Public Homenet Zone and the Homenet Zone might 207 be different. For example some names might not become 208 reachable from the Internet, and thus not be hosted in the 209 Public Homenet Zone. Another example of difference may also 210 occur when the Public Homenet Zone is signed whereas the 211 Homenet Zone is not signed. 213 - Outsourcing Infrastructure: is the combination of the 214 Synchronization Server and the Public Authoritative Server(s). 216 - Public Authoritative Servers: are the authoritative name servers 217 hosting the Public Homenet Zone. Name resolution requests for 218 the Homenet Domain are sent to these servers. For resiliency 219 the Public Homenet Zone SHOULD be hosted on multiple servers. 221 - Synchronization Server: is the server with which the HNA 222 synchronizes the Homenet Zone. The Synchronization Server is 223 configured as a secondary and the HNA acts as primary. There 224 MAY be multiple Synchronization Servers, but the text assumes a 225 single server. In addition, the text assumes the 226 Synchronization Server is a separate entity. This is not a 227 requirement, and when the HNA signs the zone, the 228 synchronization function might also be operated by the Public 229 Authoritative Servers. 231 - Homenet Reverse Zone: The reverse zone file associated with the 232 Homenet Zone. 234 - Reverse Public Authoritative Servers: are the authoritative name 235 server(s) hosting the Public Homenet Reverse Zone. Queries for 236 reverse resolution of the Homenet Domain are sent to this 237 server. Similarly to Public Authoritative Servers, for 238 resiliency, the Homenet Reverse Zone SHOULD be hosted on 239 multiple servers. 241 - Reverse Synchronization Server: is the server with which the HNA 242 synchronizes the Homenet Reverse Zone. It is configured as a 243 secondary and the HNA acts as primary. There MAY be multiple 244 Reverse Synchronization Servers, but the text assumes a single 245 server. In addition, the text assumes the Reverse 246 Synchronization Server is a separate entity. This is not a 247 requirement, and when the HNA signs the zone, the 248 synchronization function might also be operated by the Reverse 249 Public Authoritative Servers. 251 - Hidden Primary: designates the primary server of the HNA, that 252 synchronizes the Homenet Zone with the Synchronization Server. 253 A primary / secondary architecture is used between the HNA and 254 the Synchronization Server. The hidden primary is not expected 255 to serve end user queries for the Homenet Zone as a regular 256 primary server would. The hidden primary is only known to its 257 associated Synchronization Server. 259 4. Architecture Description 261 This section describes the architecture for outsourcing the 262 authoritative naming service from the HNA to the Outsourcing 263 Infrastructure. Section 4.1 describes the architecture, Section 4.2 264 and Section 4.3 illustrates this architecture and shows how the 265 Homenet Zone should be built by the HNA. It also lists the necessary 266 parameters the HNA needs to be able to outsource the authoritative 267 naming service. These two sections are informational and non- 268 normative. 270 4.1. Architecture Overview 272 Figure 1 provides an overview of the architecture. 274 The home network is designated by the Registered Homenet Domain Name 275 -- example.com in Figure 1. The HNA builds the Homenet Zone 276 associated with the home network. How the Homenet Zone is built is 277 out of the scope of this document. The HNA may host or interact with 278 multiple services to determine name-to-address mappings, such as a 279 web GUI, DHCP [RFC6644] or mDNS [RFC6762]. These services may 280 coexist and may be used to populate the Homenet Zone. This document 281 assumes the Homenet Zone has been populated with domain names that 282 are intended to be publicly published and that are publicly 283 reachable. More specifically, names associated with services or 284 devices that are not expected to be reachable from outside the home 285 network or names bound to non-globally reachable IP addresses MUST 286 NOT be part of the Homenet Zone. 288 Once the Homenet Zone has been built, the HNA does not host an 289 authoritative naming service, but instead outsources it to the 290 Outsourcing Infrastructure. The Outsourcing Infrastructure takes the 291 Homenet Zone as an input and publishes the Public Homenet Zone. If 292 the HNA does not sign the Homenet Zone, the Outsourcing 293 Infrastructure may instead sign it on behalf of the HNA. Figure 1 294 provides a more detailed description of the Outsourcing 295 Infrastructure, but overall, it is expected that the HNA provides the 296 Homenet Zone. Then the Public Homenet Zone is derived from the 297 Homenet Zone and published on the Internet. 299 As a result, DNS queries from the DNS resolvers on the Internet are 300 answered by the Outsourcing Infrastructure and do not reach the HNA. 301 Figure 1 illustrates the case of the resolution of node1.example.com. 303 home network +-------------------+ Internet 304 | | 305 | HNA | 306 | | +-----------------------+ 307 +-------+ |+-----------------+| | Public Authoritative | 308 | | || Homenet Zone || | Server(s) | 309 | node1 | || || |+---------------------+| 310 | | || || || Public Homenet Zone || 311 +-------+ || Homenet Domain ||=========|| || 312 || Name || ^ || (example.com) || 313 node1.\ || (example.com) || | |+---------------------+| 314 example.com |+-----------------+| | +-----------------------+ 315 +-------------------+ | ^ | 316 Synchronization | | 317 | | 318 DNSSEC resolution for node1.example.com | v 319 +-----------------------+ 320 | | 321 | DNSSEC Resolver | 322 | | 323 +-----------------------+ 325 Figure 1: Homenet Naming Architecture Description 327 The Outsourcing Infrastructure is described in Figure 2. The 328 Synchronization Server receives the Homenet Zone as an input. The 329 received zone may be transformed to output the Public Homenet Zone. 330 Various operations may be performed here, however this document only 331 considers zone signing as a potential operation. This should occur 332 only when the HNA outsources this operation to the Synchronization 333 Server. On the other hand, if the HNA signs the Homenet Zone itself, 334 the zone would be collected by the Synchronization Server and 335 directly transferred to the Public Authoritative Server(s). These 336 policies are discussed and detailed in Section 6 and Section 7. 338 Internet 340 +------------------------------------------------------+ 341 | Outsourcing Infrastructure | 342 +------------------------------------------------------+ 344 +----------------------+ +----------------------+ 345 | | | | 346 | Synchronization | | Public Authoritative | 347 | Server | | Server(s) | 348 | | | | 349 | +------------------+ | X |+--------------------+| 350 | | Homenet Zone | | ^ || Public Homenet Zone|| 351 =========>| | | | || || 352 ^ | | | | | || || 353 | | | (example.com) | | | || (example.com) || 354 | | +------------------+ | | |+--------------------+| 355 | +----------------------+ | +----------------------+ 356 | Homenet to Public Zone 357 Synchronization transformation 358 from the HNA 360 Figure 2: Outsourcing Infrastructure Description 362 4.2. Example: Homenet Zone 364 This section is not normative and intends to illustrate how the HNA 365 builds the Homenet Zone. 367 As depicted in Figure 1 and Figure 2, the Public Homenet Zone is 368 hosted on the Public Authoritative Server(s), whereas the Homenet 369 Zone is hosted on the HNA. Motivations for keeping these two zones 370 identical are detailed in Section 7, and this section considers that 371 the HNA builds the zone that will be effectively published on the 372 Public Authoritative Server(s). In other words "Homenet to Public 373 Zone transformation" is the identity also commonly designated as "no 374 operation" (NOP). 376 In that case, the Homenet Zone should configure its Name Server RRset 377 (NS) and Start of Authority (SOA) with the values associated with the 378 Public Authoritative Server(s). This is illustrated in Figure 3. 379 public.primary.example.net is the FQDN of the Public Authoritative 380 Server(s), and IP1, IP2, IP3, IP4 are the associated IP addresses. 381 Then the HNA should add the additional new nodes that enter the home 382 network, remove those that should be removed, and sign the Homenet 383 Zone. 385 $ORIGIN example.com 386 $TTL 1h 388 @ IN SOA public.primary.example.net 389 hostmaster.example.com. ( 390 2013120710 ; serial number of this zone file 391 1d ; secondary refresh 392 2h ; secondary retry time in case of a problem 393 4w ; secondary expiration time 394 1h ; maximum caching time in case of failed 395 ; lookups 396 ) 398 @ NS public.authoritative.servers.example.net 400 public.primary.example.net A @IP1 401 public.primary.example.net A @IP2 402 public.primary.example.net AAAA @IP3 403 public.primary.example.net AAAA @IP4 405 Figure 3: Homenet Zone 407 The SOA RRset is defined in [RFC1033], [RFC1035] and [RFC2308]. This 408 SOA is specific, as it is used for the synchronization between the 409 Hidden Primary and the Synchronization Server and published on the 410 DNS Public Authoritative Server(s).. 412 - MNAME: indicates the primary. In our case the zone is published 413 on the Public Authoritative Server(s), and its name MUST be 414 included. If multiple Public Authoritative Server(s) are 415 involved, one of them MUST be chosen. More specifically, the 416 HNA MUST NOT include the name of the Hidden Primary. 418 - RNAME: indicates the email address to reach the administrator. 419 [RFC2142] recommends using hostmaster@domain and replacing the 420 '@' sign by '.'. 422 - REFRESH and RETRY: indicate respectively in seconds how often 423 secondaries need to check the primary, and the time between two 424 refresh when a refresh has failed. Default values indicated by 425 [RFC1033] are 3600 (1 hour) for refresh and 600 (10 minutes) 426 for retry. This value might be too long for highly dynamic 427 content. However, the Public Authoritative Server(s) and the 428 HNA are expected to implement NOTIFY [RFC1996]. So whilst 429 shorter refresh timers might increase the bandwidth usage for 430 secondaries hosting large number of zones, it will have little 431 practical impact on the elapsed time required to achieve 432 synchronization between the Outsourcing Infrastructure and the 433 Hidden Master. As a result, the default values are acceptable. 435 EXPIRE: is the upper limit data SHOULD be kept in absence of 436 refresh. The default value indicated by [RFC1033] is 3600000 437 (approx. 42 days). In home network architectures, the HNA 438 provides both the DNS synchronization and the access to the 439 home network. This device may be plugged and unplugged by the 440 end user without notification, thus we recommend a long expiry 441 timer. 443 MINIMUM: indicates the minimum TTL. The default value indicated by 444 [RFC1033] is 86400 (1 day). For home network, this value MAY 445 be reduced, and 3600 (1 hour) seems more appropriate. 447 4.3. Example: HNA necessary parameters for outsourcing 449 This section specifies the various parameters required by the HNA to 450 configure the naming architecture of this document. This section is 451 informational, and is intended to clarify the information handled by 452 the HNA and the various settings to be done. 454 Synchronization Server may be configured with the following 455 parameters. These parameters are necessary to establish a secure 456 channel between the HNA and the Synchronization Server as well as to 457 specify the DNS zone that is in the scope of the communication: 459 - Synchronization Server: The associated FQDNs or IP addresses of 460 the Synchronization Server. IP addresses are optional and the 461 FQDN is sufficient. To secure the binding name and IP 462 addresses, a DNSSEC exchange is required. Otherwise, the IP 463 addresses should be entered manually. 465 - Authentication Method: How the HNA authenticates itself to the 466 Synchronization Server. This MAY depend on the implementation 467 but this should cover at least IPsec, DTLS and TSIG 469 - Authentication data: Associated Data. PSK only requires a single 470 argument. If other authentication mechanisms based on 471 certificates are used, then HNA private keys, certificates and 472 certification authority should be specified. 474 - Public Authoritative Server(s): The FQDN or IP addresses of the 475 Public Authoritative Server(s). It MAY correspond to the data 476 that will be set in the NS RRsets and SOA of the Homenet Zone. 477 IP addresses are optional and the FQDN is sufficient. To 478 secure the binding between name and IP addresses, a DNSSEC 479 exchange is required. Otherwise, the IP addresses should be 480 entered manually. 482 - Registered Homenet Domain: The domain name used to establish the 483 secure channel. This name is used by the Synchronization 484 Server and the HNA for the primary / secondary configuration as 485 well as to index the NOTIFY queries of the HNA when the HNA has 486 been renumbered. 488 Setting the Homenet Zone requires the following information. 490 - Registered Homenet Domain: The Domain Name of the zone. Multiple 491 Registered Homenet Domains may be provided. This will generate 492 the creation of multiple Public Homenet Zones. 494 - Public Authoritative Server(s): The Public Authoritative 495 Server(s) associated with the Registered Homenet Domain. 496 Multiple Public Authoritative Server(s) may be provided. 498 5. Synchronization between HNA and the Synchronization Server 500 The Homenet Reverse Zone and the Homenet Zone MAY be updated either 501 with DNS UPDATE [RFC2136] or using a primary / secondary 502 synchronization. The primary / secondary mechanism is preferred as 503 it scales better and avoids DoS attacks: First the primary notifies 504 the secondary that the zone must be updated and leaves the secondary 505 to proceed with the update when possible. Then, a NOTIFY message is 506 sent by the primary, which is a small packet that is less likely to 507 load the secondary. Finally, the AXFR query performed by the 508 secondary is a small packet sent over TCP (section 4.2 [RFC5936]), 509 which mitigates reflection attacks using a forged NOTIFY. On the 510 other hand, DNS UPDATE (which can be transported over UDP), requires 511 more processing than a NOTIFY, and does not allow the server to 512 perform asynchronous updates. 514 This document RECOMMENDS use of a primary / secondary mechanism 515 instead of the use of DNS UPDATE. This section details the primary / 516 secondary mechanism. 518 5.1. Synchronization with a Hidden Primary 520 Uploading and dynamically updating the zone file on the 521 Synchronization Server can be seen as zone provisioning between the 522 HNA (Hidden Primary) and the Synchronization Server (Secondary 523 Server). This can be handled either in band or out of band. 525 Note that there is no standard way to distribute a DNS primary 526 between multiple devices. As a result, if multiple devices are 527 candidate for hosting the Hidden Primary, some specific mechanisms 528 should be designed so the home network only selects a single HNA for 529 the Hidden Primary. Selection mechanisms based on HNCP [RFC7788] are 530 good candidates. 532 The Synchronization Server is configured as a secondary for the 533 Homenet Domain Name. This secondary configuration has been 534 previously agreed between the end user and the provider of the 535 Synchronization Server. In order to set the primary / secondary 536 architecture, the HNA acts as a Hidden Primary Server, which is a 537 regular authoritative DNS Server listening on the WAN interface. 539 The Hidden Primary Server SHOULD accept SOA [RFC1033], AXFR 540 [RFC1034], and IXFR [RFC1995] queries from its configured secondary 541 DNS server(s). The Hidden Primary Server SHOULD send NOTIFY messages 542 [RFC1996] in order to update Public DNS server zones as updates 543 occur. Because, the Homenet Zones are likely to be small, the HNA 544 MUST implement AXFR and SHOULD implement IXFR. 546 Hidden Primary Server differs from a regular authoritative server for 547 the home network by: 549 - Interface Binding: the Hidden Primary Server listens on the WAN 550 Interface, whereas a regular authoritative server for the home 551 network would listen on the home network interface. 553 - Limited exchanges: the purpose of the Hidden Primary Server is to 554 synchronize with the Synchronization Server, not to serve any 555 zones to end users. As a result, exchanges are performed with 556 specific nodes (the Synchronization Server). Further, exchange 557 types are limited. The only legitimate exchanges are: NOTIFY 558 initiated by the Hidden Primary and IXFR or AXFR exchanges 559 initiated by the Synchronization Server. On the other hand, 560 regular authoritative servers would respond to any hosts, and 561 any DNS query would be processed. The HNA SHOULD filter IXFR/ 562 AXFR traffic and drop traffic not initiated by the 563 Synchronization Server. The HNA MUST listen for DNS on TCP and 564 UDP and MUST at least allow SOA lookups of the Homenet Zone. 566 5.2. Securing Synchronization 568 Exchange between the Synchronization Server and the HNA MUST be 569 secured, at least for integrity protection and for authentication. 571 TSIG [RFC2845] or SIG(0) [RFC2931] MAY be used to secure the DNS 572 communications between the HNA and the Synchronization Server. TSIG 573 uses a symmetric key which can be managed by TKEY [RFC2930]. 574 Management of the key involved in SIG(0) is performed through zone 575 updates. How keys are rolled over with SIG(0) is out-of-scope of 576 this document. The advantage of these mechanisms is that they are 577 only associated with the DNS application. Not relying on shared 578 libraries eases testing and integration. On the other hand, using 579 TSIG, TKEY or SIG(0) requires these mechanisms to be implemented on 580 the HNA, which adds code and complexity. Another disadvantage is 581 that TKEY does not provide authentication mechanisms. 583 Protocols like TLS [RFC5246] / DTLS [RFC6347] MAY be used to secure 584 the transactions between the Synchronization Server and the HNA. The 585 advantage of TLS/DTLS is that this technology is widely deployed, and 586 most of the devices already embed TLS/DTLS libraries, possibly also 587 taking advantage of hardware acceleration. Further, TLS/DTLS 588 provides authentication facilities and can use certificates to 589 authenticate the Synchronization Server and the HNA. On the other 590 hand, using TLS/DTLS requires implementing DNS exchanges over TLS/ 591 DTLS, as well as a new service port. This document therefore does 592 NOT RECOMMEND this option. 594 IPsec [RFC4301] IKEv2 [RFC7296] MAY also be used to secure 595 transactions between the HNA and the Synchronization Server. 596 Similarly to TLS/DTLS, most HNAs already embed an IPsec stack, and 597 IKEv2 supports multiple authentication mechanisms via the EAP 598 framework. In addition, IPsec can be used to protect DNS exchanges 599 between the HNA and the Synchronization Server without any 600 modifications of the DNS server or client. DNS integration over 601 IPsec only requires an additional security policy in the Security 602 Policy Database (SPD). One disadvantage of IPsec is that NATs and 603 firewall traversal may be problematic. However, in our case, the HNA 604 is connected to the Internet, and IPsec communication between the HNA 605 and the Synchronization Server should not be impacted by middle 606 boxes. 608 How the PSK can be used by any of the TSIG, TLS/DTLS or IPsec 609 protocols: Authentication based on certificates implies a mutual 610 authentication and thus requires the HNA to manage a private key, a 611 public key, or certificates, as well as Certificate Authorities. 612 This adds complexity to the configuration especially on the HNA side. 613 For this reason, we RECOMMEND that the HNA MAY use PSK or certificate 614 base authentication, and that the Synchronization Server MUST support 615 PSK and certificate based authentication. 617 Note also that authentication of message exchanges between the HNA 618 and the Synchronization Server SHOULD NOT use the external IP address 619 of the HNA to index the appropriate keys. As detailed in Section 9, 620 the IP addresses of the Synchronization Server and the Hidden Primary 621 are subject to change, for example while the network is being 622 renumbered. This means that the necessary keys to authenticate 623 transaction SHOULD NOT be indexed using the IP address, and SHOULD be 624 resilient to IP address changes. 626 5.3. HNA Security Policies 628 This section details security policies related to the Hidden Primary 629 / Secondary synchronization. 631 The Hidden Primary, as described in this document SHOULD drop any 632 queries from the home network. This could be implemented via port 633 binding and/or firewall rules. The precise mechanism deployed is out 634 of scope of this document. 636 The Hidden Primary SHOULD drop any DNS queries arriving on the WAN 637 interface that are not issued from the Synchronization Server. 639 The Hidden Primary SHOULD drop any outgoing packets other than DNS 640 NOTIFY query, SOA response, IXFR response or AXFR responses. 642 The Hidden Primary SHOULD drop any incoming packets other than DNS 643 NOTIFY response, SOA query, IXFR query or AXFR query. 645 The Hidden Primary SHOULD drop any non protected IXFR or AXFR 646 exchange,depending on how the synchronization is secured. 648 6. DNSSEC compliant Homenet Architecture 650 [RFC7368] in Section 3.7.3 recommends DNSSEC to be deployed on both 651 the authoritative server and the resolver. The resolver side is out 652 of scope of this document, and only the authoritative part of the 653 server is considered. 655 Deploying DNSSEC requires signing the zone and configuring a secure 656 delegation. As described in Section 4.1, signing can be performed 657 either by the HNA or by the Outsourcing Infrastructure. Section 6.1 658 details the implications of these two alternatives. Similarly, the 659 secure delegation can be performed by the HNA or by the Outsourcing 660 Infrastructure. Section 6.2 discusses these two alternatives. 662 6.1. Zone Signing 664 This section discusses the pros and cons when zone signing is 665 performed by the HNA or by the Outsourcing Infrastructure. It is 666 RECOMMENDED that the HNA signs the zone unless there is a strong 667 argument against this, such as a HNA that is not capable of signing 668 the zone. In that case zone signing MAY be performed by the 669 Outsourcing Infrastructure on behalf of the HNA. 671 Reasons for signing the zone by the HNA are: 673 - 1: Keeping the Homenet Zone and the Public Homenet Zone equal to 674 securely optimize DNS resolution. As the Public Zone is signed 675 with DNSSEC, RRsets are authenticated, and thus DNS responses 676 can be validated even though they are not provided by the 677 authoritative server. This provides the HNA the ability to 678 respond on behalf of the Public Authoritative Server(s). This 679 could be useful for example if, in the future, the HNA 680 announces to the home network that the HNA can act as a local 681 authoritative primary or equivalent for the Homenet Zone. 682 Currently the HNA is not expected to receive authoritative DNS 683 queries, as its IP address is not mentioned in the Public 684 Homenet Zone. On the other hand most HNAs host a resolving 685 function, and could be configured to perform a local lookup to 686 the Homenet Zone instead of initiating a DNS exchange with the 687 Public Authoritative Server(s). Note that outsourcing the zone 688 signing operation means that all DNSSEC queries SHOULD be 689 cached to perform a local lookup, otherwise a resolution with 690 the Public Authoritative Server(s) would be performed. 692 - 2: Keeping the Homenet Zone and the Public Homenet Zone equal to 693 securely address the connectivity disruption independence 694 detailed in [RFC7368] section 4.4.1 and 3.7.5. As local 695 lookups are possible in case of network disruption, 696 communications within the home network can still rely on the 697 DNSSEC service. Note that outsourcing the zone signing 698 operation does not address connectivity disruption independence 699 with DNSSEC. Instead local lookup would provide DNS as opposed 700 to DNSSEC responses provided by the Public Authoritative 701 Server(s). 703 - 3: Keeping the Homenet Zone and the Public Homenet Zone equal to 704 guarantee coherence between DNS responses. Using a unique zone 705 is one way to guarantee uniqueness of the responses among 706 servers and places. Issues generated by different views are 707 discussed in more details in Section 7. 709 - 2: Privacy and Integrity of the DNSSEC Homenet Zone are better 710 guaranteed. When the Zone is signed by the HNA, it makes 711 modification of the DNS data -- for example for flow 712 redirection -- impossible. As a result, signing the Homenet 713 Zone by the HNA provides better protection for end user 714 privacy. 716 Reasons for signing the zone by the Outsourcing Infrastructure are: 718 - 1: The HNA may not be capable of signing the zone, most likely 719 because its firmware does not support this function. However 720 this reason is expected to become less and less valid over 721 time. 723 - 2: Outsourcing DNSSEC management operations. Management 724 operations involve key roll-over, which can be performed 725 automatically by the HNA and transparently for the end user. 726 Avoiding DNSSEC management is mostly motivated by bad software 727 implementations. 729 - 3: Reducing the impact of HNA replacement on the Public Homenet 730 Zone. Unless the HNA private keys can be extracted and stored 731 off-device, HNA hardware replacement will result in an 732 emergency key roll-over. This can be mitigated by using 733 relatively small TTLs. 735 - 4: Reducing configuration impact on the end user. Unless there 736 are zero configuration mechanisms in place to provide 737 credentials between the new HNA and the Synchronization Server, 738 authentication associations between the HNA and the 739 Synchronization Server would need to be re-configured. As HNA 740 replacement is not expected to happen regularly, end users may 741 not be at ease with such configuration settings. However, 742 mechanisms as described in 743 [I-D.ietf-homenet-naming-architecture-dhc-options] use DHCP 744 Options to outsource the configuration and avoid this issue. 746 - 5: The Outsourcing Infrastructure is more likely to handle private 747 keys more securely than the HNA. However, having all private 748 keys in one place may also nullify that benefit. 750 6.2. Secure Delegation 752 Secure delegation is achieved only if the DS RRset is properly set in 753 the parent zone. Secure delegation can be performed by the HNA or 754 the Outsourcing Infrastructures (that is the Synchronization Server 755 or the Public Authoritative Server(s)). 757 The DS RRset can be updated manually with nsupdate for example. This 758 requires the HNA or the Outsourcing Infrastructure to be 759 authenticated by the DNS server hosting the parent of the Public 760 Homenet Zone. Such a trust channel between the HNA and the parent 761 DNS server may be hard to maintain with HNAs, and thus may be easier 762 to establish with the Outsourcing Infrastructure. In fact, the 763 Public Authoritative Server(s) may use Automating DNSSEC Delegation 764 Trust Maintenance [RFC7344]. 766 7. Handling Different Views 768 The Homenet Zone provides information about the home network. Some 769 users may be tempted to have provide responses dependent on the 770 origin of the DNS query. More specifically, some users may be 771 tempted to provide a different view for DNS queries originating from 772 the home network and for DNS queries coming from the Internet. Each 773 view could then be associated with a dedicated Homenet Zone. Note 774 that this document does not specify how DNS queries originating from 775 the home network are addressed to the Homenet Zone. This could be 776 done via hosting the DNS resolver on the HNA for example. 778 This section is not normative. Section 7.1 details why some nodes 779 may only be reachable from the home network and not from the global 780 Internet. Section 7.2 briefly describes the consequences of having 781 distinct views such as a "home network view" and an "Internet view". 782 Finally, Section 7.3 provides guidance on how to resolve names that 783 are only significant in the home network, without creating different 784 views. 786 7.1. Misleading Reasons for Local Scope DNS Zone 788 The motivation for supporting different views is to provide different 789 answers dependent on the origin of the DNS query, for reasons such 790 as: 792 - 1: An end user may want to have services not published on the 793 Internet. Services like the HNA administration interface that 794 provides the GUI to administer your HNA might not seem 795 advisable to publish on the Internet. Similarly, services like 796 the mapper that registers the devices of your home network may 797 also not be desirable to be published on the Internet. In both 798 cases, these services should only be known or used by the 799 network administrator. To restrict the access of such 800 services, the home network administrator may choose to publish 801 these pieces of information only within the home network, where 802 it might be assumed that the users are more trusted than on the 803 Internet. Even though this assumption may not be valid, at 804 least this may reduce the surface of any attack. 806 - 2: Services within the home network may be reachable using non 807 global IP addresses. IPv4 and NAT may be one reason. On the 808 other hand IPv6 may favor link-local or site-local IP 809 addresses. These IP addresses are not significant outside the 810 boundaries of the home network. As a result, they MAY be 811 published in the home network view, and SHOULD NOT be published 812 in the Public Homenet Zone. 814 7.2. Consequences 816 Enabling different views leads to a non-coherent naming system. 817 Depending on where resolution is performed, some services will not be 818 available. This may be especially inconvenient with devices with 819 multiple interfaces that are attached both to the Internet via a 820 3G/4G interface and to the home network via a WLAN interface. 821 Devices may also cache the results of name resolution, and these 822 cached entries may no longer be valid if a mobile device moves 823 between a homenet connection and an internet connection e.g. a device 824 temporarily loses wifi signal and switches to 3G. 826 Regarding local-scope IP addresses, such devices may end up with poor 827 connectivity. Suppose, for example, that DNS resolution is performed 828 via the WLAN interface attached to the HNA, and the response provides 829 local-scope IP addresses, but the communication is initiated on the 830 3G/4G interface. Communications with local-scope addresses will be 831 unreachable on the Internet, thus aborting the communication. The 832 same situation occurs if a device is flip / flopping between various 833 WLAN networks. 835 Regarding DNSSEC, if the HNA does not sign the Homenet Zone and 836 outsources the signing process, the two views are different, because 837 one is protected with DNSSEC whereas the other is not. Devices with 838 multiple interfaces will have difficulty securing the naming 839 resolution, as responses originating from the home network may not be 840 signed. 842 For devices with all its interfaces attached to a single 843 administrative domain, that is to say the home network, or the 844 Internet. Incoherence between DNS responses may still also occur if 845 the device is able to perform DNS resolutions both using the DNS 846 resolving server of the home network, or one of the ISP. DNS 847 resolution performed via the HNA or the ISP resolver may be different 848 than those performed over the Internet. 850 7.3. Guidance and Recommendations 852 As documented in Section 7.2, it is RECOMMENDED to avoid different 853 views. If network administrators choose to implement multiple views, 854 impacts on devices' resolution SHOULD be evaluated. 856 As a consequence, the Homenet Zone is expected to be an exact copy of 857 the Public Homenet Zone. As a result, services that are not expected 858 to be published on the Internet SHOULD NOT be part of the Homenet 859 Zone, local-scope addresses SHOULD NOT be part of the Homenet Zone, 860 and when possible, the HNA SHOULD sign the Homenet Zone. 862 The Homenet Zone is expected to host public information only. It is 863 not the scope of the DNS service to define local home network 864 boundaries. Instead, local scope information is expected to be 865 provided to the home network using local scope naming services. mDNS 866 [RFC6762] DNS-SD [RFC6763] are two examples of these services. 867 Currently mDNS is limited to a single link network. However, future 868 protocols are expected to leverage this constraint as pointed out in 869 [RFC7558]. 871 8. Homenet Reverse Zone 873 This section is focused on the Homenet Reverse Zone. 875 Firstly, all considerations for the Homenet Zone apply to the Homenet 876 Reverse Zone. The main difference between the Homenet Reverse Zone 877 and the Homenet Zone is that the parent zone of the Homenet Reverse 878 Zone is most likely managed by the ISP. As the ISP also provides the 879 IP prefix to the HNA, it may be able to authenticate the HNA using 880 mechanisms outside the scope of this document e.g. the physical 881 attachment point to the ISP network. If the Reverse Synchronization 882 Server is managed by the ISP, credentials to authenticate the HNA for 883 the zone synchronization may be set automatically and transparently 884 to the end user. [I-D.ietf-homenet-naming-architecture-dhc-options] 885 describes how automatic configuration may be performed. 887 With IPv6, the domain space for IP addresses is so large that reverse 888 zone may be confronted with scalability issues. How the reverse zone 889 is generated is out of scope of this document. 890 [I-D.howard-dnsop-ip6rdns] provides guidance on how to address 891 scalability issues. 893 9. Renumbering 895 This section details how renumbering is handled by the Hidden Primary 896 server or the Synchronization Server. Both types of renumbering are 897 discussed i.e. "make-before-break" and "break-before-make". 899 In the make-before-break renumbering scenario, the new prefix is 900 advertised, the network is configured to prepare the transition to 901 the new prefix. During a period of time, the two prefixes old and 902 new coexist, before the old prefix is completely removed. In the 903 break-before-make renumbering scenario, the new prefix is advertised 904 making the old prefix obsolete. 906 Renumbering has been extensively described in [RFC4192] and analyzed 907 in [RFC7010] and the reader is expected to be familiar with them 908 before reading this section. 910 9.1. Hidden Primary 912 In a renumbering scenario, the Hidden Primary is informed it is being 913 renumbered. In most cases, this occurs because the whole home 914 network is being renumbered. As a result, the Homenet Zone will also 915 be updated. Although the new and old IP addresses may be stored in 916 the Homenet Zone, we recommend that only the newly reachable IP 917 addresses be published. 919 To avoid reachability disruption, IP connectivity information 920 provided by the DNS SHOULD be coherent with the IP plane. In our 921 case, this means the old IP address SHOULD NOT be provided via the 922 DNS when it is not reachable anymore. Let for example TTL be the TTL 923 associated with a RRset of the Homenet Zone, it may be cached for TTL 924 seconds. Let T_NEW be the time the new IP address replaces the old 925 IP address in the Homenet Zone, and T_OLD_UNREACHABLE the time the 926 old IP is not reachable anymore. In the case of the make-before- 927 break, seamless reachability is provided as long as T_OLD_UNREACHABLE 928 - T_NEW > 2 * TTL. If this is not satisfied, then devices associated 929 with the old IP address in the home network may become unreachable 930 for 2 * TTL - (T_OLD_UNREACHABLE - T_NEW). In the case of a break- 931 before-make, T_OLD_UNREACHABLE = T_NEW, and the device may become 932 unreachable up to 2 * TTL. 934 Once the Homenet Zone file has been updated on the Hidden Primary, 935 the Hidden Primary needs to inform the Outsourcing Infrastructure 936 that the Homenet Zone has been updated and that the IP address to use 937 to retrieve the updated zone has also been updated. Both 938 notifications are performed using regular DNS exchanges. Mechanisms 939 to update an IP address provided by lower layers with protocols like 940 SCTP [RFC4960], MOBIKE [RFC4555] are not considered in this document. 942 The Hidden Primary SHOULD inform the Synchronization Server that the 943 Homenet Zone has been updated by sending a NOTIFY payload with the 944 new IP address. In addition, this NOTIFY payload SHOULD be 945 authenticated using SIG(0) or TSIG. When the Synchronization Server 946 receives the NOTIFY payload, it MUST authenticate it. Note that the 947 cryptographic key used for the authentication SHOULD be indexed by 948 the Registered Homenet Domain contained in the NOTIFY payload as well 949 as the RRSIG. In other words, the IP address SHOULD NOT be used as 950 an index. If authentication succeeds, the Synchronization Server 951 MUST also notice the IP address has been modified and perform a 952 reachability check before updating its primary configuration. The 953 routability check MAY performed by sending a SOA request to the 954 Hidden Primary using the source IP address of the NOTIFY. This 955 exchange is also secured, and if an authenticated response is 956 received from the Hidden Primary with the new IP address, the 957 Synchronization Server SHOULD update its configuration file and 958 retrieve the Homenet Zone using an AXFR or a IXFR exchange. 960 Note that the primary reason for providing the IP address is that the 961 Hidden Primary is not publicly announced in the DNS. If the Hidden 962 Primary were publicly announced in the DNS, then the IP address 963 update could have been performed using the DNS as described in 964 Section 9.2. 966 9.2. Synchronization Server 968 Renumbering of the Synchronization Server results in the 969 Synchronization Server changing its IP address. The Synchronization 970 Server is a secondary, so its renumbering does not impact the Homenet 971 Zone. In fact, exchanges to the Synchronization Server are 972 restricted to the Homenet Zone synchronization. In our case, the 973 Hidden Primary MUST be able to send NOTIFY payloads to the 974 Synchronization Server. 976 If the Synchronization Server is configured in the Hidden Primary 977 configuration file using a FQDN, then the update of the IP address is 978 performed by DNS. More specifically, before sending the NOTIFY, the 979 Hidden Primary performs a DNS resolution to retrieve the IP address 980 of the secondary. 982 As described in Section 9.1, the Synchronization Server DNS 983 information SHOULD be coherent with the IP plane. Let TTL be the TTL 984 associated with the Synchronization Server FQDN, T_NEW the time the 985 new IP address replaces the old one and T_OLD_UNREACHABLE the time 986 the Synchronization Server is not reachable anymore with its old IP 987 address. Seamless reachability is provided as long as 988 T_OLD_UNREACHABLE - T_NEW > 2 * TTL. If this condition is not met, 989 the Synchronization Server may be unreachable during 2 * TTL - 990 (T_OLD_UNREACHABLE - T_NEW). In the case of a break-before-make, 991 T_OLD_UNREACHABLE = T_NEW, and it may become unreachable up to 2 * 992 TTL. 994 Some DNS infrastructure uses the IP address to designate the 995 secondary, in which case, other mechanisms must be found. The reason 996 for using IP addresses instead of names is generally to reach an 997 internal interface that is not designated by a FQDN, and to avoid 998 potential bootstrap problems. Such scenarios are considered as out 999 of scope in the case of home networks. 1001 10. Privacy Considerations 1003 Outsourcing the DNS Authoritative service from the HNA to a third 1004 party raises a few privacy related concerns. 1006 The Homenet Zone contains a full description of the services hosted 1007 in the network. These services may not be expected to be publicly 1008 shared although their names remain accessible through the Internet. 1009 Even though DNS makes information public, the DNS does not expect to 1010 make the complete list of services public. In fact, making 1011 information public still requires the key (or FQDN) of each service 1012 to be known by the resolver in order to retrieve information about 1013 the services. More specifically, making mywebsite.example.com public 1014 in the DNS, is not sufficient to make resolvers aware of the 1015 existence web site. However, an attacker may walk the reverse DNS 1016 zone, or use other reconnaissance techniques to learn this 1017 information as described in [RFC7707]. 1019 In order to prevent the complete Homenet Zone being published on the 1020 Internet, AXFR queries SHOULD be blocked on the Public Authoritative 1021 Server(s). Similarly, to avoid zone-walking NSEC3 [RFC5155] SHOULD 1022 be preferred over NSEC [RFC4034]. 1024 When the Homenet Zone is outsourced, the end user should be aware 1025 that it provides a complete description of the services available on 1026 the home network. More specifically, names usually provides a clear 1027 indication of the service and possibly even the device type, and as 1028 the Homenet Zone contains the IP addresses associated with the 1029 service, they also limit the scope of the scan space. 1031 In addition to the Homenet Zone, the third party can also monitor the 1032 traffic associated with the Homenet Zone. This traffic may provide 1033 an indication of the services an end user accesses, plus how and when 1034 they use these services. Although, caching may obfuscate this 1035 information inside the home network, it is likely that outside your 1036 home network this information will not be cached. 1038 11. Security Considerations 1040 The Homenet Naming Architecture described in this document solves 1041 exposing the HNA's DNS service as a DoS attack vector. 1043 11.1. Names are less secure than IP addresses 1045 This document describes how an end user can make their services and 1046 devices from his home network reachable on the Internet by using 1047 names rather than IP addresses. This exposes the home network to 1048 attackers, since names are expected to include less entropy than IP 1049 addresses. In fact, with IP addresses, the Interface Identifier is 1050 64 bits long leading to up to 2^64 possibilities for a given 1051 subnetwork. This is not to mention that the subnet prefix is also of 1052 64 bits long, thus providing up to 2^64 possibilities. On the other 1053 hand, names used either for the home network domain or for the 1054 devices present less entropy (livebox, router, printer, nicolas, 1055 jennifer, ...) and thus potentially exposes the devices to dictionary 1056 attacks. 1058 11.2. Names are less volatile than IP addresses 1060 IP addresses may be used to locate a device, a host or a service. 1061 However, home networks are not expected to be assigned a time 1062 invariant prefix by ISPs. As a result, observing IP addresses only 1063 provides some ephemeral information about who is accessing the 1064 service. On the other hand, names are not expected to be as volatile 1065 as IP addresses. As a result, logging names over time may be more 1066 valuable than logging IP addresses, especially to profile an end 1067 user's characteristics. 1069 PTR provides a way to bind an IP address to a name. In that sense, 1070 responding to PTR DNS queries may affect the end user's privacy. For 1071 that reason end users may choose not to respond to PTR DNS queries 1072 and MAY instead return a NXDOMAIN response. 1074 11.3. DNS Reflection Attacks 1076 An attacker performs a reflection attack when it sends traffic to one 1077 or more intermediary nodes (reflectors), that in turn send back 1078 response traffic to the victim. Motivations for using an 1079 intermediary node might be anonymity of the attacker, as well as 1080 amplification of the traffic. Typically, when the intermediary node 1081 is a DNSSEC server, the attacker sends a DNSSEC query and the victim 1082 is likely to receive a DNSSEC response. This section analyzes how 1083 the different components may be involved as a reflector in a 1084 reflection attack. Section 11.3.1 considers the Hidden Primary, 1085 Section 11.3.2 the Synchronization Server, and Section 11.3.3 the 1086 Public Authoritative Server(s). 1088 11.3.1. Reflection Attack involving the Hidden Primary 1090 With the specified architecture, the Hidden Primary is only expected 1091 to receive DNS queries of type SOA, AXFR or IXFR. This section 1092 analyzes how these DNS queries may be used by an attacker to perform 1093 a reflection attack. 1095 DNS queries of type AXFR and IXFR use TCP and as such are less 1096 subject to reflection attacks. This makes SOA queries the only 1097 remaining practical vector of attacks for reflection attacks, based 1098 on UDP. 1100 SOA queries are not associated with a large amplification factor 1101 compared to queries of type "ANY" or to query of non existing FQDNs. 1102 This reduces the probability a DNS query of type SOA will be involved 1103 in a DDoS attack. 1105 SOA queries are expected to follow a very specific pattern, which 1106 makes rate limiting techniques an efficient way to limit such 1107 attacks, and associated impact on the naming service of the home 1108 network. 1110 Motivations for such a flood might be a reflection attack, but could 1111 also be a resource exhaustion attack performed against the Hidden 1112 Primary. The Hidden Primary only expects to exchange traffic with 1113 the Synchronization Server, that is its associated secondary. Even 1114 though secondary servers may be renumbered as mentioned in Section 9, 1115 the Hidden Primary is likely to perform a DNSSEC resolution and find 1116 out the associated secondary's IP addresses in use. As a result, the 1117 Hidden Primary is likely to limit the origin of its incoming traffic 1118 based on the origin IP address. 1120 With filtering rules based on IP address, SOA flooding attacks are 1121 limited to forged packets with the IP address of the secondary 1122 server. In other words, the only victims are the Hidden Primary 1123 itself or the secondary. There is a need for the Hidden Primary to 1124 limit that flood to limit the impact of the reflection attack on the 1125 secondary, and to limit the resource needed to carry on the traffic 1126 by the HNA hosting the Hidden Primary. On the other hand, mitigation 1127 should be performed appropriately, so as to limit the impact on the 1128 legitimate SOA sent by the secondary. 1130 The main reason for the Synchronization Server sending a SOA query is 1131 to update the SOA RRset after the TTL expires, to check the serial 1132 number upon the receipt of a NOTIFY query from the Hidden Primary, or 1133 to re-send the SOA request when the response has not been received. 1134 When a flood of SOA queries is received by the Hidden Primary, the 1135 Hidden Primary may assume it is involved in an attack. 1137 There are few legitimate time slots when the secondary is expected to 1138 send a SOA query. Suppose T_NOTIFY is the time a NOTIFY is sent by 1139 the Hidden Primary, T_SOA the last time the SOA has been queried, TTL 1140 the TTL associated to the SOA, and T_REFRESH the refresh time defined 1141 in the SOA RRset. The specific time SOA queries are expected can be 1142 for example T_NOTIFY, T_SOA + 2/3 TTL, T_SOA + TTL, T_SOA + 1143 T_REFRESH., and. Outside a few minutes following these specific time 1144 slots, the probability that the HNA discards a legitimate SOA query 1145 is very low. Within these time slots, the probability the secondary 1146 may have its legitimate query rejected is higher. If a legitimate 1147 SOA is discarded, the secondary will re-send SOA query every "retry 1148 time" second until "expire time" seconds occurs, where "retry time" 1149 and "expire time" have been defined in the SOA. 1151 As a result, it is RECOMMENDED to set rate limiting policies to 1152 protect HNA resources. If a flood lasts more than the expired time 1153 defined by the SOA, it is RECOMMENDED to re-initiate a 1154 synchronization between the Hidden Primary and the secondaries. 1156 11.3.2. Reflection Attacks involving the Synchronization Server 1158 The Synchronization Server acts as a secondary coupled with the 1159 Hidden Primary. The secondary expects to receive NOTIFY query, SOA 1160 responses, AXFR and IXFR responses from the Hidden Primary. 1162 Sending a NOTIFY query to the secondary generates a NOTIFY response 1163 as well as initiating an SOA query exchange from the secondary to the 1164 Hidden Primary. As mentioned in [RFC1996], this is a known "benign 1165 denial of service attack". As a result, the Synchronization Server 1166 SHOULD enforce rate limiting on sending SOA queries and NOTIFY 1167 responses to the Hidden Primary. Most likely, when the secondary is 1168 flooded with valid and signed NOTIFY queries, it is under a replay 1169 attack which is discussed in Section 11.5. The key thing here is 1170 that the secondary is likely to be designed to be able to process 1171 much more traffic than the Hidden Primary hosted on a HNA. 1173 This paragraph details how the secondary may limit the NOTIFY 1174 queries. Because the Hidden Primary may be renumbered, the secondary 1175 SHOULD NOT perform permanent IP filtering based on IP addresses. In 1176 addition, a given secondary may be shared among multiple Hidden 1177 Primaries which make filtering rules based on IP harder to set. The 1178 time at which a NOTIFY is sent by the Hidden Primary is not 1179 predictable. However, a flood of NOTIFY messages may be easily 1180 detected, as a NOTIFY originated from a given Homenet Zone is 1181 expected to have a very limited number of unique source IP addresses, 1182 even when renumbering is occurring. As a result, the secondary, MAY 1183 rate limit incoming NOTIFY queries. 1185 On the Hidden Primary side, it is recommended that the Hidden Primary 1186 sends a NOTIFY as long as the zone has not been updated by the 1187 secondary. Multiple SOA queries may indicate the secondary is under 1188 attack. 1190 11.3.3. Reflection Attacks involving the Public Authoritative Servers 1192 Reflection attacks involving the Public Authoritative Server(s) are 1193 similar to attacks on any Outsourcing Infrastructure. This is not 1194 specific to the architecture described in this document, and thus are 1195 considered as out of scope. 1197 In fact, one motivation of the architecture described in this 1198 document is to expose the Public Authoritative Server(s) to attacks 1199 instead of the HNA, as it is believed that the Public Authoritative 1200 Server(s) will be better able to defend itself. 1202 11.4. Flooding Attack 1204 The purpose of flooding attacks is mostly resource exhaustion, where 1205 the resource can be bandwidth, memory, or CPU for example. 1207 One goal of the architecture described in this document is to limit 1208 the surface of attack on the HNA. This is done by outsourcing the 1209 DNS service to the Public Authoritative Server(s). By doing so, the 1210 HNA limits its DNS interactions between the Hidden Primary and the 1211 Synchronization Server. This limits the number of entities the HNA 1212 interacts with as well as the scope of DNS exchanges - NOTIFY, SOA, 1213 AXFR, IXFR. 1215 The use of an authenticated channel with SIG(0) or TSIG between the 1216 HNA and the Synchronization Server, enables detection of illegitimate 1217 DNS queries, so appropriate action may be taken - like dropping the 1218 queries. If signatures are validated, then most likely, the HNA is 1219 under a replay attack, as detailed in Section 11.5 1221 In order to limit the resource required for authentication, it is 1222 recommended to use TSIG that uses symmetric cryptography over SIG(0) 1223 that uses asymmetric cryptography. 1225 11.5. Replay Attack 1227 Replay attacks consist of an attacker either resending or delaying a 1228 legitimate message that has been sent by an authorized user or 1229 process. As the Hidden Primary and the Synchronization Server use an 1230 authenticated channel, replay attacks are mostly expected to use 1231 forged DNS queries in order to provide valid traffic. 1233 From the perspective of an attacker, using a correctly authenticated 1234 DNS query may not be detected as an attack and thus may generate a 1235 response. Generating and sending a response consumes more resources 1236 than either dropping the query by the defender, or generating the 1237 query by the attacker, and thus could be used for resource exhaustion 1238 attacks. In addition, as the authentication is performed at the DNS 1239 layer, the source IP address could be impersonated in order to 1240 perform a reflection attack. 1242 Section 11.3 details how to mitigate reflection attacks and 1243 Section 11.4 details how to mitigate resource exhaustion. Both 1244 sections assume a context of DoS with a flood of DNS queries. This 1245 section suggests a way to limit the attack surface of replay attacks. 1247 As SIG(0) and TSIG use inception and expiration time, the time frame 1248 for replay attack is limited. SIG(0) and TSIG recommends a fudge 1249 value of 5 minutes. This value has been set as a compromise between 1250 possibly loose time synchronization between devices and the valid 1251 lifetime of the message. As a result, better time synchronization 1252 policies could reduce the time window of the attack. 1254 12. IANA Considerations 1256 This document has no actions for IANA. 1258 13. Acknowledgment 1260 The authors wish to thank Philippe Lemordant for its contributions on 1261 the early versions of the draft; Ole Troan for pointing out issues 1262 with the IPv6 routed home concept and placing the scope of this 1263 document in a wider picture; Mark Townsley for encouragement and 1264 injecting a healthy debate on the merits of the idea; Ulrik de Bie 1265 for providing alternative solutions; Paul Mockapetris, Christian 1266 Jacquenet, Francis Dupont and Ludovic Eschard for their remarks on 1267 HNA and low power devices; Olafur Gudmundsson for clarifying DNSSEC 1268 capabilities of small devices; Simon Kelley for its feedback as 1269 dnsmasq implementer; Andrew Sullivan, Mark Andrew, Ted Lemon, Mikael 1270 Abrahamson, Michael Richardson and Ray Bellis for their feedback on 1271 handling different views as well as clarifying the impact of 1272 outsourcing the zone signing operation outside the HNA; Mark Andrew 1273 and Peter Koch for clarifying the renumbering. 1275 14. References 1277 14.1. Normative References 1279 [RFC1034] Mockapetris, P., "Domain names - concepts and facilities", 1280 STD 13, RFC 1034, DOI 10.17487/RFC1034, November 1987, 1281 . 1283 [RFC1035] Mockapetris, P., "Domain names - implementation and 1284 specification", STD 13, RFC 1035, DOI 10.17487/RFC1035, 1285 November 1987, . 1287 [RFC1995] Ohta, M., "Incremental Zone Transfer in DNS", RFC 1995, 1288 DOI 10.17487/RFC1995, August 1996, 1289 . 1291 [RFC1996] Vixie, P., "A Mechanism for Prompt Notification of Zone 1292 Changes (DNS NOTIFY)", RFC 1996, DOI 10.17487/RFC1996, 1293 August 1996, . 1295 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1296 Requirement Levels", BCP 14, RFC 2119, 1297 DOI 10.17487/RFC2119, March 1997, 1298 . 1300 [RFC2136] Vixie, P., Ed., Thomson, S., Rekhter, Y., and J. Bound, 1301 "Dynamic Updates in the Domain Name System (DNS UPDATE)", 1302 RFC 2136, DOI 10.17487/RFC2136, April 1997, 1303 . 1305 [RFC2142] Crocker, D., "Mailbox Names for Common Services, Roles and 1306 Functions", RFC 2142, DOI 10.17487/RFC2142, May 1997, 1307 . 1309 [RFC2308] Andrews, M., "Negative Caching of DNS Queries (DNS 1310 NCACHE)", RFC 2308, DOI 10.17487/RFC2308, March 1998, 1311 . 1313 [RFC2845] Vixie, P., Gudmundsson, O., Eastlake 3rd, D., and B. 1314 Wellington, "Secret Key Transaction Authentication for DNS 1315 (TSIG)", RFC 2845, DOI 10.17487/RFC2845, May 2000, 1316 . 1318 [RFC2930] Eastlake 3rd, D., "Secret Key Establishment for DNS (TKEY 1319 RR)", RFC 2930, DOI 10.17487/RFC2930, September 2000, 1320 . 1322 [RFC2931] Eastlake 3rd, D., "DNS Request and Transaction Signatures 1323 ( SIG(0)s )", RFC 2931, DOI 10.17487/RFC2931, September 1324 2000, . 1326 [RFC4034] Arends, R., Austein, R., Larson, M., Massey, D., and S. 1327 Rose, "Resource Records for the DNS Security Extensions", 1328 RFC 4034, DOI 10.17487/RFC4034, March 2005, 1329 . 1331 [RFC4301] Kent, S. and K. Seo, "Security Architecture for the 1332 Internet Protocol", RFC 4301, DOI 10.17487/RFC4301, 1333 December 2005, . 1335 [RFC4555] Eronen, P., "IKEv2 Mobility and Multihoming Protocol 1336 (MOBIKE)", RFC 4555, DOI 10.17487/RFC4555, June 2006, 1337 . 1339 [RFC4960] Stewart, R., Ed., "Stream Control Transmission Protocol", 1340 RFC 4960, DOI 10.17487/RFC4960, September 2007, 1341 . 1343 [RFC5155] Laurie, B., Sisson, G., Arends, R., and D. Blacka, "DNS 1344 Security (DNSSEC) Hashed Authenticated Denial of 1345 Existence", RFC 5155, DOI 10.17487/RFC5155, March 2008, 1346 . 1348 [RFC5246] Dierks, T. and E. Rescorla, "The Transport Layer Security 1349 (TLS) Protocol Version 1.2", RFC 5246, 1350 DOI 10.17487/RFC5246, August 2008, 1351 . 1353 [RFC5936] Lewis, E. and A. Hoenes, Ed., "DNS Zone Transfer Protocol 1354 (AXFR)", RFC 5936, DOI 10.17487/RFC5936, June 2010, 1355 . 1357 [RFC6347] Rescorla, E. and N. Modadugu, "Datagram Transport Layer 1358 Security Version 1.2", RFC 6347, DOI 10.17487/RFC6347, 1359 January 2012, . 1361 [RFC6644] Evans, D., Droms, R., and S. Jiang, "Rebind Capability in 1362 DHCPv6 Reconfigure Messages", RFC 6644, 1363 DOI 10.17487/RFC6644, July 2012, 1364 . 1366 [RFC6762] Cheshire, S. and M. Krochmal, "Multicast DNS", RFC 6762, 1367 DOI 10.17487/RFC6762, February 2013, 1368 . 1370 [RFC6763] Cheshire, S. and M. Krochmal, "DNS-Based Service 1371 Discovery", RFC 6763, DOI 10.17487/RFC6763, February 2013, 1372 . 1374 [RFC7296] Kaufman, C., Hoffman, P., Nir, Y., Eronen, P., and T. 1375 Kivinen, "Internet Key Exchange Protocol Version 2 1376 (IKEv2)", STD 79, RFC 7296, DOI 10.17487/RFC7296, October 1377 2014, . 1379 [RFC7788] Stenberg, M., Barth, S., and P. Pfister, "Home Networking 1380 Control Protocol", RFC 7788, DOI 10.17487/RFC7788, April 1381 2016, . 1383 14.2. Informational References 1385 [I-D.howard-dnsop-ip6rdns] 1386 Howard, L., "Reverse DNS in IPv6 for Internet Service 1387 Providers", draft-howard-dnsop-ip6rdns-00 (work in 1388 progress), June 2014. 1390 [I-D.ietf-homenet-naming-architecture-dhc-options] 1391 Migault, D., Mrugalski, T., Griffiths, C., Weber, R., and 1392 W. Cloetens, "DHCPv6 Options for Homenet Naming 1393 Architecture", draft-ietf-homenet-naming-architecture-dhc- 1394 options-03 (work in progress), October 2015. 1396 [RFC1033] Lottor, M., "Domain Administrators Operations Guide", 1397 RFC 1033, DOI 10.17487/RFC1033, November 1987, 1398 . 1400 [RFC4192] Baker, F., Lear, E., and R. Droms, "Procedures for 1401 Renumbering an IPv6 Network without a Flag Day", RFC 4192, 1402 DOI 10.17487/RFC4192, September 2005, 1403 . 1405 [RFC7010] Liu, B., Jiang, S., Carpenter, B., Venaas, S., and W. 1406 George, "IPv6 Site Renumbering Gap Analysis", RFC 7010, 1407 DOI 10.17487/RFC7010, September 2013, 1408 . 1410 [RFC7344] Kumari, W., Gudmundsson, O., and G. Barwood, "Automating 1411 DNSSEC Delegation Trust Maintenance", RFC 7344, 1412 DOI 10.17487/RFC7344, September 2014, 1413 . 1415 [RFC7368] Chown, T., Ed., Arkko, J., Brandt, A., Troan, O., and J. 1416 Weil, "IPv6 Home Networking Architecture Principles", 1417 RFC 7368, DOI 10.17487/RFC7368, October 2014, 1418 . 1420 [RFC7558] Lynn, K., Cheshire, S., Blanchet, M., and D. Migault, 1421 "Requirements for Scalable DNS-Based Service Discovery 1422 (DNS-SD) / Multicast DNS (mDNS) Extensions", RFC 7558, 1423 DOI 10.17487/RFC7558, July 2015, 1424 . 1426 [RFC7707] Gont, F. and T. Chown, "Network Reconnaissance in IPv6 1427 Networks", RFC 7707, DOI 10.17487/RFC7707, March 2016, 1428 . 1430 Appendix A. Document Change Log 1432 [RFC Editor: This section is to be removed before publication] 1434 -08 1436 - 1: Clarification of the meaning of CPE. The architecture does not 1437 consider a single CPE. The CPE represents multiple functions. 1439 -07: 1441 - 1: Ray Hunter is added as a co-author. 1443 -06: 1445 - 2: Ray Hunter is added in acknowledgment. 1447 - 3: Adding Renumbering section with comments from Dallas meeting 1449 - 4: Replacing Master / Primary - Slave / Secondary 1451 Security Consideration has been updated with Reflection 1452 attacks, flooding attacks, and replay attacks. 1454 -05: 1456 *Clarifying on handling different views: 1458 - 1: How the CPE may be involved in the resolution and responds 1459 without necessarily requesting the Public Authoritative 1460 Server(s) (and eventually the Hidden Primary) 1462 - 2: How to handle local scope resolution that is link-local, site- 1463 local and NAT IP addresses as well as Private domain names that 1464 the administrator does not want to publish outside the home 1465 network. 1467 Adding a Privacy Considerations Section 1469 Clarification on pro/cons outsourcing zone-signing 1471 Documenting how to handle reverse zones 1473 Adding reference to RFC 2308 1475 -04: 1477 *Clarifications on zone signing 1478 *Rewording 1480 *Adding section on different views 1482 *architecture clarifications 1484 -03: 1486 *Simon's comments taken into consideration 1488 *Adding SOA, PTR considerations 1490 *Removing DNSSEC performance paragraphs on low power devices 1492 *Adding SIG(0) as a mechanism for authenticating the servers 1494 *Goals clarification: the architecture described in the document 1) 1495 does not describe new protocols, and 2) can be adapted to specific 1496 cases for advance users. 1498 -02: 1500 *remove interfaces: "Public Authoritative Server Naming Interface" is 1501 replaced by "Public Authoritative Server(s)y(ies)". "Public 1502 Authoritative Server Management Interface" is replaced by 1503 "Synchronization Server". 1505 -01.3: 1507 *remove the authoritative / resolver services of the CPE. 1508 Implementation dependent 1510 *remove interactions with mdns and dhcp. Implementation dependent. 1512 *remove considerations on low powered devices 1514 *remove position toward homenet arch 1516 *remove problem statement section 1518 -01.2: 1520 * add a CPE description to show that the architecture can fit CPEs 1522 * specification of the architecture for very low powered devices. 1524 * integrate mDNS and DHCP interactions with the Homenet Naming 1525 Architecture. 1527 * Restructuring the draft. 1) We start from the homenet-arch draft to 1528 derive a Naming Architecture, then 2) we show why CPE need mechanisms 1529 that do not expose them to the Internet, 3) we describe the 1530 mechanisms. 1532 * I remove the terminology and expose it in the figures A and B. 1534 * remove the Front End Homenet Naming Architecture to Homenet Naming 1536 -01: 1538 * Added C. Griffiths as co-author. 1540 * Updated section 5.4 and other sections of draft to update section 1541 on Hidden Primary / Slave functions with CPE as Hidden Primary/ 1542 Homenet Server. 1544 * For next version, address functions of MDNS within Homenet Lan and 1545 publishing details northbound via Hidden Primary. 1547 -00: First version published. 1549 Authors' Addresses 1551 Daniel Migault 1552 Ericsson 1553 8400 Boulevard Decarie 1554 Montreal, QC H4P 2N2 1555 Canada 1557 Phone: +1 (514) 452-2160 1558 Email: daniel.migault@ericsson.com 1560 Ralf Weber 1561 Nominum 1562 2000 Seaport Blvd #400 1563 Redwood City, CA 94063 1564 US 1566 Email: ralf.weber@nominum.com 1567 URI: http://www.nominum.com 1568 Ray Hunter 1569 Globis Consulting BV 1570 Weegschaalstraat 3 1571 5632CW Eindhoven 1572 The Netherlands 1574 Email: v6ops@globis.net 1575 URI: http://www.globis.net 1577 Chris Griffiths 1579 Email: cgriffiths@gmail.com 1581 Wouter Cloetens 1582 SoftAtHome 1583 vaartdijk 3 701 1584 3018 Wijgmaal 1585 Belgium 1587 Email: wouter.cloetens@softathome.com