idnits 2.17.1 draft-ietf-homenet-front-end-naming-delegation-12.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 (November 02, 2020) is 1268 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) ** Downref: Normative reference to an Unknown state RFC: RFC 1033 ** Obsolete normative reference: RFC 2845 (Obsoleted by RFC 8945) ** Downref: Normative reference to an Informational RFC: RFC 4192 ** Obsolete normative reference: RFC 4960 (Obsoleted by RFC 9260) ** Downref: Normative reference to an Informational RFC: RFC 6092 ** Downref: Normative reference to an Informational RFC: RFC 7010 ** Downref: Normative reference to an Informational RFC: RFC 7084 ** Downref: Normative reference to an Informational RFC: RFC 7368 ** Downref: Normative reference to an Informational RFC: RFC 7558 ** Downref: Normative reference to an Informational RFC: RFC 7707 == Outdated reference: A later version (-24) exists of draft-ietf-homenet-naming-architecture-dhc-options-08 == Outdated reference: A later version (-43) exists of draft-ietf-tls-dtls13-38 == Outdated reference: A later version (-02) exists of draft-richardson-homerouter-provisioning-00 Summary: 10 errors (**), 0 flaws (~~), 4 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Homenet D. Migault 3 Internet-Draft Ericsson 4 Intended status: Standards Track R. Weber 5 Expires: May 6, 2021 Nominum 6 M. Richardson 7 Sandelman Software Works 8 R. Hunter 9 Globis Consulting BV 10 C. Griffiths 12 W. Cloetens 13 Deutsche Telekom 14 November 02, 2020 16 Simple Provisioning of Public Names for Residential Networks 17 draft-ietf-homenet-front-end-naming-delegation-12 19 Abstract 21 Home owners often have IPv6 devices that they wish to access over the 22 Internet using names. It has been possible to register and populate 23 a DNS Zone with names since DNS became a thing, but it has been an 24 activity typically reserved for experts. This document automates the 25 process through creation of a Homenet Naming Authority, whose 26 responsibility is to select, sign and publish names to a set of 27 publically visible servers. 29 The use of an outsourced primary DNS server deals with possible 30 renumbering of the home network, and with possible denial of service 31 attacks against the DNS infrastructure. 33 This document describes the mechanism that enables the Home Network 34 Authority (HNA) to outsource the naming service to the DNS 35 Outsourcing Infrastructure via a Distribution Master (DM). 37 In addition, this document deals with publication of a corresponding 38 reverse zone. 40 Status of This Memo 42 This Internet-Draft is submitted in full conformance with the 43 provisions of BCP 78 and BCP 79. 45 Internet-Drafts are working documents of the Internet Engineering 46 Task Force (IETF). Note that other groups may also distribute 47 working documents as Internet-Drafts. The list of current Internet- 48 Drafts is at https://datatracker.ietf.org/drafts/current/. 50 Internet-Drafts are draft documents valid for a maximum of six months 51 and may be updated, replaced, or obsoleted by other documents at any 52 time. It is inappropriate to use Internet-Drafts as reference 53 material or to cite them other than as "work in progress." 55 This Internet-Draft will expire on May 6, 2021. 57 Copyright Notice 59 Copyright (c) 2020 IETF Trust and the persons identified as the 60 document authors. All rights reserved. 62 This document is subject to BCP 78 and the IETF Trust's Legal 63 Provisions Relating to IETF Documents 64 (https://trustee.ietf.org/license-info) in effect on the date of 65 publication of this document. Please review these documents 66 carefully, as they describe your rights and restrictions with respect 67 to this document. Code Components extracted from this document must 68 include Simplified BSD License text as described in Section 4.e of 69 the Trust Legal Provisions and are provided without warranty as 70 described in the Simplified BSD License. 72 Table of Contents 74 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 75 1.1. Selecting Names to Publish . . . . . . . . . . . . . . . 6 76 1.2. Alternative solutions . . . . . . . . . . . . . . . . . . 6 77 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 7 78 3. Architecture Description . . . . . . . . . . . . . . . . . . 9 79 3.1. Architecture Overview . . . . . . . . . . . . . . . . . . 9 80 3.2. Distribution Master Communication Channels . . . . . . . 11 81 4. Control Channel between Homenet Naming Authority (HNA) and 82 Distribution Master (DM) . . . . . . . . . . . . . . . . . . 13 83 4.1. Information to build the Public Homenet Zone. . . . . . . 13 84 4.2. Information to build the DNSSEC chain of trust . . . . . 13 85 4.3. Information to set the Synchronization Channel . . . . . 14 86 4.4. Deleting the delegation . . . . . . . . . . . . . . . . . 14 87 4.5. Messages Exchange Description . . . . . . . . . . . . . . 14 88 4.5.1. Retrieving information for the Public Homenet Zone. . 15 89 4.5.2. Providing information for the DNSSEC chain of trust . 16 90 4.5.3. Providing information for the Synchronization Channel 16 91 4.5.4. HNA instructing deleting the delegation . . . . . . . 17 92 4.6. Securing the Control Channel between Homenet Naming 93 Authority (HNA) and Distribution Master (DM) . . . . . . 17 94 4.7. Implementation Concerns . . . . . . . . . . . . . . . . . 18 95 5. DM Synchronization Channel between HNA and DM . . . . . . . . 19 96 5.1. Securing the Synchronization Channel between HNA and DM . 20 97 6. DM Distribution Channel . . . . . . . . . . . . . . . . . . . 20 98 7. HNA Security Policies . . . . . . . . . . . . . . . . . . . . 21 99 8. DNSSEC compliant Homenet Architecture . . . . . . . . . . . . 21 100 9. Homenet Reverse Zone Channels Configuration . . . . . . . . . 21 101 10. Homenet Public Zone Channel Configurations . . . . . . . . . 22 102 11. Renumbering . . . . . . . . . . . . . . . . . . . . . . . . . 23 103 11.1. Hidden Primary . . . . . . . . . . . . . . . . . . . . . 24 104 11.2. Distribution Master . . . . . . . . . . . . . . . . . . 25 105 12. Privacy Considerations . . . . . . . . . . . . . . . . . . . 26 106 13. Security Considerations . . . . . . . . . . . . . . . . . . . 27 107 13.1. HNA DMand RDM channels . . . . . . . . . . . . . . . . . 27 108 13.2. Names are less secure than IP addresses . . . . . . . . 27 109 13.3. Names are less volatile than IP addresses . . . . . . . 27 110 13.4. DNS Reflection Attacks . . . . . . . . . . . . . . . . . 28 111 13.5. Reflection Attack involving the Hidden Primary . . . . . 28 112 13.6. Reflection Attacks involving the DM . . . . . . . . . . 30 113 13.7. Reflection Attacks involving the Public Authoritative 114 Servers . . . . . . . . . . . . . . . . . . . . . . . . 30 115 13.8. Flooding Attack . . . . . . . . . . . . . . . . . . . . 31 116 13.9. Replay Attack . . . . . . . . . . . . . . . . . . . . . 31 117 14. Data Model for Outsourced information . . . . . . . . . . . . 32 118 15. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 32 119 16. Acknowledgment . . . . . . . . . . . . . . . . . . . . . . . 32 120 17. References . . . . . . . . . . . . . . . . . . . . . . . . . 32 121 17.1. Normative References . . . . . . . . . . . . . . . . . . 33 122 17.2. Informative References . . . . . . . . . . . . . . . . . 36 123 Appendix A. Envisioned deployment scenarios . . . . . . . . . . 38 124 A.1. CPE Vendor . . . . . . . . . . . . . . . . . . . . . . . 38 125 A.2. Agnostic CPE . . . . . . . . . . . . . . . . . . . . . . 38 126 Appendix B. Example: Homenet Zone . . . . . . . . . . . . . . . 39 127 Appendix C. Example: HNA necessary parameters for outsourcing . 41 128 Appendix D. Example: A manufacturer provisioned HNA product flow 42 129 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 43 131 1. Introduction 133 The Homenet Naming Authority (HNA) is responsible for making devices 134 within the home network accessible by name within the home network as 135 well as from outside the home network (e.g. the Internet). IPv6 136 connectivity provides the possibility of global end to end IP 137 connectivity. End users will be able to transparently make use of 138 this connectivity if they can use names to access the services they 139 want from their home network. 141 The use of a DNS zone for each home network is a reasonable and 142 scalable way to make the set of public names visible. There are a 143 number of ways to populate such a zone. This specification proposes 144 a way based on a number of assumptions about typical home networks. 146 1. The names of the devices accessible from the Internet are stored 147 in the Public Homenet Zone, served by a DNS authoritative server. 149 2. It is unlikely that home networks will contain sufficiently 150 robust platforms designed to host a service such as the DNS on 151 the Internet and as such would expose the home network to DDoS 152 attacks. 154 3. [RFC7368] emphasizes that the home network is subject to 155 connectivity disruptions with the ISP. But, names used within 156 the home MUST be resilient against such disruption. 158 This specification makes the public names resolvable within both the 159 home network and on the Internet, even when there are disruptions. 161 This is achieved by having a device inside the home network that 162 builds, signs, publishes, and manages a Public Homenet Zone, thus 163 providing bindings between public names, IP addresses, and other RR 164 types. 166 The management of the names can be a role that the Customer Premises 167 Equipment (CPE) does. Other devices in the home network could 168 fulfill this role e.g. a NAS server, but for simplicity, this 169 document assumes the function is located on one of the CPE devices. 171 The homenet architecture [RFC7368] makes it clear that a home network 172 may have multiple CPEs. The management of the Public Homenet Zone 173 involves DNS specific mechanisms that cannot be distributed over 174 multiple servers (primary server), when multiple nodes can 175 potentially manage the Public Homenet Zone, a single node needs to be 176 selected per outsourced zone. This selected node is designated as 177 providing the Homenet Naming Authority (HNA) function. 179 The process by which a single HNA is selected per zone is not in 180 scope for this document. It is envisioned that a future document 181 will describe an HNCP mechanism to elect the single HNA. 183 CPEs, which may host the HNA function, as well as home network 184 devices, are usually low powered devices not designed for terminating 185 heavy traffic. As a result, hosting an authoritative DNS service 186 visible to the Internet may expose the home network to resource 187 exhaustion and other attacks. On the other hand, if the only copy of 188 the public zone is on the Internet, then Internet connectivity 189 disruptions would make the names unavailable inside the homenet. 191 In order to avoid resource exhaustion and other attacks, this 192 document describes an architecture that outsources the authoritative 193 naming service of the home network. More specifically, the HNA 194 builds the Public Homenet Zone and outsources it to an DNS 195 Outsourcing Infrastructure (DOI) via a Distribution Master (DM). The 196 DNS Outsourcing Infrastructure (DOI) is in charge of publishing the 197 corresponding Public Homenet Zone on the Internet. The transfer of 198 DNS zone information is achieved using standard DNS mechanisms 199 involving primary and secondary DNS servers, with the HNA hosted 200 primary being a stealth primary, and the Distribution Master a 201 secondary. 203 Section 3.1 provides an architecture description that describes the 204 relation between the HNA and the Outsourcing Architecture. In order 205 to keep the Public Homenet Zone up-to-date Section 5 describes how 206 the HNA and the DNS Outsourcing Infrastructure synchronizes the Pubic 207 Homenet Zone. 209 The proposed architecture is explicitly designed to enable fully 210 functional DNSSEC, and the Public Homenet Zone is expected to be 211 signed with a secure delegation. DNSSEC key management and zone 212 signing is handled by the HNA. 214 Section 10 discusses management and configuration of the Public 215 Homenet Zone. It shows that the HNA configuration of the Outsourcing 216 infrastructure can involve no or little interaction with the end 217 user. More specifically, it shows that the existence of an account 218 in the DOI is sufficient for the DOI to push the necessary 219 configuration. 221 Section 9 discusses management of one or more reverse zones. It 222 shows that management of the reverse zones can be entirely automated 223 and benefit from a pre-established relation between the ISP and the 224 home network. Note that such scenarios may also be met for the 225 Public Homenet Zone, but not necessarily. 227 Section 11 discusses how renumbering should be handled. Finally, 228 Section 12 and Section 13 respectively discuss privacy and security 229 considerations when outsourcing the Public Homenet Zone. 231 The Public Homenet Zone is expected to contain public information 232 only in a single universal view. This document does not define how 233 the information required to construct this view is derived. 235 It is also not in the scope of this document to define names for 236 exclusive use within the boundaries of the local home network. 237 Instead, local scope information is expected to be provided to the 238 home network using local scope naming services. mDNS [RFC6762] DNS-SD 239 [RFC6763] are two examples of these services. Currently mDNS is 240 limited to a single link network. However, future protocols and 241 architectures [I-D.ietf-homenet-simple-naming] are expected to 242 leverage this constraint as pointed out in [RFC7558]. 244 1.1. Selecting Names to Publish 246 While this document does not create any normative mechanism by which 247 the selection of names to publish, this document anticipates that the 248 home network administrator (a humuan), will be presented with a list 249 of current names and addresses present on the inside of the home 250 network. 252 The administrator would mark which devices (by name), are to be 253 published. The HNA would then collect the IPv6 address(es) 254 associated with that device, and put the name into the Public Homenet 255 Zone. The address of the device can be collected from a number of 256 places: mDNS [RFC6762], DHCP [RFC6644], UPnP, PCP [RFC6887], or 257 manual configuration. 259 A device may have a Global Unicast Address (GUA), a Unique Local IPv6 260 Address (ULA), as as well IPv6-Link-Local addresses, IPv4-Link-Local 261 Addresses, and RFC1918 addresses. Of these the link-local are never 262 useful for the Public Zone, and should be ommitted. The IPv6 ULA and 263 the RFC1918 addresses may be useful to publish, if the home network 264 environment features a VPN that would allow the home owner to reach 265 the network. 267 The IPv6 ULA addressees are significantly safer to publish, as the 268 RFC1918 addressees are likely to be confusing to any other entity. 270 In general, one expects the GUA to be the default address to be 271 published. However, during periods when the home network has 272 connectivity problems, the ULA and RFC1918 addressees can be used 273 inside the home, and the mapping from public name to locally useful 274 location address would permit many services secured with HTTPS to 275 continue to operate. 277 1.2. Alternative solutions 279 An alternative existing solution in IPv4 is to have a single zone, 280 where a host uses a RESTful HTTP service to register a single name 281 into a common public zone. This is often called "Dynamic DNS", and 282 there are a number of commercial providers, including Dyn, Gandi etc. 283 These solutions were typically used by a host behind the CPE to make 284 it's CPE IPv4 address visible, usually in order to enable incoming 285 connections. 287 For a small number (one to three) of hosts, use of such a system 288 provides an alternative to the architecture described in this 289 document. 291 The alternative does suffer from some severe limitations: 293 o the CPE/HNA router is unaware of the process, and cannot respond 294 to queries for these names when there are disruptions in 295 connectivity. This makes the home user or application dependent 296 on having to resolve different names in the event of outages or 297 disruptions. 299 o the CPE/HNA router cannot control the process. Any host can do 300 this regardless of whether or not the home network administrator 301 wants the name published or not. There is therefore no possible 302 audit trail. 304 o the credentials for the dynamic DNS server need to be securely 305 transferred to all hosts that wish to use it. This is not a 306 problem for a technical user to do with one or two hosts, but it 307 does not scale to multiple hosts and becomes a problem for non- 308 technical users. 310 o "all the good names are taken" - current services put everyone's 311 names into some small set of zones, and there are often conflicts. 312 Distinguishing similar names by delegation of zones was among the 313 primary design goals of the DNS system. 315 o The RESTful services do not always support all RR types. The 316 homenet user is dependent on the service provider supporting new 317 types. By providing full DNS delegation, this document enables 318 all RR types and also future extensions. 320 There is no technical reason why a RESTful cloud service could not 321 provide solutions to many of these problems, but this document 322 describes a DNS based solution. 324 2. Terminology 326 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 327 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 328 "OPTIONAL" in this document are to be interpreted as described in 329 BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all 330 capitals, as shown here. 332 Customer Premises Equipment: (CPE) is a router providing 333 connectivity to the home network. 335 Homenet Zone: is the DNS zone for use within the boundaries of the 336 home network: home.arpa, see [RFC8375]). This zone is not 337 considered public and is out of scope for this document. 339 Registered Homenet Domain: is the Domain Name associated with the 340 home network. 342 Public Homenet Zone: contains the names in the home network that are 343 expected to be publicly resolvable on the Internet. 345 Homenet Naming Authority: (HNA) is a function responsible for 346 managing the Public Homenet Zone. This includes populating the 347 Public Homenet Zone, signing the zone for DNSSEC, as well as 348 managing the distribution of that Homenet Zone to the Outsourcing 349 Infrastructure. 351 DNS Outsourcing Infrastructure (DOI): is the infrastructure 352 responsible for receiving the Public Homenet Zone and publishing 353 it on the Internet. It is mainly composed of a Distribution 354 Master and Public Authoritative Servers. 356 Public Authoritative Servers: are the authoritative name servers for 357 the Public Homenet Zone. Name resolution requests for the Homenet 358 Domain are sent to these servers. For resiliency the Public 359 Homenet Zone SHOULD be hosted on multiple servers. 361 Homenet Authoritative Servers: are authoritative name servers within 362 the Homenet network. 364 Distribution Master (DM): is the (set of) server(s) to which the HNA 365 synchronizes the Public Homenet Zone, and which then distributes 366 the relevant information to the Public Authoritative Servers. 368 Homenet Reverse Zone: The reverse zone file associated with the 369 Public Homenet Zone. 371 Reverse Public Authoritative Servers: equivalent to Public 372 Authoritative Servers specifically for reverse resolution. 374 Reverse Distribution Master: equivalent to Distribution Master 375 specifically for reverse resolution. 377 Homenet DNSSEC Resolver: a resolver that performs a DNSSEC 378 resolution on the home network for the Public Homenet Zone. The 379 resolution is performed requesting the Homenet Authoritative 380 Servers. 382 DNSSEC Resolver: a resolver that performs a DNSSEC resolution on the 383 Internet for the Public Homenet Zone. The resolution is performed 384 requesting the Public Authoritative Servers. 386 3. Architecture Description 388 This section provides an overview of the architecture for outsourcing 389 the authoritative naming service fromn the HNA to the DNS Outsourcing 390 Infrastructure in Section 3.1. Section Appendix B and Appendix C 391 illustrates this architecture with the example of a Public Homenet 392 Zone as well as necessary parameter to configure the HNA. 394 3.1. Architecture Overview 396 Figure 1 illustrates the architecture where the HNA outsources the 397 publication of the Public Homenet Zone to the DNS Outsourcing 398 Infrastructure (DOI). 400 The Public Homenet Zone is identified by the Registered Homenet 401 Domain Name - myhome.isp.example. 403 The ".local" as well as ".home.arpa" are explicitly not considered as 404 Public Homenet zones. 406 The HNA SHOULD build the Public Homenet Zone in a single view 407 populated with all resource records that are expected to be published 408 on the Internet. 410 As explained in {#selectingnames}, how the Public Homenet Zone is 411 populated is out of the scope of this document. 413 The HNA also signs the Public Homenet Zone. The HNA handles all 414 operations and keying material required for DNSSEC, so there is no 415 provision made in this architecture for transferring private DNSSEC 416 related keying material between the HNA and the DM. 418 Once the Public Homenet Zone has been built, the HNA outsources it to 419 the DNS Outsourcing Infrastructure as described in Figure 1. 421 The HNA acts as a hidden primary while the DM behaves as a secondary 422 responsible to distribute the Public Homenet Zone to the multiple 423 Public Authoritative Servers that DNS Outsourcing Infrastructure is 424 responsible for. 426 The DM has 3 communication channels: 428 o a DM Control Channel (see section Section 4) to configure the HNA 429 and the Outsourcing Infrastructure, 431 o a DM Synchronization Channel (see section Section 5 to synchronize 432 the Public Homenet Zone on the HNA and on the DM. 434 o one or more Distribution Channels (see section Section 6 that 435 distributes the Public Homenet Zone from the DM to the Public 436 Authoritative Server serving the Public Homenet Zone on the 437 Internet. 439 There MAY be multiple DM's, and multiple servers per DM. This text 440 assumes a single DM server for simplicity, but there is no reason why 441 each channel need to be implemented on the same server, or indeed use 442 the same code base. 444 It is important to note that while the HNA is configured as an 445 authoritative server, it is not expected to answer to DNS requests 446 from the public Internet for the Public Homenet Zone. The function 447 of the HNA is limited to building the zone and synchronization with 448 the DM. 450 The addresses associated with the HNA SHOULD NOT be mentioned in the 451 NS records of the Public Homenet zone, unless additional security 452 provisions necessary to protect the HNA from external attack have 453 been taken. 455 The DNS Outsourcing Infrastructure is also responsible for ensuring 456 the DS record has been updated in the parent zone. 458 Resolution is performed by the DNSSEC resolvers. When the resolution 459 is performed outside the home network, the DNSSEC Resolver resolves 460 the DS record on the Global DNS and the name associated to the Public 461 Homenet Zone (example.com) on the Public Authoritative Servers. 463 When the resolution is performed from within the home network, the 464 Homenet DNSSEC Resolver may proceed similarly. On the other hand, to 465 provide resilience to the Public Homenet Zone in case of disruption, 466 the Homenet DNSSEC Resolver SHOULD be able to perform the resolution 467 on the authoritative name service of the home network implemented by 468 the Homenet Authoritative Servers. These servers are not expected to 469 be mentioned in the Public Homenet Zone, nor to be accessible from 470 the Internet. As such their information as well as the corresponding 471 signed DS record MAY be provided by the HNA to the Homenet DNSSEC 472 Resolvers, e.g., using HNCP. Such configuration is outside the scope 473 of this document. 475 How the Homenet Authoritative Servers are provisioned is also out of 476 scope of this specification. It could be implemented using primary 477 secondaries servers, or via rsync. In some cases, the HNA and 478 Homenet Authoritative Servers may be combined together which would 479 result in a common instantiation of an authoritative server on the 480 WAN and inner interface. Other mechanisms may also be used. 482 Home network | Internet 483 | 484 | +----------------------------+ 485 | | DNS | 486 | | Outsourcing Infrastructure | 487 Control | | | 488 +-----------------------+ Channel | | +-----------------------+ | 489 | HNA |<-------------->| Distribution Master | | 490 |+---------------------+| | | |+---------------------+| | 491 || Public Homenet Zone ||Synchronization || Public Homenet Zone || | 492 || (example.com) || Channel | | || (example.com) || | 493 |+---------------------+|<-------------->|+---------------------+| | 494 +----------------------+| | | +-----------------------+ | 495 | | ^ Distribution | 496 | | | Channel | 497 +-----------------------+ | | v | 498 | Homenet Authoritative | | | +-----------------------+ | 499 | Server(s) | | | | Public Authoritative | | 500 |+---------------------+| | | | Server(s) | | 501 ||Public Homenet Zone || | | |+---------------------+| | 502 || (example.com) || | | || Public Homenet Zone || | 503 |+---------------------+| | | || (example.com) || | 504 +-----------------------+ | | |+---------------------+| | 505 ^ | | | +-----------------------+ | 506 | | | +----------^---|-------------+ 507 | | | | | 508 | | name resolution | | 509 | v | | v 510 +----------------------+ | +-----------------------+ 511 | Homenet | | | Internet | 512 | DNSSEC Resolver | | | DNSSEC Resolver | 513 +----------------------+ | +-----------------------+ 515 Figure 1: Homenet Naming Architecture Name Resolution 517 3.2. Distribution Master Communication Channels 519 This section details the interfaces and channels of the DM, that is 520 the Control Channel, the Synchronization Channel and the Distribution 521 Channel. 523 The Control Channel and the Synchronization Channel are the 524 interfaces used between the HNA and the DNS Outsourcing 525 Infrastructure. The entity within the DNS Outsourcing Infrastructure 526 responsible to handle these communications is the DM and 527 communications between the HNA and the DM SHOULD be protected and 528 mutually authenticated. While section Section 4.6 discusses in more 529 depth the different security protocols that could be used to secure, 530 this specification RECOMMENDS the use of TLS with mutually 531 authentication based on certificates to secure the channel between 532 the HNA and the DM. 534 The Control Channel is used to set up the Synchronization Channel. 535 We assume that the HNA initiates the Control Channel connection with 536 the DM and as such has a prior knowledge of the DM identity (X509 537 certificate), the IP address and port to use and protocol to set 538 secure session. We also assume the DM has knowledge of the identity 539 of the HNA (X509 certificate) as well as the Registered Homenet 540 Domain. For more detail to see how this can be achieved, please see 541 section Section 10. 543 The information exchanged between the HNA and the DM is using DNS 544 messages. DNS messages can be protected using various kind of 545 transport layers, among others, UDP:53/DTLS, TLS/TCP:53, HTTPS:443. 547 There was consideration to using a standard TSIG [RFC2845] or SIG(0) 548 [RFC2931] to perform a dynamic DNS update to the DM. There are a 549 number of issues with this. 551 The main one is that the Dynamic DNS update would also update the 552 parent zone's (NS, DS and associated A or AAAA records) while the 553 goal is to update the Distribution Master's configuration files. The 554 visible NS records SHOULD remain pointing at the cloud provider's 555 anycast addresses. Revealing the address of the HNA in the DNS is 556 not desirable. Please see section Section 4.2 for more details. 558 This specification also assumes: 560 o the DM serves both the Control Channel and Synchronization Channel 561 on a single IP address, single port and with a single transport 562 protocol. 564 o the HNA uses a single IP address for both the Control and 565 Synchronization channel by default. However, the HNA MAY use 566 distinct IP addresses - see section Section 5 and section {sec- 567 sync-info}} for more details. 569 The Distribution Channel is internal to the DNS Outsourcing 570 Infrastructure and as such is not the primary concern of this 571 specification. 573 4. Control Channel between Homenet Naming Authority (HNA) and 574 Distribution Master (DM) 576 The DM Control Channel is used by the HNA and the DNS Outsourcing 577 Infrastructure to exchange information related to the configuration 578 of the delegation which includes: 580 4.1. Information to build the Public Homenet Zone. 582 When the HNA builds the public zone, it must include information that 583 it retrieves from the DM relating to how the zone is to be published. 585 The information includes at least names and IP addresses of the 586 Public Authoritative Name Servers. In term of RRset information this 587 includes: 589 o the MNAME of the SOA, 591 o the NS and associated A and AAA RRsets of the name servers. 593 Optionally the DNS Outsourcing Infrastructure MAY also provide 594 operational parameters such as other fields of SOA (SERIAL, RNAME, 595 REFRESH, RETRY, EXPIRE and MINIMUM). As the information is necessary 596 for the HNA to proceed and the information is associated to the 597 Outsourcing Infrastructure, this information exchange is mandatory. 599 4.2. Information to build the DNSSEC chain of trust 601 The HNA SHOULD provide the hash of the KSK (DS RRset), so the that 602 DNS Outsourcing Infrastructure provides this value to the parent 603 zone. A common deployment use case is that the Outsourcing 604 Infrastructure is the registrar of the Registered Homenet Domain, and 605 as such, its relationship with the registry of the parent zone 606 enables it to update the parent zone. When such relation exists, the 607 HNA should be able to request the DNS Outsourcing Infrastructure to 608 update the DS RRset in the parent zone. A direct update is 609 especially necessary to initialize the chain of trust. 611 Though the HNA may also later directly update the values of the DS 612 via the Control Channel, it is RECOMMENDED to use other mechanisms 613 such as CDS and CDNSKEY [RFC7344] for transparent updates during key 614 roll overs. 616 As some deployment may not provide an DNS Outsourcing Infrastructure 617 that will be able to update the DS in the parent zone, this 618 information exchange is OPTIONAL. 620 By accepting the DS RR, the DM commits in taking care of advertising 621 the DS to the parent zone. Upon refusal, the DM clearly indicates it 622 does not have the capacity to proceed to the update. 624 4.3. Information to set the Synchronization Channel 626 That information sets the primary/secondary relation between the HNA 627 and the DM. The HNA works as a primary authoritative DNS server, and 628 MUST provide the corresponding IP address. 630 The specified IP address on the HNA side and the currently used IP 631 address of the DM defines the IP addresses involved in the 632 Synchronization Channel. Ports and transport protocol are the same 633 as those used by the Control Channel. By default, the same IP 634 address used by the HNA is considered by the DM. Exchange of this 635 information is OPTIONAL. 637 4.4. Deleting the delegation 639 The purpose of the previous sections were to exchange information in 640 order to set a delegation. The HNA MUST also be able to delete a 641 delegation with a specific DM. Upon an instruction of deleting the 642 delegation, the DM MUST stop serving the Public Homenet Zone. 644 4.5. Messages Exchange Description 646 There are multiple ways these information could be exchanged between 647 the HNA and the DM. This specification defines a mechanism that re- 648 use the DNS exchanges format. The intention is to reuse standard 649 libraries especially to check the format of the exchanged fields as 650 well as to minimize the additional libraries needed for the HNA. The 651 re-use of DNS exchanges achieves these goals. Note that while 652 information is provided using DNS exchanges, the exchanged 653 information is not expected to be set in any zone file, instead this 654 information is expected to be processed appropriately. 656 The Control Channel is not expected to be a long term session. After 657 a predefined timer the Control Channel is expected to be terminated. 658 The Control Channel MAY Be re-opened at any time later. 660 The provisioning process SHOULD provide a method of securing the 661 control channel, so that the content of messages can be 662 authenticated. This authentication MAY be based on certificates for 663 both the DM and each HNA. The DM may also create the initial 664 configuration for the delegation zone in the parent zone during the 665 provisioning process. 667 4.5.1. Retrieving information for the Public Homenet Zone. 669 The information provided by the DM to the HNA is retrieved by the HNA 670 with an AXFR exchange. The AXFR message enables the response to 671 contain any type of RRsets. The response might be extended in the 672 future if additional information will be needed. Alternatively, the 673 information provided by the HNA to the DM is pushed by the HNA via a 674 DNS update exchange. 676 To retrieve the necessary information to build the Public Homenet 677 Zone, the HNA MUST send an DNS request of type AXFR associated to the 678 Registered Homenet Domain. The DM MUST respond with a zone template. 679 The zone template MUST contain a RRset of type SOA, one or multiple 680 RRset of type NS and zero or more RRset of type A or AAAA. 682 o The SOA RR is used to indicate to the HNA the value of the MNAME 683 of the Public Homenet Zone. 685 o The NAME of the SOA RR MUST be the Registered Homenet Domain. 687 o The MNAME value of the SOA RDATA is the value provided by the DNS 688 Outsourcing Infrastructure to the HNA. 690 o Other RDATA values (RNAME, REFRESH, RETRY, EXPIRE and MINIMUM) are 691 provided by the DNS Outsourcing Infrastructure as suggestions. 693 The NS RRsets are used to carry the Public Authoritative Servers of 694 the DNS Outsourcing Infrastructure. Their associated NAME MUST be 695 the Registered Homenet Domain. 697 The TTL and RDATA are those expected to be published on the Public 698 Homenet Zone. The RRsets of Type A and AAAA MUST have their NAME 699 matching the NSDNAME of one of the NS RRsets. 701 Upon receiving the response, the HNA MUST validate format and 702 properties of the SOA, NS and A or AAAA RRsets. If an error occurs, 703 the HNA MUST stop proceeding and MUST report an error. Otherwise, 704 the HNA builds the Public Homenet Zone by setting the MNAME value of 705 the SOA as indicated by the SOA provided by the AXFR response. The 706 HNA SHOULD set the value of NAME, REFRESH, RETRY, EXPIRE and MINIMUM 707 of the SOA to those provided by the AXFR response. The HNA MUST 708 insert the NS and corresponding A or AAAA RRset in its Public Homenet 709 Zone. The HNA MUST ignore other RRsets. If an error message is 710 returned by the DM, the HNA MUST proceed as a regular DNS resolution. 711 Error messages SHOULD be logged for further analysis. If the 712 resolution does not succeed, the outsourcing operation is aborted and 713 the HNA MUST close the Control Channel. 715 4.5.2. Providing information for the DNSSEC chain of trust 717 To provide the DS RRset to initialize the DNSSEC chain of trust the 718 HNA MAY send a DNS UPDATE [RFC2136] message. 720 1. The NAME in the SOA MUST be set to the parent zone of the 721 Registered Homenet Domain - that is where the DS records should 722 be inserted. 724 2. The DS RRset MUST be placed in the Update section of the UPDATE 725 query, and the NAME SHOULD be set to the Registered Homenet 726 Domain. 728 3. The RDATA of the DS RR SHOULD correspond to the DS record to be 729 inserted in the parent zone. 731 o A NOERROR response from the MD is a commitment to update the 732 parent zone with the provided DS. 734 o An error indicates the MD will not update the DS, and other method 735 should be used by the HNA. 737 4.5.3. Providing information for the Synchronization Channel 739 To provide the IP address of the primary, the HNA MAY send a DNS 740 UPDATE message. 742 1. The NAME in the SOA MUST be the parent zone of the Registered 743 Homenet Domain. 745 2. The Update section MUST be a RRset of Type NS. 747 3. The RDATA MUST be a RRset of type A or AAAA that designates the 748 IP addresses associated to the primary. 750 4. There may be multiple IP addresses. 752 5. These IP addresses MUST be provided in the additional section. 754 The reason to provide these IP addresses is that it is NOT 755 RECOMMENDED to publish these IP addresses. As a result, it is not 756 expected to resolve them. 758 o A NOERROR response indicates the DM has configured the secondary 759 and is committed to serve as a secondary. 761 o An error indicates the DM is not configured as a secondary. 763 The regular DNS error message SHOULD be returned to the HNA when an 764 error occurs. In particular a FORMERR is returned when a format 765 error is found, this includes when unexpected RRSets are added or 766 when RRsets are missing. 768 o A SERVFAIL error is returned when a internal error is encountered. 770 o A NOTZONE error is returned when update and Zone sections are not 771 coherent, a NOTAUTH error is returned when the DM is not 772 authoritative for the Zone section. 774 o A REFUSED error is returned when the DM refuses to proceed to the 775 configuration and the requested action. 777 4.5.4. HNA instructing deleting the delegation 779 To instruct to delete the delegation the HNA MAY send a DNS UPDATE 780 Delete message. 782 1. The NAME in the SOA MUST be the parent zone of the Registered 783 Homenet Domain. 785 2. The Update section MUST be a RRset of Type NS. 787 3. The NAME associated to the NS RRSet MUST be the Registered Domain 788 Name. 790 As indicated by [RFC2136] section 2.5.2 the delete instruction is set 791 by setting the TTL to 0, the Class to ANY, the RDLENGTH to 0 and the 792 RDATA MUST be empty. 794 4.6. Securing the Control Channel between Homenet Naming Authority 795 (HNA) and Distribution Master (DM) 797 The control channel between the HNA and the DM MUST be secured at 798 both the HNA and the DM. 800 Secure protocols (like TLS [RFC8446] / DTLS [I-D.ietf-tls-dtls13]) 801 SHOULD be used to secure the transactions between the DM and the HNA. 803 The advantage of TLS/DTLS is that this technology is widely deployed, 804 and most of the devices already embed TLS/DTLS libraries, possibly 805 also taking advantage of hardware acceleration. Further, TLS/DTLS 806 provides authentication facilities and can use certificates to 807 mutually authenticate the DM and HNA at the application layer, 808 including available API. On the other hand, using TLS/DTLS requires 809 implementing DNS exchanges over TLS/DTLS, as well as a new service 810 port. 812 The HNA SHOULD authenticate inbound connections from the DM using 813 standard mechanisms, such as a public certificate with baked-in root 814 certificates on the HNA, or via DANE {!RFC6698}}. The HNA is expected 815 to be provisioned with a connection to the DM by the manufacturer, or 816 during some user-initiated onboarding process, see Section 10. 818 The DM SHOULD authenticate the HNA and check that inbound messages 819 are from the appropriate client. The DM MAY use a self-signed CA 820 certificate mechanism per HNA, or public certificates for this 821 purpose. 823 IPsec [RFC4301] and IKEv2 [RFC7296] were considered. They would need 824 to operate in transport mode, and the authenticated end points would 825 need to be visible to the applications, and this is not commonly 826 available at the time of this writing. 828 A pure DNS solution using TSIG and/or SIG(0) to authenticate message 829 was also considered. Section 10 envisions one mechanism would 830 involve the end user, with a browser, signing up to a service 831 provider, with a resulting OAUTH2 token to be provided to the HNA. A 832 way to translate this OAUTH2 token from HTTPS web space to DNS SIG(0) 833 space seems overly problematic, and so the enrollment protocol using 834 web APIs was determined to be easier to implement at scale. 836 Note also that authentication of message exchanges between the HNA 837 and the DM SHOULD NOT use the external IP address of the HNA to index 838 the appropriate keys. As detailed in Section 11, the IP addresses of 839 the DM and the Hidden Primary are subject to change, for example 840 while the network is being renumbered. This means that the necessary 841 keys to authenticate transaction SHOULD NOT be indexed using the IP 842 address, and SHOULD be resilient to IP address changes. 844 4.7. Implementation Concerns 846 The Hidden Primary Server on the HNA differs from a regular 847 authoritative server for the home network due to: 849 Interface Binding: the Hidden Primary Server will almost certainly 850 listen on the WAN Interface, whereas a regular authoritative 851 server for the home network would listen on the internal home 852 network interface. 854 Limited exchanges: the purpose of the Hidden Primary Server is to 855 synchronize with the DM, not to serve any zones to end users, or 856 the public Internet. 858 As a result, exchanges are performed with specific nodes (the DM). 859 Further, exchange types are limited. The only legitimate exchanges 860 are: NOTIFY initiated by the Hidden Primary and IXFR or AXFR 861 exchanges initiated by the DM. 863 On the other hand, regular authoritative servers would respond to any 864 hosts, and any DNS query would be processed. The HNA SHOULD filter 865 IXFR/AXFR traffic and drop traffic not initiated by the DM. The HNA 866 MUST listen for DNS on TCP and UDP and MUST at least allow SOA 867 lookups of the Homenet Zone. 869 5. DM Synchronization Channel between HNA and DM 871 The DM Synchronization Channel is used for communication between the 872 HNA and the DM for synchronizing the Public Homenet Zone. Note that 873 the Control Channel and the Synchronization Channel are by 874 construction different channels even though there they MAY use the 875 same IP addresses. In fact the Control Channel is set between the 876 HNA working as a client using port YYYY (a high range port) toward a 877 service provided by the MD at port XX (well known port). 879 On the other hand, the Synchronization Channel is set between the DM 880 working as a client using port ZZZZ ( a high range port) toward a 881 service a service provided by the HNA at port XX. 883 As a result, even though the same couple of IP addresses may be 884 involved the Control Channel and the Synchronization Channel are 885 always distinct channels. 887 Uploading and dynamically updating the zone file on the DM can be 888 seen as zone provisioning between the HNA (Hidden Primary) and the DM 889 (Secondary Server). This can be handled via AXFR + DNS UPDATE. 891 This document RECOMMENDS use of a primary / secondary mechanism 892 instead of the use of DNS UPDATE. The primary / secondary mechanism 893 is RECOMMENDED as it scales better and avoids DoS attacks. Note that 894 even when UPDATE messages are used, these messages are using a 895 distinct channel as those used to set the configuration. 897 Note that there is no standard way to distribute a DNS primary 898 between multiple devices. As a result, if multiple devices are 899 candidate for hosting the Hidden Primary, some specific mechanisms 900 should be designed so the home network only selects a single HNA for 901 the Hidden Primary. Selection mechanisms based on HNCP [RFC7788] are 902 good candidates. 904 The HNA acts as a Hidden Primary Server, which is a regular 905 authoritative DNS Server listening on the WAN interface. 907 The DM is configured as a secondary for the Homenet Domain Name. 908 This secondary configuration has been previously agreed between the 909 end user and the provider of the Outsourcing Infrastructure as part 910 of either the provisioning or due to receipt of UPDATE messages on 911 the DM Control Channel. 913 The Homenet Reverse Zone MAY also be updated either with DNS UPDATE 914 [RFC2136] or using a primary / secondary synchronization. 916 5.1. Securing the Synchronization Channel between HNA and DM 918 The Synchronization Channel used standard DNS request. 920 First the primary notifies the secondary that the zone must be 921 updated and eaves the secondary to proceed with the update when 922 possible/convenient. 924 Then, a NOTIFY message is sent by the primary, which is a small 925 packet that is less likely to load the secondary. 927 Finally, the AXFR [RFC1034] or IXFR [RFC1995] query performed by the 928 secondary is a small packet sent over TCP (section 4.2 [RFC5936]), 929 which mitigates reflection attacks using a forged NOTIFY. 931 The AXFR request from the DM to the HNA SHOULD be secured. DNS over 932 TLS [RFC7858] is RECOMMENDED. 934 When using TLS, the HNA MAY authenticate inbound connections from the 935 DM using standard mechanisms, such as a public certificate with 936 baked-in root certificates on the HNA, or via DANE {!RFC6698}} 938 The HNA MAY apply a simple IP filter on inbound AXFR requests to 939 ensure they only arrive from the DM Synchronization Channel. In this 940 case, the HNA SHOULD regularly check (via DNS resolution) that the 941 address of the DM in the filter is still valid. 943 6. DM Distribution Channel 945 The DM Distribution Channel is used for communication between the DM 946 and the Public Authoritative Servers. The architecture and 947 communication used for the DM Distribution Channels is outside the 948 scope of this document, and there are many existing solutions 949 available e.g. rsynch, DNS AXFR, REST, DB copy. 951 7. HNA Security Policies 953 This section details security policies related to the Hidden Primary 954 / Secondary synchronization. 956 The Hidden Primary, as described in this document SHOULD drop any 957 queries from the home network. This could be implemented via port 958 binding and/or firewall rules. The precise mechanism deployed is out 959 of scope of this document. The Hidden Primary SHOULD drop any DNS 960 queries arriving on the WAN interface that are not issued from the 961 DM. The Hidden Primary SHOULD drop any outgoing packets other than 962 DNS NOTIFY query, SOA response, IXFR response or AXFR responses. The 963 Hidden Primary SHOULD drop any incoming packets other than DNS NOTIFY 964 response, SOA query, IXFR query or AXFR query. The Hidden Primary 965 SHOULD drop any non protected IXFR or AXFR exchange,depending on how 966 the synchronization is secured. 968 8. DNSSEC compliant Homenet Architecture 970 [RFC7368] in Section 3.7.3 recommends DNSSEC to be deployed on both 971 the authoritative server and the resolver. The resolver side is out 972 of scope of this document, and only the authoritative part of the 973 server is considered. 975 This document assumes the HNA signs the Public Homenet Zone. 977 Secure delegation is achieved only if the DS RRset is properly set in 978 the parent zone. Secure delegation is performed by the HNA or the 979 DNS Outsourcing Infrastructures. 981 The DS RRset can be updated manually with nsupdate for example. This 982 requires the HNA or the DNS Outsourcing Infrastructure to be 983 authenticated by the DNS server hosting the parent of the Public 984 Homenet Zone. Such a trust channel between the HNA and the parent 985 DNS server may be hard to maintain with HNAs, and thus may be easier 986 to establish with the DNS Outsourcing Infrastructure. In fact, the 987 Public Authoritative Server(s) may use Automating DNSSEC Delegation 988 Trust Maintenance [RFC7344]. 990 9. Homenet Reverse Zone Channels Configuration 992 The Public Homenet Zone is associated to a Registered Homenet Domain 993 and the ownership of that domain requires a specific registration 994 from the end user as well as the HNA being provisioned with some 995 authentication credentials. Such steps are mandatory unless the DNS 996 Outsourcing Infrastructure has some other means to authenticate the 997 HNA. Such situation may occur, for example, when the ISP provides 998 the Homenet Domain as well as the DNS Outsourcing Infrastructure. 1000 In this case, the HNA may be authenticated by the physical link 1001 layer, in which case the authentication of the HNA may be performed 1002 without additional provisioning of the HNA. While this may be not so 1003 common for the Public Homenet Zone, this situation is expected to be 1004 quite common for the Reverse Homenet Zone. 1006 More specifically, a common case is that the upstream ISP provides 1007 the IPv6 prefix to the Homenet with a IA_PD [RFC8415] option and 1008 manages the DNS Outsourcing Infrastructure of the associated reverse 1009 zone. This leave place for setting up automatically the relation 1010 between HNA and the DNS Outsourcing infrastructure as described in 1011 [I-D.ietf-homenet-naming-architecture-dhc-options]. 1013 With this relation automatically configured, the synchronization 1014 between the Home network and the DNS Outsourcing Infrastructure 1015 happens similarly as for the Public Homenet Zone described earlier in 1016 this document. 1018 Note that for home networks hosted by multiple ISPs, each ISP 1019 provides only the DNS Outsourcing Infrastructure of the reverse zones 1020 associated to the delegated prefix. It is also likely that the DNS 1021 exchanges will need to be performed on dedicated interfaces as to be 1022 accepted by the ISP. More specifically, the reverse zone associated 1023 to prefix 1 will not be possible to be performs by the HNA using an 1024 IP address that belongs to prefix 2. Such constraints does not raise 1025 major concerns either for hot standby or load sharing configuration. 1027 With IPv6, the domain space for IP addresses is so large that reverse 1028 zone may be confronted with scalability issues. How the reverse zone 1029 is generated is out of scope of this document. 1030 [I-D.howard-dnsop-ip6rdns] provides guidance on how to address 1031 scalability issues. 1033 10. Homenet Public Zone Channel Configurations 1035 This document does not deal with how the HNA is provisioned with a 1036 trusted relationship to the Distribution Master for the forward zone. 1038 This section details what needs to be provisioned into the HNA and 1039 serves as a requirements statement for mechanisms. 1041 The HNA needs to be provisioned with: 1043 o the Registered Domain (e.g., myhome.isp.example ) 1045 o the contact info for the Distribution Master (DM), including the 1046 DNS name (FQDN), possibly including the IP literal, and a 1047 certificate (or anchor) to be used to authenticate the service 1049 o the DM transport protocol and port (the default is DNS over TLS, 1050 on port 853) 1052 o the HNA credentials used by the DM for its authentication. 1054 The HNA will need to select an IP address for communication for the 1055 Synchronization Channel. This is typically the outside WAN address 1056 of the router, but could be an IPv6 LAN address in the case of a home 1057 with multiple ISPs (and multiple border routers). This is 1058 communicated in section BLAH when the NS and A record is 1059 communicated. 1061 The above parameters MUST be be provisionined for ISP-specific 1062 reverse zones, as per 1063 [I-D.ietf-homenet-naming-architecture-dhc-options]. ISP-specific 1064 forward zones MAY also be provisioned using 1065 [I-D.ietf-homenet-naming-architecture-dhc-options], but zones which 1066 are not related to a specific ISP zone (such as with a DNS provider) 1067 must be provisioned through other means. 1069 Similarly, it the HNA is provided by a registrar, the HNA may be 1070 given configured to end user. 1072 In the absence of specific pre-established relation, these pieces of 1073 information may be entered manually by the end user. In order to 1074 ease the configuration from the end user the following scheme may be 1075 implemented. 1077 The HNA may present the end user a web interface where it provides 1078 the end user the ability to indicate the Registered Domain or the 1079 registrar for example a preselected list. Once the regsitrar has 1080 been selected, the HNA redirects the end user to that registrar in 1081 order to receive a access token. The access token will enable the 1082 HNA to retrieve the DM parameters associated to the Registered 1083 Domain. These parameters will include the credentials used by the 1084 HNA to establish the Control and Synchronization Channels. 1086 Such architecture limits the necessary steps to configure the HNA 1087 from the end user. 1089 11. Renumbering 1091 This section details how renumbering is handled by the Hidden Primary 1092 server or the DM. Both types of renumbering are discussed i.e. 1093 "make-before-break" and "break-before-make" (aka flash renumbering). 1095 In the make-before-break renumbering scenario, the new prefix is 1096 advertised, the network is configured to prepare the transition to 1097 the new prefix. During a period of time, the two prefixes old and 1098 new coexist, before the old prefix is completely removed. 1100 In the break-before-make renumbering scenario, the new prefix is 1101 advertised making the old prefix obsolete. 1103 Renumbering has been extensively described in [RFC4192] and analyzed 1104 in [RFC7010] and the reader is expected to be familiar with them 1105 before reading this section. 1107 11.1. Hidden Primary 1109 In a renumbering scenario, the Hidden Primary is informed it is being 1110 renumbered. In most cases, this occurs because the whole home 1111 network is being renumbered. As a result, the Public Homenet Zone 1112 will also be updated. Although the new and old IP addresses may be 1113 stored in the Public Homenet Zone, we recommend that only the newly 1114 reachable IP addresses be published. 1116 To avoid reachability disruption, IP connectivity information 1117 provided by the DNS SHOULD be coherent with the IP plane. In our 1118 case, this means the old IP address SHOULD NOT be provided via the 1119 DNS when it is not reachable anymore. Let for example TTL be the TTL 1120 associated with a RRset of the Public Homenet Zone, it may be cached 1121 for TTL seconds. Let T_NEW be the time the new IP address replaces 1122 the old IP address in the Homenet Zone, and T_OLD_UNREACHABLE the 1123 time the old IP is not reachable anymore. 1125 In the case of the make-before-break, seamless reachability is 1126 provided as long as T_OLD_UNREACHABLE - T_NEW > 2 * TTL. If this is 1127 not satisfied, then devices associated with the old IP address in the 1128 home network may become unreachable for 2 * TTL - (T_OLD_UNREACHABLE 1129 - T_NEW). In the case of a break-before-make, T_OLD_UNREACHABLE = 1130 T_NEW, and the device may become unreachable up to 2 * TTL. 1132 Once the Public Homenet Zone file has been updated on the Hidden 1133 Primary, the Hidden Primary needs to inform the DNS Outsourcing 1134 Infrastructure that the Public Homenet Zone has been updated and that 1135 the IP address to use to retrieve the updated zone has also been 1136 updated. Both notifications are performed using regular DNS 1137 exchanges. Mechanisms to update an IP address provided by lower 1138 layers with protocols like SCTP [RFC4960], MOBIKE [RFC4555] are not 1139 considered in this document. 1141 The Hidden Primary SHOULD inform the DM that the Public Homenet Zone 1142 has been updated by sending a NOTIFY payload with the new IP address. 1143 In addition, this NOTIFY payload SHOULD be authenticated using SIG(0) 1144 or TSIG. When the DM receives the NOTIFY payload, it MUST 1145 authenticate it. Note that the cryptographic key used for the 1146 authentication SHOULD be indexed by the Registered Homenet Domain 1147 contained in the NOTIFY payload as well as the RRSIG. In other 1148 words, the IP address SHOULD NOT be used as an index. 1150 If authentication succeeds, the DM MUST also notice the IP address 1151 has been modified and perform a reachability check before updating 1152 its primary configuration. The routability check MAY performed by 1153 sending a SOA request to the Hidden Primary using the source IP 1154 address of the NOTIFY. This exchange is also secured, and if an 1155 authenticated response is received from the Hidden Primary with the 1156 new IP address, the DM SHOULD update its configuration file and 1157 retrieve the Public Homenet Zone using an AXFR or a IXFR exchange. 1159 Note that the primary reason for providing the IP address is that the 1160 Hidden Primary is not publicly announced in the DNS. If the Hidden 1161 Primary were publicly announced in the DNS, then the IP address 1162 update could have been performed using the DNS as described in 1163 Section 11.2. 1165 11.2. Distribution Master 1167 Renumbering of the Distribution Master results in it changing its IP 1168 address. As the DM is a secondary, the destination of DNS NOTIFY 1169 payloads MUST be changed, and any configuration/firewalling that 1170 restricts DNS AXFR/IXFR operations MUST be updated. 1172 If the DM is configured in the Hidden Primary configuration file 1173 using a FQDN, then the update of the IP address is performed by DNS. 1174 More specifically, before sending the NOTIFY, the Hidden Primary 1175 performs a DNS resolution to retrieve the IP address of the 1176 secondary. 1178 As described in Section 11.1, the DM DNS information SHOULD be 1179 coherent with the IP plane. The TTL of the Distribution Master name 1180 SHOULD be adjusted appropriately prior to changing the IP address. 1182 Some DNS infrastructure uses the IP address to designate the 1183 secondary, in which case, other mechanisms must be found. A reason 1184 for using IP addresses instead of names is generally to reach an 1185 internal interface that is not designated by a FQDN, and to avoid 1186 potential bootstrap problems. Such scenarios are considered as out 1187 of scope in the case of home networks. 1189 12. Privacy Considerations 1191 Outsourcing the DNS Authoritative service from the HNA to a third 1192 party raises a few privacy related concerns. 1194 The Public Homenet Zone lists the names of services hosted in the 1195 home network. Combined with blocking of AXFR queries, the use of 1196 NSEC3 [RFC5155] (vs NSEC [RFC4034]) prevents an attacker from being 1197 able to walk the zone, to discover all the names. However, the 1198 attacker may be able to walk the reverse DNS zone, or use other 1199 reconnaissance techniques to learn this information as described in 1200 [RFC7707]. 1202 In general a home owner is expected only to publish names for which 1203 there is some need to be able to reference externally. Publication 1204 of the name does not imply that the service is necessarily reachable 1205 from any or all parts of the Internet. [RFC7084] mandates that the 1206 outgoing-only policy [RFC6092] be available, and in many cases it is 1207 configured by default. A well designed User Interface would combine 1208 a policy for making a service public by a name with a policy on who 1209 may access it. 1211 In many cases, the home owner wishes to publish names for services 1212 that only they will be able to access. The access control may 1213 consist of an IP source address range, or access may be restricted 1214 via some VPN functionality. The purpose of publishing the name is so 1215 that the service may be access by the same name both within the home, 1216 and outside the home. Sending traffic to the relevant IPv6 address 1217 causes the relevant VPN policy to be enacted upon. 1219 While the problem of getting access to internal names has been solved 1220 in Enterprise configurations with a split-DNS, and such a thing could 1221 be done in the home, many recent improvements to VPN user interfaces 1222 make it more likely that an individual might have multiple 1223 connections configured. For instance, an adult child checking on the 1224 state of a home automation system for a parent. 1226 In addition to the Public Homenet Zone, pervasive DNS monitoring can 1227 also monitor the traffic associated with the Public Homenet Zone. 1228 This traffic may provide an indication of the services an end user 1229 accesses, plus how and when they use these services. Although, 1230 caching may obfuscate this information inside the home network, it is 1231 likely that outside your home network this information will not be 1232 cached. 1234 13. Security Considerations 1236 The Homenet Naming Architecture described in this document solves 1237 exposing the HNA's DNS service as a DoS attack vector. 1239 13.1. HNA DMand RDM channels 1241 The HNA DM channels are specified to include their own security 1242 mechanisms that are designed to provide the minimum attack surface, 1243 and to authenticate transactions where necessary. 1245 Note that in the case of the Reverse Homenet Zone, the data is less 1246 subject to attacks than in the Public Homenet Zone. In addition, the 1247 HNA and the DM MAY belong to the same administrative domain, i.e. the 1248 ISP. More specifically, the WAN interface is located in the ISP 1249 network. As a result, if provisioned using DHCPv6, the security 1250 credential may not even transit in the home network. On the other 1251 hand, if the HNA is not hosted at the border of the home network, the 1252 credential may rely on the security associated to DHCPv6. Even if 1253 HNA and DM are in the same administrative domain it is strongly 1254 RECOMMENDED to use a secure channel. 1256 The security of these channels heavily relies on TLS and the DM or 1257 RDM is authenticated by its certificate. To ensure the multiple TLS 1258 session are are continuously authenticating the same entity, TLS may 1259 take advantage of second factor authentication as described in 1260 [RFC8672]. 1262 13.2. Names are less secure than IP addresses 1264 This document describes how an end user can make their services and 1265 devices from his home network reachable on the Internet by using 1266 names rather than IP addresses. This exposes the home network to 1267 attackers, since names are expected to include less entropy than IP 1268 addresses. In fact, with IP addresses, the Interface Identifier is 1269 64 bits long leading to up to 2^64 possibilities for a given 1270 subnetwork. This is not to mention that the subnet prefix is also of 1271 64 bits long, thus providing up to 2^64 possibilities. On the other 1272 hand, names used either for the home network domain or for the 1273 devices present less entropy (livebox, router, printer, nicolas, 1274 jennifer, ...) and thus potentially exposes the devices to dictionary 1275 attacks. 1277 13.3. Names are less volatile than IP addresses 1279 IP addresses may be used to locate a device, a host or a service. 1280 However, home networks are not expected to be assigned a time 1281 invariant prefix by ISPs. As a result, observing IP addresses only 1282 provides some ephemeral information about who is accessing the 1283 service. On the other hand, names are not expected to be as volatile 1284 as IP addresses. As a result, logging names over time may be more 1285 valuable than logging IP addresses, especially to profile an end 1286 user's characteristics. 1288 PTR provides a way to bind an IP address to a name. In that sense, 1289 responding to PTR DNS queries may affect the end user's privacy. For 1290 that reason end users may choose not to respond to PTR DNS queries 1291 and MAY instead return a NXDOMAIN response. 1293 13.4. DNS Reflection Attacks 1295 An attacker performs a reflection attack when it sends traffic to one 1296 or more intermediary nodes (reflectors), that in turn send back 1297 response traffic to the victim. Motivations for using an 1298 intermediary node might be anonymity of the attacker, as well as 1299 amplification of the traffic. Typically, when the intermediary node 1300 is a DNSSEC server, the attacker sends a DNSSEC query and the victim 1301 is likely to receive a DNSSEC response. This section analyzes how 1302 the different components may be involved as a reflector in a 1303 reflection attack. Section 13.5 considers the Hidden Primary, 1304 Section 13.6 the Synchronization Server, and Section 13.7 the Public 1305 Authoritative Server(s). 1307 13.5. Reflection Attack involving the Hidden Primary 1309 With the specified architecture, the Hidden Primary is only expected 1310 to receive DNS queries of type SOA, AXFR or IXFR. This section 1311 analyzes how these DNS queries may be used by an attacker to perform 1312 a reflection attack. 1314 DNS queries of type AXFR and IXFR use TCP and as such are less 1315 subject to reflection attacks. This makes SOA queries the only 1316 remaining practical vector of attacks for reflection attacks, based 1317 on UDP. 1319 SOA queries are not associated with a large amplification factor 1320 compared to queries of type "ANY" or to query of non existing FQDNs. 1321 This reduces the probability a DNS query of type SOA will be involved 1322 in a DDoS attack. 1324 SOA queries are expected to follow a very specific pattern, which 1325 makes rate limiting techniques an efficient way to limit such 1326 attacks, and associated impact on the naming service of the home 1327 network. 1329 Motivations for such a flood might be a reflection attack, but could 1330 also be a resource exhaustion attack performed against the Hidden 1331 Primary. The Hidden Primary only expects to exchange traffic with 1332 the DM, that is its associated secondary. Even though secondary 1333 servers may be renumbered as mentioned in Section 11, the Hidden 1334 Primary is likely to perform a DNSSEC resolution and find out the 1335 associated secondary's IP addresses in use. As a result, the Hidden 1336 Primary is likely to limit the origin of its incoming traffic based 1337 on the origin IP address. 1339 With filtering rules based on IP address, SOA flooding attacks are 1340 limited to forged packets with the IP address of the secondary 1341 server. In other words, the only victims are the Hidden Primary 1342 itself or the secondary. There is a need for the Hidden Primary to 1343 limit that flood to limit the impact of the reflection attack on the 1344 secondary, and to limit the resource needed to carry on the traffic 1345 by the HNA hosting the Hidden Primary. On the other hand, mitigation 1346 should be performed appropriately, so as to limit the impact on the 1347 legitimate SOA sent by the secondary. 1349 The main reason for the DM sending a SOA query is to update the SOA 1350 RRset after the TTL expires, to check the serial number upon the 1351 receipt of a NOTIFY query from the Hidden Primary, or to re-send the 1352 SOA request when the response has not been received. When a flood of 1353 SOA queries is received by the Hidden Primary, the Hidden Primary may 1354 assume it is involved in an attack. 1356 There are few legitimate time slots when the secondary is expected to 1357 send a SOA query. Suppose T_NOTIFY is the time a NOTIFY is sent by 1358 the Hidden Primary, T_SOA the last time the SOA has been queried, TTL 1359 the TTL associated to the SOA, and T_REFRESH the refresh time defined 1360 in the SOA RRset. The specific time SOA queries are expected can be 1361 for example T_NOTIFY, T_SOA + 2/3 TTL, T_SOA + TTL, T_SOA + 1362 T_REFRESH., and. Outside a few minutes following these specific time 1363 slots, the probability that the HNA discards a legitimate SOA query 1364 is very low. Within these time slots, the probability the secondary 1365 may have its legitimate query rejected is higher. If a legitimate 1366 SOA is discarded, the secondary will re-send SOA query every "retry 1367 time" second until "expire time" seconds occurs, where "retry time" 1368 and "expire time" have been defined in the SOA. 1370 As a result, it is RECOMMENDED to set rate limiting policies to 1371 protect HNA resources. If a flood lasts more than the expired time 1372 defined by the SOA, it is RECOMMENDED to re-initiate a 1373 synchronization between the Hidden Primary and the secondaries. 1375 13.6. Reflection Attacks involving the DM 1377 The DM acts as a secondary coupled with the Hidden Primary. The 1378 secondary expects to receive NOTIFY query, SOA responses, AXFR and 1379 IXFR responses from the Hidden Primary. 1381 Sending a NOTIFY query to the secondary generates a NOTIFY response 1382 as well as initiating an SOA query exchange from the secondary to the 1383 Hidden Primary. As mentioned in [RFC1996], this is a known "benign 1384 denial of service attack". As a result, the DM SHOULD enforce rate 1385 limiting on sending SOA queries and NOTIFY responses to the Hidden 1386 Primary. Most likely, when the secondary is flooded with valid and 1387 signed NOTIFY queries, it is under a replay attack which is discussed 1388 in Section 13.9. The key thing here is that the secondary is likely 1389 to be designed to be able to process much more traffic than the 1390 Hidden Primary hosted on a HNA. 1392 This paragraph details how the secondary may limit the NOTIFY 1393 queries. Because the Hidden Primary may be renumbered, the secondary 1394 SHOULD NOT perform permanent IP filtering based on IP addresses. In 1395 addition, a given secondary may be shared among multiple Hidden 1396 Primaries which make filtering rules based on IP harder to set. The 1397 time at which a NOTIFY is sent by the Hidden Primary is not 1398 predictable. However, a flood of NOTIFY messages may be easily 1399 detected, as a NOTIFY originated from a given Homenet Zone is 1400 expected to have a very limited number of unique source IP addresses, 1401 even when renumbering is occurring. As a result, the secondary, MAY 1402 rate limit incoming NOTIFY queries. 1404 On the Hidden Primary side, it is recommended that the Hidden Primary 1405 sends a NOTIFY as long as the zone has not been updated by the 1406 secondary. Multiple SOA queries may indicate the secondary is under 1407 attack. 1409 13.7. Reflection Attacks involving the Public Authoritative Servers 1411 Reflection attacks involving the Public Authoritative Server(s) are 1412 similar to attacks on any DNS Outsourcing Infrastructure. This is 1413 not specific to the architecture described in this document, and thus 1414 are considered as out of scope. 1416 In fact, one motivation of the architecture described in this 1417 document is to expose the Public Authoritative Server(s) to attacks 1418 instead of the HNA, as it is believed that the Public Authoritative 1419 Server(s) will be better able to defend itself. 1421 13.8. Flooding Attack 1423 The purpose of flooding attacks is mostly resource exhaustion, where 1424 the resource can be bandwidth, memory, or CPU for example. 1426 One goal of the architecture described in this document is to limit 1427 the surface of attack on the HNA. This is done by outsourcing the 1428 DNS service to the Public Authoritative Server(s). By doing so, the 1429 HNA limits its DNS interactions between the Hidden Primary and the 1430 DM. This limits the number of entities the HNA interacts with as 1431 well as the scope of DNS exchanges - NOTIFY, SOA, AXFR, IXFR. 1433 The use of an authenticated channel with SIG(0) or TSIG between the 1434 HNA and the DM, enables detection of illegitimate DNS queries, so 1435 appropriate action may be taken - like dropping the queries. If 1436 signatures are validated, then most likely, the HNA is under a replay 1437 attack, as detailed in Section 13.9 1439 In order to limit the resource required for authentication, it is 1440 recommended to use TSIG that uses symmetric cryptography over SIG(0) 1441 that uses asymmetric cryptography. 1443 13.9. Replay Attack 1445 Replay attacks consist of an attacker either resending or delaying a 1446 legitimate message that has been sent by an authorized user or 1447 process. As the Hidden Primary and the DM use an authenticated 1448 channel, replay attacks are mostly expected to use forged DNS queries 1449 in order to provide valid traffic. 1451 From the perspective of an attacker, using a correctly authenticated 1452 DNS query may not be detected as an attack and thus may generate a 1453 response. Generating and sending a response consumes more resources 1454 than either dropping the query by the defender, or generating the 1455 query by the attacker, and thus could be used for resource exhaustion 1456 attacks. In addition, as the authentication is performed at the DNS 1457 layer, the source IP address could be impersonated in order to 1458 perform a reflection attack. 1460 Section 13.4 details how to mitigate reflection attacks and 1461 Section 13.8 details how to mitigate resource exhaustion. Both 1462 sections assume a context of DoS with a flood of DNS queries. This 1463 section suggests a way to limit the attack surface of replay attacks. 1465 As SIG(0) and TSIG use inception and expiration time, the time frame 1466 for replay attack is limited. SIG(0) and TSIG recommends a fudge 1467 value of 5 minutes. This value has been set as a compromise between 1468 possibly loose time synchronization between devices and the valid 1469 lifetime of the message. As a result, better time synchronization 1470 policies could reduce the time window of the attack. 1472 14. Data Model for Outsourced information 1474 The following is an abbridged example of a set of data that 1475 represents the needed configuration parameters for outsourcing. 1477 { 1478 "dm_notify" : "2001:db8:1f15:62e:21c::2", 1479 "dm_acl" : "2001:db8:1f15:62e:21c::/64", 1480 "dm_ctrl" : "192.168.1.18", 1481 "dm_port" : "4433", 1482 "ns_list" : [ "ns1.publicdns.example", "ns2.publicdns.example"], 1483 "zone" : "daniel.homenetdns.example", 1484 "auth_method" : "certificate", 1485 "hna_certificate":"-----BEGIN CERTIFICATE-----\nMIIDTjCCFGy....", 1486 "hna_key" : "-----BEGIN RSA PRIVATE KEY-----\nMIIEowICAQE...." 1487 } 1489 Here goes a YANG MODULE description of the above. 1491 15. IANA Considerations 1493 This document has no actions for IANA. 1495 16. Acknowledgment 1497 The authors wish to thank Philippe Lemordant for its contributions on 1498 the early versions of the draft; Ole Troan for pointing out issues 1499 with the IPv6 routed home concept and placing the scope of this 1500 document in a wider picture; Mark Townsley for encouragement and 1501 injecting a healthy debate on the merits of the idea; Ulrik de Bie 1502 for providing alternative solutions; Paul Mockapetris, Christian 1503 Jacquenet, Francis Dupont and Ludovic Eschard for their remarks on 1504 HNA and low power devices; Olafur Gudmundsson for clarifying DNSSEC 1505 capabilities of small devices; Simon Kelley for its feedback as 1506 dnsmasq implementer; Andrew Sullivan, Mark Andrew, Ted Lemon, Mikael 1507 Abrahamson, and Ray Bellis for their feedback on handling different 1508 views as well as clarifying the impact of outsourcing the zone 1509 signing operation outside the HNA; Mark Andrew and Peter Koch for 1510 clarifying the renumbering. 1512 17. References 1513 17.1. Normative References 1515 [RFC1033] Lottor, M., "Domain Administrators Operations Guide", 1516 RFC 1033, DOI 10.17487/RFC1033, November 1987, 1517 . 1519 [RFC1034] Mockapetris, P., "Domain names - concepts and facilities", 1520 STD 13, RFC 1034, DOI 10.17487/RFC1034, November 1987, 1521 . 1523 [RFC1035] Mockapetris, P., "Domain names - implementation and 1524 specification", STD 13, RFC 1035, DOI 10.17487/RFC1035, 1525 November 1987, . 1527 [RFC1995] Ohta, M., "Incremental Zone Transfer in DNS", RFC 1995, 1528 DOI 10.17487/RFC1995, August 1996, 1529 . 1531 [RFC1996] Vixie, P., "A Mechanism for Prompt Notification of Zone 1532 Changes (DNS NOTIFY)", RFC 1996, DOI 10.17487/RFC1996, 1533 August 1996, . 1535 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 1536 Requirement Levels", BCP 14, RFC 2119, 1537 DOI 10.17487/RFC2119, March 1997, 1538 . 1540 [RFC2136] Vixie, P., Ed., Thomson, S., Rekhter, Y., and J. Bound, 1541 "Dynamic Updates in the Domain Name System (DNS UPDATE)", 1542 RFC 2136, DOI 10.17487/RFC2136, April 1997, 1543 . 1545 [RFC2142] Crocker, D., "Mailbox Names for Common Services, Roles and 1546 Functions", RFC 2142, DOI 10.17487/RFC2142, May 1997, 1547 . 1549 [RFC2308] Andrews, M., "Negative Caching of DNS Queries (DNS 1550 NCACHE)", RFC 2308, DOI 10.17487/RFC2308, March 1998, 1551 . 1553 [RFC2845] Vixie, P., Gudmundsson, O., Eastlake 3rd, D., and B. 1554 Wellington, "Secret Key Transaction Authentication for DNS 1555 (TSIG)", RFC 2845, DOI 10.17487/RFC2845, May 2000, 1556 . 1558 [RFC2931] Eastlake 3rd, D., "DNS Request and Transaction Signatures 1559 ( SIG(0)s )", RFC 2931, DOI 10.17487/RFC2931, September 1560 2000, . 1562 [RFC4034] Arends, R., Austein, R., Larson, M., Massey, D., and S. 1563 Rose, "Resource Records for the DNS Security Extensions", 1564 RFC 4034, DOI 10.17487/RFC4034, March 2005, 1565 . 1567 [RFC4192] Baker, F., Lear, E., and R. Droms, "Procedures for 1568 Renumbering an IPv6 Network without a Flag Day", RFC 4192, 1569 DOI 10.17487/RFC4192, September 2005, 1570 . 1572 [RFC4301] Kent, S. and K. Seo, "Security Architecture for the 1573 Internet Protocol", RFC 4301, DOI 10.17487/RFC4301, 1574 December 2005, . 1576 [RFC4555] Eronen, P., "IKEv2 Mobility and Multihoming Protocol 1577 (MOBIKE)", RFC 4555, DOI 10.17487/RFC4555, June 2006, 1578 . 1580 [RFC4960] Stewart, R., Ed., "Stream Control Transmission Protocol", 1581 RFC 4960, DOI 10.17487/RFC4960, September 2007, 1582 . 1584 [RFC5155] Laurie, B., Sisson, G., Arends, R., and D. Blacka, "DNS 1585 Security (DNSSEC) Hashed Authenticated Denial of 1586 Existence", RFC 5155, DOI 10.17487/RFC5155, March 2008, 1587 . 1589 [RFC5936] Lewis, E. and A. Hoenes, Ed., "DNS Zone Transfer Protocol 1590 (AXFR)", RFC 5936, DOI 10.17487/RFC5936, June 2010, 1591 . 1593 [RFC6092] Woodyatt, J., Ed., "Recommended Simple Security 1594 Capabilities in Customer Premises Equipment (CPE) for 1595 Providing Residential IPv6 Internet Service", RFC 6092, 1596 DOI 10.17487/RFC6092, January 2011, 1597 . 1599 [RFC6644] Evans, D., Droms, R., and S. Jiang, "Rebind Capability in 1600 DHCPv6 Reconfigure Messages", RFC 6644, 1601 DOI 10.17487/RFC6644, July 2012, 1602 . 1604 [RFC6762] Cheshire, S. and M. Krochmal, "Multicast DNS", RFC 6762, 1605 DOI 10.17487/RFC6762, February 2013, 1606 . 1608 [RFC6763] Cheshire, S. and M. Krochmal, "DNS-Based Service 1609 Discovery", RFC 6763, DOI 10.17487/RFC6763, February 2013, 1610 . 1612 [RFC6887] Wing, D., Ed., Cheshire, S., Boucadair, M., Penno, R., and 1613 P. Selkirk, "Port Control Protocol (PCP)", RFC 6887, 1614 DOI 10.17487/RFC6887, April 2013, 1615 . 1617 [RFC7010] Liu, B., Jiang, S., Carpenter, B., Venaas, S., and W. 1618 George, "IPv6 Site Renumbering Gap Analysis", RFC 7010, 1619 DOI 10.17487/RFC7010, September 2013, 1620 . 1622 [RFC7084] Singh, H., Beebee, W., Donley, C., and B. Stark, "Basic 1623 Requirements for IPv6 Customer Edge Routers", RFC 7084, 1624 DOI 10.17487/RFC7084, November 2013, 1625 . 1627 [RFC7296] Kaufman, C., Hoffman, P., Nir, Y., Eronen, P., and T. 1628 Kivinen, "Internet Key Exchange Protocol Version 2 1629 (IKEv2)", STD 79, RFC 7296, DOI 10.17487/RFC7296, October 1630 2014, . 1632 [RFC7344] Kumari, W., Gudmundsson, O., and G. Barwood, "Automating 1633 DNSSEC Delegation Trust Maintenance", RFC 7344, 1634 DOI 10.17487/RFC7344, September 2014, 1635 . 1637 [RFC7368] Chown, T., Ed., Arkko, J., Brandt, A., Troan, O., and J. 1638 Weil, "IPv6 Home Networking Architecture Principles", 1639 RFC 7368, DOI 10.17487/RFC7368, October 2014, 1640 . 1642 [RFC7558] Lynn, K., Cheshire, S., Blanchet, M., and D. Migault, 1643 "Requirements for Scalable DNS-Based Service Discovery 1644 (DNS-SD) / Multicast DNS (mDNS) Extensions", RFC 7558, 1645 DOI 10.17487/RFC7558, July 2015, 1646 . 1648 [RFC7707] Gont, F. and T. Chown, "Network Reconnaissance in IPv6 1649 Networks", RFC 7707, DOI 10.17487/RFC7707, March 2016, 1650 . 1652 [RFC7788] Stenberg, M., Barth, S., and P. Pfister, "Home Networking 1653 Control Protocol", RFC 7788, DOI 10.17487/RFC7788, April 1654 2016, . 1656 [RFC7858] Hu, Z., Zhu, L., Heidemann, J., Mankin, A., Wessels, D., 1657 and P. Hoffman, "Specification for DNS over Transport 1658 Layer Security (TLS)", RFC 7858, DOI 10.17487/RFC7858, May 1659 2016, . 1661 [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 1662 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 1663 May 2017, . 1665 [RFC8375] Pfister, P. and T. Lemon, "Special-Use Domain 1666 'home.arpa.'", RFC 8375, DOI 10.17487/RFC8375, May 2018, 1667 . 1669 [RFC8415] Mrugalski, T., Siodelski, M., Volz, B., Yourtchenko, A., 1670 Richardson, M., Jiang, S., Lemon, T., and T. Winters, 1671 "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)", 1672 RFC 8415, DOI 10.17487/RFC8415, November 2018, 1673 . 1675 [RFC8446] Rescorla, E., "The Transport Layer Security (TLS) Protocol 1676 Version 1.3", RFC 8446, DOI 10.17487/RFC8446, August 2018, 1677 . 1679 17.2. Informative References 1681 [I-D.howard-dnsop-ip6rdns] 1682 Howard, L., "Reverse DNS in IPv6 for Internet Service 1683 Providers", draft-howard-dnsop-ip6rdns-00 (work in 1684 progress), June 2014. 1686 [I-D.ietf-homenet-naming-architecture-dhc-options] 1687 Migault, D., Weber, R., Mrugalski, T., Griffiths, C., and 1688 W. Cloetens, "DHCPv6 Options for Home Network Naming 1689 Authority", draft-ietf-homenet-naming-architecture-dhc- 1690 options-08 (work in progress), October 2020. 1692 [I-D.ietf-homenet-simple-naming] 1693 Lemon, T., Migault, D., and S. Cheshire, "Homenet Naming 1694 and Service Discovery Architecture", draft-ietf-homenet- 1695 simple-naming-03 (work in progress), October 2018. 1697 [I-D.ietf-tls-dtls13] 1698 Rescorla, E., Tschofenig, H., and N. Modadugu, "The 1699 Datagram Transport Layer Security (DTLS) Protocol Version 1700 1.3", draft-ietf-tls-dtls13-38 (work in progress), May 1701 2020. 1703 [I-D.richardson-homerouter-provisioning] 1704 Richardson, M., "Provisioning Initial Device Identifiers 1705 into Home Routers", draft-richardson-homerouter- 1706 provisioning-00 (work in progress), November 2020. 1708 [RFC8672] Sheffer, Y. and D. Migault, "TLS Server Identity Pinning 1709 with Tickets", RFC 8672, DOI 10.17487/RFC8672, October 1710 2019, . 1712 Appendix A. Envisioned deployment scenarios 1714 A number of deployment have been envisioned, this section aims at 1715 providing a brief description. The use cases are not limitations and 1716 this section is not normative. 1718 A.1. CPE Vendor 1720 A specific vendor with specific relations with a registrar or a 1721 registry may sell a CPE that is provisioned with provisioned domain 1722 name. Such domain name does not need to be necessary human readable. 1724 One possible way is that the vendor also provisions the HNA with a 1725 private and public keys as well as a certificate. Note that these 1726 keys are not expected to be used for DNSSEC signing. Instead these 1727 keys are solely used by the HNA to proceed to the authentication. 1728 Normally the keys should be necessary and sufficient to proceed to 1729 the authentication. The reason to combine the domain name and the 1730 key is that outsourcing infrastructure are likely handle names better 1731 than keys and that domain names might be used as a login which 1732 enables the key to be regenerated. 1734 When the home network owner plugs the CPE at home, the relation 1735 between HNA and DM is expected to work out-of-the-box. 1737 A.2. Agnostic CPE 1739 An CPE that is not preconfigured may also take advanatge to the 1740 protocol defined in this document but some configuration steps will 1741 be needed. 1743 1. The owner of the home network buys a domain name to a registrar, 1744 and as such creates an account on that registrar 1746 2. Either the registrar is also providing the outsourcing 1747 infrastructure or the home network needs to create a specific 1748 account on the outsourcing infrastructure. * If the outsourcing 1749 provider is the registrar, the outsourcing has by design a proof 1750 of ownership of the domain name by the homenet owner. In this 1751 case, it is expected the infrastructure provides the necessary 1752 parameters to the home network owner to configure the HNA. A 1753 good way to provide the parameters would be the home network be 1754 able to copy/paste a JSON object. What matters at that point is 1755 the outsourcing infrastructure being able to generate 1756 authentication credentials for the HNA to authenticate itself to 1757 the outsourcing infrastructure. This obviously requires the home 1758 network to provide the public key gnerated by the HNA in a CSR. 1760 o If the outsourcing infrastructure is not the registrar, then the 1761 proof of ownership needs to be established using protocols like 1762 ACME for example that will end in the generation of a certificate. 1763 ACME is used here to the purpose of automating the generation of 1764 the certificate, the CA may be a specific CA or the outsourcing 1765 infrastructure. With that being done, the outsourcing 1766 infrastructure has a roof of ownership and can proceed as above. 1768 Appendix B. Example: Homenet Zone 1770 This section is not normative and intends to illustrate how the HNA 1771 builds the Homenet Zone. 1773 As depicted in Figure 1, the Public Homenet Zone is hosted on the 1774 Public Authoritative Server(s), whereas the Homenet Zone is hosted on 1775 the HNA. This section considers that the HNA builds the zone that 1776 will be effectively published on the Public Authoritative Server(s). 1777 In other words "Homenet to Public Zone transformation" is the 1778 identity also commonly designated as "no operation" (NOP). 1780 In that case, the Homenet Zone should configure its Name Server RRset 1781 (NS) and Start of Authority (SOA) with the values associated with the 1782 Public Authoritative Server(s). This is illustrated in Figure 2. 1783 public.primary.example.net is the FQDN of the Public Authoritative 1784 Server(s), and IP1, IP2, IP3, IP4 are the associated IP addresses. 1785 Then the HNA should add the additional new nodes that enter the home 1786 network, remove those that should be removed, and sign the Homenet 1787 Zone. 1789 $ORIGIN example.com 1790 $TTL 1h 1792 @ IN SOA public.primary.example.net 1793 hostmaster.example.com. ( 1794 2013120710 ; serial number of this zone file 1795 1d ; secondary refresh 1796 2h ; secondary retry time in case of a problem 1797 4w ; secondary expiration time 1798 1h ; maximum caching time in case of failed 1799 ; lookups 1800 ) 1802 @ NS public.authoritative.servers.example.net 1804 public.primary.example.net A @IP1 1805 public.primary.example.net A @IP2 1806 public.primary.example.net AAAA @IP3 1807 public.primary.example.net AAAA @IP4 1809 Figure 2: Homenet Zone 1811 The SOA RRset is defined in [RFC1033], [RFC1035] and [RFC2308]. This 1812 SOA is specific, as it is used for the synchronization between the 1813 Hidden Primary and the DM and published on the DNS Public 1814 Authoritative Server(s).. 1816 o MNAME: indicates the primary. In our case the zone is published 1817 on the Public Authoritative Server(s), and its name MUST be 1818 included. If multiple Public Authoritative Server(s) are 1819 involved, one of them MUST be chosen. More specifically, the HNA 1820 MUST NOT include the name of the Hidden Primary. 1822 o RNAME: indicates the email address to reach the administrator. 1823 [RFC2142] recommends using hostmaster@domain and replacing the '@' 1824 sign by '.'. 1826 o REFRESH and RETRY: indicate respectively in seconds how often 1827 secondaries need to check the primary, and the time between two 1828 refresh when a refresh has failed. Default values indicated by 1829 [RFC1033] are 3600 (1 hour) for refresh and 600 (10 minutes) for 1830 retry. This value might be too long for highly dynamic content. 1831 However, the Public Authoritative Server(s) and the HNA are 1832 expected to implement NOTIFY [RFC1996]. So whilst shorter refresh 1833 timers might increase the bandwidth usage for secondaries hosting 1834 large number of zones, it will have little practical impact on the 1835 elapsed time required to achieve synchronization between the 1836 Outsourcing Infrastructure and the Hidden Master. As a result, 1837 the default values are acceptable. 1839 o EXPIRE: is the upper limit data SHOULD be kept in absence of 1840 refresh. The default value indicated by [RFC1033] is 3600000 1841 (approx. 42 days). In home network architectures, the HNA 1842 provides both the DNS synchronization and the access to the home 1843 network. This device may be plugged and unplugged by the end user 1844 without notification, thus we recommend a long expiry timer. 1846 o MINIMUM: indicates the minimum TTL. The default value indicated 1847 by [RFC1033] is 86400 (1 day). For home network, this value MAY 1848 be reduced, and 3600 (1 hour) seems more appropriate. 1850 Appendix C. Example: HNA necessary parameters for outsourcing 1852 This section specifies the various parameters required by the HNA to 1853 configure the naming architecture of this document. This section is 1854 informational, and is intended to clarify the information handled by 1855 the HNA and the various settings to be done. 1857 The HNA needs to be configured with the following parameters. These 1858 parameters are necessary to establish a secure channel between the 1859 HNA and the DM as well as to specify the DNS zone that is in the 1860 scope of the communication: 1862 Distribution Master notification address (dm_notify): The associated 1863 FQDNs or IP addresses of the DM to which DNS notifies should be 1864 sent. IP addresses are optional and the FQDN is sufficient and 1865 preferred. If there are concerns about the security of the name 1866 to IP translation, then DNSSEC should be employed. 1868 Authentication Method ("method"): How the HNA authenticates itself 1869 to the DM. This specification defines only "certificate" 1871 Authentication data ("hna_certificate", "hna_key"): While a PSK can 1872 be used used as part of TSIG authentication, it has poor security 1873 properties and is hard to scale. Better solutions use public key 1874 mechanisms, leveraging private keys built into the HNA. 1876 Public Authoritative Server(s) (dm_ctrl and dm_port): The FQDN or IP 1877 addresses of the Public Authoritative Server(s) to which control 1878 messages will be sent. IP addresses are optional and the FQDN is 1879 sufficient. 1881 (XXX? what? It MAY correspond to the data that will be sent in the 1882 NS RRsets and SOA of the Homenet Zone.) 1883 Registered Homenet Domain (???): The domain name used to establish 1884 the secure channel. This name is used by the DM and the HNA for 1885 the primary / secondary configuration as well as to index the 1886 NOTIFY queries of the HNA when the HNA has been renumbered. 1888 Registered Homenet Domain (zone): The Domain Name of the zone. 1889 Multiple Registered Homenet Domains may be provided. This will 1890 generate the creation of multiple Public Homenet Zones. 1892 Public Authoritative Server (ns-list): The Public Authoritative 1893 Server(s) associated with the Registered Homenet Domain. Multiple 1894 Public Authoritative Server(s) may be provided. 1896 For forward zones, the relationship between the HNA and the forward 1897 zone provider may be the result of a number of transactions: 1899 1. The forward zone outsourcing may be provided by the maker of the 1900 Homenet router. In this case, the identity and authorization 1901 could be built in the device at manufacturer provisioning time. 1902 The device would need to be provisioned with a device-unique 1903 credential, and it is likely that the Registered Homenet Domain 1904 would be derived from a public attribute of the device, such as a 1905 serial number. 1907 2. The forward zone outsourcing may be provided by the Internet 1908 Service Provider. In this case, the use of 1909 [I-D.ietf-homenet-naming-architecture-dhc-options] to provide the 1910 credentials is appropriate. 1912 3. The forward zone may be outsourced to a third party, such as a 1913 domain registrar. In this case, the use of the JSON-serialized 1914 YANG data model described in section Section 14 is appropriate, 1915 as it can easily be copy and pasted by the user, or downloaded as 1916 part of a web transaction. 1918 For reverse zones, the relationship is always with the upstream ISP 1919 (although there may be more than one), and so 1920 [I-D.ietf-homenet-naming-architecture-dhc-options] is always the 1921 appropriate interface. 1923 Appendix D. Example: A manufacturer provisioned HNA product flow 1925 This scenario is one where a homenet router device manufacturer 1926 decides to offer DNS hosting as a value add. 1928 [I-D.richardson-homerouter-provisioning] describes a process for a 1929 home router credential provisioning system. The outline of it is 1930 that near the end of the manufacturing process, as part of the 1931 firmware loading, the manufacturer provisions a private key and 1932 certificate into the device. 1934 In addition to having a assymmetric credential known to the 1935 manufacturer, the device also has been provisioned with an agreed 1936 upon name. In the example in the above document, the name 1937 "n8d234f.r.example.net" has already been allocated and confirmed with 1938 the manufacturer. 1940 The HNA can use the above domain for itself. It is not very pretty 1941 or personal, but if the owner wishes a better name, they can arrange 1942 for it. 1944 The configuration would look like: 1946 { 1947 "dm_notify" : "2001:db8:1234:111:222::2", 1948 "dm_acl" : "2001:db8:1234:111:222::/64", 1949 "dm_ctrl" : "manufacturer.example.net", 1950 "dm_port" : "4433", 1951 "ns_list" : [ "ns1.publicdns.example", "ns2.publicdns.example"], 1952 "zone" : "n8d234f.r.example.net", 1953 "auth_method" : "certificate", 1954 "hna_certificate":"-----BEGIN CERTIFICATE-----\nMIIDTjCCFGy....", 1955 } 1957 The dm_ctrl and dm_port values would be built into the firmware. 1959 Authors' Addresses 1961 Daniel Migault 1962 Ericsson 1963 8275 Trans Canada Route 1964 Saint Laurent, QC 4S 0B6 1965 Canada 1967 EMail: daniel.migault@ericsson.com 1969 Ralf Weber 1970 Nominum 1971 2000 Seaport Blvd 1972 Redwood City 94063 1973 US 1975 EMail: ralf.weber@nominum.com 1976 Michael Richardson 1977 Sandelman Software Works 1978 470 Dawson Avenue 1979 Ottawa, ON K1Z 5V7 1980 Canada 1982 EMail: mcr+ietf@sandelman.ca 1984 Ray Hunter 1985 Globis Consulting BV 1986 Weegschaalstraat 3 1987 Eindhoven 5632CW 1988 NL 1990 EMail: v6ops@globis.net 1992 Chris Griffiths 1994 EMail: cgriffiths@gmail.com 1996 Wouter Cloetens 1997 Deutsche Telekom 1999 EMail: wouter.cloetens@external.telekom.de