One document matched: draft-ietf-homenet-naming-architecture-dhc-options-00.xml
<?xml version="1.0" encoding="US-ASCII"?>
<?rfc linefile="1:/tmp/CGI11956.1"?>
<?rfc linefile="1:/tmp/CGI11956.1"?>
<?rfc toc="yes"?>
<!-- generate a table of contents -->
<?rfc symrefs="yes"?>
<!-- use anchors instead of numbers for references -->
<?rfc sortrefs="yes" ?>
<!-- alphabetize the references -->
<?rfc compact="yes" ?>
<!-- conserve vertical whitespace -->
<?rfc subcompact="no" ?>
<!-- but keep a blank line between list items -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY rfc1033 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.1033.xml">
<!ENTITY rfc1035 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.1035.xml">
<!ENTITY rfc2142 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2142.xml">
<!ENTITY rfc2119 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY rfc2136 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2136.xml">
<!ENTITY rfc1996 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.1996.xml">
<!ENTITY rfc1995 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.1995.xml">
<!ENTITY rfc1034 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.1034.xml">
<!ENTITY rfc2845 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2845.xml">
<!ENTITY rfc2930 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2930.xml">
<!ENTITY rfc2931 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2931.xml">
<!ENTITY rfc5246 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5246.xml">
<!ENTITY rfc5936 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5936.xml">
<!ENTITY rfc6347 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6347.xml">
<!ENTITY rfc4301 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.4301.xml">
<!ENTITY rfc5996 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.5996.xml">
<!ENTITY rfc6672 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6672.xml">
<!ENTITY rfc6644 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6644.xml">
<!ENTITY rfc2181 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2181.xml">
<!ENTITY I-D.sury-dnsext-cname-dname PUBLIC "" "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.draft-sury-dnsext-cname-dname-00.xml">
<!ENTITY I-D.ietf-homenet-arch PUBLIC "" "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.draft-ietf-homenet-arch-16.xml">
<!ENTITY I-D.mglt-homenet-naming-architecture-dhc-options PUBLIC "" "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.draft-mglt-homenet-naming-architecture-dhc-options-02.xml">
<!ENTITY I-D.ietf-dnsop-delegation-trust-maintainance PUBLIC "" "http://xml.resource.org/public/rfc/bibxml3/reference.I-D.draft-ietf-dnsop-delegation-trust-maintainance-14.xml">
<!ENTITY rfc6762 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6762.xml">
<!ENTITY rfc6672 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.6672.xml">
]>
<rfc category="std"
docName="draft-ietf-homenet-front-end-naming-delegation-00.txt"
ipr="trust200902">
<front>
<title abbrev="Outsourcing Authoritative Naming Service">Outsourcing Home Network
Authoritative Naming Service</title>
<author fullname="Daniel Migault" initials="D." surname="Migault (Ed)">
<organization>Orange</organization>
<address>
<postal>
<street>38 rue du General Leclerc</street>
<city>92794 Issy-les-Moulineaux Cedex 9</city>
<country>France</country>
</postal>
<phone>+33 1 45 29 60 52</phone>
<email>daniel.migault@orange.com</email>
</address>
</author>
<author fullname="Wouter Cloetens" initials="W." surname="Cloetens">
<organization>SoftAtHome</organization>
<address>
<postal>
<street>vaartdijk 3 701</street>
<city>3018 Wijgmaal</city>
<country>Belgium</country>
</postal>
<phone/>
<email>wouter.cloetens@softathome.com</email>
</address>
</author>
<author fullname="Chris Griffiths" initials="C." surname="Griffiths">
<organization>Dyn</organization>
<address>
<postal>
<street>150 Dow Street</street>
<city>Manchester</city>
<region>NH</region>
<code>03101</code>
<country>US</country>
</postal>
<phone/>
<facsimile/>
<email>cgriffiths@dyn.com</email>
<uri>http://dyn.com</uri>
</address>
</author>
<author fullname="Ralf Weber" initials="R." surname="Weber">
<organization>Nominum</organization>
<address>
<postal>
<street>2000 Seaport Blvd #400</street>
<city>Redwood City</city>
<region>CA</region>
<code>94063</code>
<country>US</country>
</postal>
<phone/>
<facsimile/>
<email>ralf.weber@nominum.com</email>
<uri>http://www.nominum.com</uri>
</address>
</author>
<!-- <date month="February" year="2013"/>-->
<date/>
<area>INTERNET</area>
<workgroup>HOMENET</workgroup>
<abstract>
<t>CPEs are designed to provide IP connectivity to home networks.
Most CPEs assign IP addresses to the nodes of the home network
which makes it a good candidate for hosting the naming service.
With IPv6, the naming service makes nodes reachable from the
home network as well as from the Internet.</t>
<t>However, CPEs have not been designed to host such a naming
service exposed on the Internet. This may expose the CPEs to
resource exhaustion which would make the home network unreachable, and
most probably would also affect the home network inner
communications.</t>
<t>In addition, DNSSEC management and configuration may not be
well understood or mastered by regular end users. Misconfiguration
may also results in naming service disruption, thus these end
users may prefer to rely on third party naming providers.</t>
<t>This document describes a homenet naming architecture where the
CPEs manage the DNS zone associates to its home network, and
outsources the naming service and eventually the DNSSEC management
on the Internet
to a third party designated as the Public Authoritative Servers.</t>
</abstract>
</front>
<middle>
<section title="Requirements notation">
<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in <xref
target="RFC2119"/>.</t>
</section>
<section title="Introduction">
<t>IPv6 provides global end to end IP reachability. To access services hosted in
the home network with IPv6 addresses, end users prefer to use names
instead of long and complex IPv6 addresses.</t>
<t>CPEs are already providing IPv6 connectivity to the home network and
generally provide IPv6 addresses or prefixes to the nodes of the home
network. This makes the CPEs a good candidate to manage binding between
names and IP addresses of the nodes. In addition, <xref target="I-D.ietf-homenet-arch"/> recommends that home networks be resilient to connectivity disruption from the ISP. This requires that a dedicate device inside the home network manage bindings between names and IP addresses of the nodes and builds the DNS Homenet Zone. All this makes the CPE the
natural candidate for setting the DNS(SEC) zone file of the home network.</t>
<t>CPEs are usually low powered devices designed for the home network,
but not for heavy traffic. As a result, hosting the an authoritative DNS service on
the Internet may expose the home network to resource exhaustion, which
may isolate the home network from the Internet and affect the services
hosted by the CPEs, thus affecting the overall home network communications.</t>
<t>In order to avoid resource exhaustion, this document describes an
architecture that outsources the authoritative naming service of
the home network. More specifically, the DNS(SEC) Homenet Zone built by the CPE is outsourced to Public Authoritative Servers. These servers publish the corresponding DN(SEC) Public Zone on the Internet. <xref target="sec-arch-overview"/> describes the architecture. In order to keep the DNS(SEC) Public Zone up-to-date <xref target="sec-synch"/> describes how the DNS(SEC) Homenet Zone and the DN(SEC) Public Zone can be synchronized. The proposed architecture aims at deploying DNSSEC and the DNS(SEC) Public Zone is expected to be signed with a secure delegation. The zone signing and secure delegation can be performed either by the CPE or by the Public Authoritative Servers. <xref target="sec-dnssec-deplyment"/> discusses these two alternatives. <xref target="sec-views"/> discusses the impact of multiple views and <xref target="sec-reverse"/> discusses the case of the reverse zone.</t>
</section>
<!--
<t>This document provides recommendations considering different scenarios. First, the Homenet Zone may be signed by the CPE or by the Public Authoritative Servers. This impacts how the resolution is performed within the home network
First the CPE may be able to sign the DNS Homnet Zone leading to a DNSSEC Homenet Zone. In this case the Public Authoritative Server does not need to sign the zone. Then, if a CPE is not able to sign the zone, the Public Authoritative Server is likely to sign the zone before publishing it on the Internet.</t>
<t>
<t>This document recommends a DNS master / slave mechanism for zone synchronization between the Public Authoritative Servers and the CPE. Then
How these different element interacts and are
configured may depends from one home network to another.</t>
<t>This document considers two kinds of CPE. First, one consider CPE that
signs the Homnet DNS Zone and that outsource their DNSSEC zone. Then CPE that are not able to sign their zone.
So, this document considers that the Naming Service should not be hosted
on the CPE and should be outsourced to a third party.</t>
<t>In addition, the Naming Service of the home network is expected to be
deployed with its security extension DNSSEC. DNSSEC comes
with complex configurations as well as complex operation management like
(DNSSEC secure delegation, DNSSEC key roll over, DNSSEC zone updates). These
operations can hardly be understood by the average end user, and a
misconfiguration may result in invalid naming resolutions that may
make an host, or the whole home network unreachable. So, this document considers
DNSSEC management operations should not be handled by the average end user. Instead, it should
be outsourced to a third party or operated automatically.</t>
<t>This document describes an architecture where
the CPE outsources the authoritative naming service to a third party designated as Public Authoritative Servers.
It describes interactions between the CPE and the Public Authoritative
Servers, that is to say the involved protocols and their respective
configurations. More
specifically, this document does not describe any new protocol. It provides
a guide line to properly use the already existing protocols.</t>
<t>This document provides guidance how to the set the Naming Architecture for a home network. More specifically, it documents the implication of outsourcing zone signing, of partially outsourcing the naming service, of managing private and public zones or on signing/updating the delegation. The goal of these recommendations is to ease the development of automatic procedures, and naming service configuration for the end users.</t>
<t>The document is organized as follows. <xref target="sec-arch-overview"/>
provides an overview of the homenet naming architecture and presents the CPE
and the Public Authoritative Server that handles the authoritative naming
service of the home network as well as DNSSEC management operations on
behalf of the CPE. <xref target="sec-arch-descr"/> describes in details
protocols and configurations to set the homenet naming architecture.
<xref target="sec-configuration-parameters"/> sums up the various
configuration parameters that MAY be filled by the end user on the CPE for
example via a GUI. Finally <xref target="sec-considerations"/> provides
security considerations.</t>
</section>
-->
<section title="Terminology">
<t>
<list hangIndent="6" style="hanging">
<t hangText="- Customer Premises Equipment: ">(CPE) is the router providing connectivity to the home network. It is configured and managed by the end user. In this document, the CPE MAY also hosts services such as DHCPv6. This device MAY be provided by the ISP.</t>
<t hangText="- Registered Homenet Domain: "> is the Domain Name associated to the home network.</t>
<t hangText="- DNS Homenet Zone: ">is the DNS zone associated to the home network. This zone is set by the CPE and essentially contains the bindings between names and IP addresses of the nodes of the home network. In this document, the CPE does neither perform any DNSSEC management operations such as zone signing nor provide an authoritative service for the zone. Both are delegated to the Public Authoritative Server. The CPE synchronizes the DNS Homenet Zone with the Public Authoritative Server via a hidden master / slave architecture. The Public Authoritative Server MAY use specific servers for the synchronization of the DNS Homenet Zone: the Public Authoritative Name Server Set as public available name servers for the Registered Homenet Domain. </t>
<t hangText="- DNS Homenet Reverse Zone: ">The reverse zone file associated to the DNS Homenet Zone.</t>
<t hangText="- Public Authoritative Server: ">performs DNSSEC management operations as well as provides the authoritative service for the zone. In this document, the Public Authoritative Server synchronizes the DNS Homenet Zone with the CPE via a hidden master / slave architecture. The Public Authoritative Server acts as a slave and MAY use specific servers called Public Authoritative Name Server Set. Once the Public Authoritative Server synchronizes the DNS Homenet Zone, it signs the zone and generates the DNSSEC Public Zone. Then the Public Authoritative Server hosts the zone as an authoritative server on the Public Authoritative Master(s).</t>
<t hangText="- DNSSEC Public Zone: ">corresponds to the signed version of the DNS Homenet Zone. It is hosted by the Public Authoritative Server, which is authoritative for this zone, and is reachable on the Public Authoritative Master(s).</t>
<t hangText="- Public Authoritative Master(s): "> are the visible name server hosting the DNSSEC Public Zone. End users' resolutions for the Homenet Domain are sent to this server, and this server is a master for the zone.</t>
<t hangText="- Public Authoritative Name Server Set: ">is the server the CPE synchronizes the DNS Homenet Zone. It is configured as a slave and the CPE acts as master. The CPE sends information so the DNSSEC zone can be set and served.</t>
<t hangText="- Reverse Public Authoritative Master(s): "> are the visible name server hosting the DNS Homenet Reverse Zone. End users' resolutions for the Homenet Domain are sent to this server, and this server is a master for the zone.</t>
<t hangText="- Reverse Public Authoritative Name Server Set: ">is the server the CPE synchronizes the DNS Homenet Reverse Zone. It is configured as a slave and the CPE acts as master. The CPE sends information so the DNSSEC zone can be set and served.</t>
</list>
</t>
</section>
<section anchor="sec-arc-desc" title="Architecture Description">
<t>This section describes the architecture for outsourcing the authoritative naming service from the CPE to the Public Authoritative Master(s). <xref target="sec-arch-overview"/> describes the architecture, <xref target="sec-homenet-zone"/> and <xref target="sec-configuration-parameters"/> illustrate this architecture and shows how the DNS(SEC) Homenet Zone should be built by the CPE, as well as lists the necessary parameters the CPE needs to outsource the authoritative naming service. These two section are informational and non normative.</t>
<section anchor="sec-arch-overview" title="Architecture Overview">
<t><xref target="fig-naming-arch"/> provides an overview of the architecture.</t>
<t>The home network is designated by the Registered Homenet Domain Name -- example.com in <xref target="fig-naming-arch"/>. The CPE builds the DNS(SEC) Homenet Zone associated to the home network. The content of the DNS(SEC) Homenet Zone is out of the scope of this document. The CPE may host and involve multiple services like a web GUI, DHCP <xref target="RFC6644"/> or mDNS <xref target="RFC6762"/>. These services may coexist and may be used to populate the DNS Homenet Zone. This document assumes the DNS(SEC) Homenet Zone has been populated with domain names that are intended to be publicly published and that are publicly reachable. More specifically, names associated to services or devices that are not expected to be reachable from outside the home network or names bound to non globally reachable IP addresses MUST NOT be part of the DNS(SEC) Homenet Zone.</t>
<t>Once the DNS(SEC) Homenet Zone has been built, the CPE does not host the authoritative naming service for it, but instead outsources it to the Public Authoritative Servers. The Public Authoritative Servers take the DNS(SEC) Homenet as an input and publishes the DNS(SEC) Public Zone. In fact the DNS(SEC) Homenet Zone and the DNS(SEC) Public Zone have different names as they may be different. If the CPE does not sign the DNS Homenet Zone, for example, the Public Authoritative Servers may instead sign it on behalf of the CPE. <xref target="fig-naming-arch"/> provides a more detailed description of the Public Authoritative Servers, but overall, it is expected that the CPE provides the DNS(SEC) Homenet Zone, the DNS(SEC) Public Zone is derived from the DNS(SEC) Homenet Zone and published on the Internet.</t>
<t>As a result, DNS(SEC) queries from the DNS(SEC) Resolvers on the Internet are answered by the Public Authoritative Server and do not reach the CPE. <xref target="fig-naming-arch"/> illustrates the case of the resolution of node1.example.com.</t>
<figure title="Homenet Naming Architecture Description" anchor="fig-naming-arch">
<artwork><![CDATA[
home network +-------------------+ Internet
| |
| CPE |
| | +----------------------+
+-------+ |+-----------------+| | Public Authoritative |
| | || DNS(SEC) Homenet|| | Servers |
| node1 | || Zone || |+--------------------+|
| | || || ||DNS(SEC) Public Zone||
+-------+ || Homenet Domain ||=========|| ||
|| Name || ^ || (example.com) ||
node1.\ || (example.com) || | |+--------------------+|
example.com |+-----------------+| | +----------------------+
+-------------------+ | ^ |
Synchronization | |
| |
DNSSEC resolution for node1.example.com | v
+----------------------+
| |
| DNSSEC Resolver |
| |
+----------------------+
]]></artwork>
</figure>
<t>The Public Authoritative Servers are described in <xref target="fig-auth-servers"/>. The Public Authoritative Name Server Set receives the DNS(SEC) Homenet Zone as an input. The received zone may be transformed to output the DNS(SEC) Public Zone. Various operations may be performed here, however the one this document considers here is zone signing when the CPE outsources this operation. Implications of such policy are detailed in <xref target="sec-dnssec-deplyment"/> and <xref target="sec-views"/>.</t>
<figure title="Public Authoritative Servers Description" anchor="fig-auth-servers">
<artwork><![CDATA[
Internet
+--------------------------------------------------------+
| Public Authoritative Servers |
+--------------------------------------------------------+
+----------------------+ +----------------------+
| | | |
| Public Authoritative | | Public Authoritative |
| Name Server Set | | Masters |
| | | |
| +------------------+ | X | +------------------+ |
| | DNS(SEC) Homenet | | ^ | | DNS(SEC) Public | |
=========>| | Zone | | | | | Zone | |
^ | | | | | | | | |
| | | (example.com) | | | | | (example.com) | |
| | +------------------+ | | | +------------------+ |
| +----------------------+ | +----------------------+
| Homenet to Public Zone
Synchronization transformation
from the CPE
]]></artwork>
</figure>
</section>
<section anchor="sec-homenet-zone" title="Example: DNS(SEC) Homenet Zone">
<t>This section is not normative and intends to illustrate how the CPE builds the DNS(SEC) Homenet Zone. </t>
<t>As depicted in <xref target="fig-naming-arch"/> and <xref target="fig-auth-servers"/>,
the DNS(SEC) Public Zone is hosted on the Public Authoritative Masters, whereas the DNS(SEC) Homenet Zone is hosted on the CPE. Motivations for keeping these two zones identical are detailed in <xref target="sec-views"/>, and this section considers that the CPE builds the zone that will be effectively published on the Public Authoritative Masters. In other words "Homenet to Public Zone transformation" is the identity.</t>
<t>In that case, the DNS Homenet Zone should configure its Name
Server RRset (NS) and Start of Authority (SOA) with the ones associated
to the Public Authoritative Masters. This is illustrated in <xref target="fig-homenet-zone"/>.
public.masters.example.net is the FQDN of the Public Authoritative Masters, and IP1, IP2, IP3, IP4 are the associated IP addresses. Then the CPE should add the different new nodes that enter the home network, remove those that should be removed and sign the DNS Homenet Zone.</t>
<figure title="DNS Homenet Zone" anchor="fig-homenet-zone" >
<artwork><![CDATA[
$ORIGIN example.com
$TTL 1h
@ IN SOA public.masters.example.net
hostmaster.example.com. (
2013120710 ; serial number of this zone file
1d ; slave refresh
2h ; slave retry time in case of a problem
4w ; slave expiration time
1h ; maximum caching time in case of failed
; lookups
)
@ NS public.authoritative.servers.example.net
public.masters.example.net A @IP1
public.masters.example.net A @IP2
public.masters.example.net AAAA @IP3
public.masters.example.net AAAA @IP4
]]></artwork>
</figure>
<t>The SOA RRset is defined in <xref target="RFC1033"/>, <xref target="RFC1035"/>. This SOA is specific as it is used for the synchronization between the Hidden Master and the Public Authoritative Name Server Set and published on the DNS Public Authoritative Master.
<list hangIndent="6" style="hanging">
<t hangText="- MNAME: ">indicates the primary master. In our case the zone is published on the Public Authoritative Master, and its name MUST be mentioned. If multiple Public Authoritative Masters are involved, one of them MUST be chosen. More specifically, the CPE MUST NOT place the name of the Hidden Master.</t>
<t hangText="- RNAME: ">indicates the email address to reach the administrator. <xref target="RFC2142"/> recommends to use hostmaster@domain and replacing the '@' sign by '.'.</t>
<t hangText="- REFRESH and RETRY: ">indicate respectively in seconds how often slaves need to check the master and the time between two refresh when a refresh has failed. Default value indicated by <xref target="RFC1033"/> are 3600 (1 hour) for refresh and 600 (10 minutes) for retry. This value MAY be long for highly dynamic content. However, Public Authoritative Masters and the CPE are expected to implement NOTIFY <xref target="RFC1996"/>. Then short values MAY increase the bandwidth usage for slaves hosting large number of zones. As a result, default values looks fine.</t>
<t hangText="EXPIRE: ">is the upper limit data SHOULD be kept in absence of refresh. Default value indicated by <xref target="RFC1033"/> is 3600000 about 42 days. In home network architectures, the CPE provides both the DNS synchronization and the access to the home network. This device MAY be plug / unplugged by the end user without notification, thus we recommend large period.</t>
<t hangText="MINIMUM: ">indicates the minimum TTL. Default value indicated by <xref target="RFC1033"/> is 86400 (1 day). For home network, this value MAY be reduced, and 3600 (1hour) seems more appropriated.</t>
</list>
</t>
<!-- ## Considerations on multiple Homenet Domaine Names
## are left for future versions
<t>When multiple Registered Homenet Domains are used
(like example.com, example.net, example.org), a DNS Homenet
Zone file per Registered Homenet Domain SHOULD be generated.
In order to synchronize the zone contents, the CPE may provide
all bindings in each zone files. As a result, any update MUST
be performed on all zone files, i.e. for all Registered Homenet
Domains. To limit this the number when multiple Registered Homenet
Domains are involved, the CPE may fill all bindings
in a specific zone file and redirect all other zones to that zone.
This can be achieved with redirecting mechanisms like
CNAME <xref target="RFC2181"/>, <xref target="RFC1034"/>,
DNAME <xref target="RFC6672"/> or CNAME+DNAME
<xref target="I-D.sury-dnsext-cname-dname"/>. This is an
implementation issue, but redirection mechanisms MAY be
preferred for large DNS Homenet Zone or when the number
of Registered Homenet Domain becomes quite large.</t>
-->
</section>
<section anchor="sec-configuration-parameters" title="Example: CPE necessary parameters for outsourcing">
<t>This section specifies the various parameters required by the CPE
to configure the naming architecture of this document. This section is
informational, and is intended to clarify the information handled by the
CPE and the various settings to be done.</t>
<t>Public Authoritative Name Server Set may be defined with the following
parameters. These parameters are necessary to establish a secure
channel between the CPE and the Public Authoritative Name Server Set:
<list hangIndent="6" style="hanging">
<t hangText="- Public Authoritative Name Server Set: ">
The associated FQDNs or IP addresses of the Public Authoritative
Server. IP addresses are optional and the FQDN is sufficient.
To secure the binding name and IP addresses, a DNSSEC exchange
is required. Otherwise, the IP addresses should be entered manually.</t>
<t hangText="- Authentication Method: ">How the CPE authenticates
itself to the Public Server. This MAY depend on the implementation
but we should consider at least IPsec, DTLS and TSIG</t>
<t hangText="- Authentication data: ">Associated Data. PSK only
requires a single argument. If other authentication mechanisms
based on certificates are used, then, files for the CPE private
keys, certificates and certification authority should be specified.</t>
<t hangText="- Public Authoritative Master(s): ">
The FQDN or IP addresses of the Public Authoritative Master.
It MAY correspond to the data that will be set in the
NS RRsets and SOA of the DNS Homenet Zone. IP addresses are optional
and the FQDN is sufficient. To secure the binding name and IP
addresses, a DNSSEC exchange is required. Otherwise, the IP
addresses should be entered manually.</t>
<t hangText="- Registered Homenet Domain: "> The domain name the Public
Authoritative is configured for DNS slave, DNSSEC zone signing
and DNSSEC zone hosting.</t>
</list></t>
<t>Setting the DNS(SEC) Homenet Zone requires the following information.
<list hangIndent="6" style="hanging">
<t hangText="- Registered Homenet Domain: ">The Domain Name of the zone.
Multiple Registered Homenet Domain may be provided. This will generate
the creation of multiple DNS Homenet Zones.</t>
<t hangText="- Public Authoritative Server: ">The Public
Authoritative Servers associated to the Registered Homenet Domain.
Multiple Public Authoritative Server may be provided.</t>
</list></t>
</section>
</section>
<section anchor="sec-synch" title="Synchronization between CPE and Public Authoritative Servers">
<t>The DNS(SEC) Homenet Reverse Zone and the DNS Homenet Zone can be updated either with DNS update <xref target="RFC2136"/> or using a master / slave synchronization. The master / slave mechanism is preferred as it better scales and avoids DoS attacks: First the master notifies the slave the zone must be updated, and leaves the slave to proceed to the update when possible. Then, the NOTIFY message sent by the master is a small packet that is less likely to load the slave. At last, the AXFR query performed by the slave is a small packet sent over TCP (section 4.2 <xref target="RFC5936"/>) which makes unlikely the slave to perform reflection attacks with a forged NOTIFY. On the other hand, DNS updates can use UDP, packets require more processing then a NOTIFY, and they do not provide the server the opportunity to post-pone the update.</t>
<t>This document recommends the use of a master / slave mechanism instead of the use of nsupdates. This section details the master / slave mechanism.</t>
<section title="Synchronization with a Hidden Master">
<t>Uploading and dynamically updating the zone file on the Public
Authoritative Name Server Set can be seen as zone provisioning between the CPE (Hidden
Master) and the Public Authoritative Name Server Set (Slave Server). This can be handled
either in band or out of band. </t>
<t>The Public Authoritative Name Server Set is configured as a slave for the Homenet
Domain Name. This slave configuration has been previously agreed
between the end user and the provider of the Public Authoritative Servers.
In order to set the master/ slave architecture, the
CPE acts as a Hidden Master Server, which is a regular
Authoritative DNS(SEC) Server listening on the WAN interface.</t>
<t>The Hidden Master Server is expected to accept SOA <xref target="RFC1033"/>, AXFR
<xref target="RFC1034"/>, and IXFR <xref target="RFC1995"/> queries from its
configured slave DNS servers. The Hidden Master Server SHOULD
send NOTIFY messages <xref target="RFC1996"/> in order to update
Public DNS server zones as updates occur. Because, DNS Homenet Zones are likely to be small, CPE MUST implement AXFR and SHOULD implement IXFR.</t>
<!-- ## Comment: I do not understand what's wrong wit this section
<t>The CPE MUST be configured to send NOTIFY only when necessary. It
is recommended for example that it checks first the SOA on the Public
.Authoritative Server before sending a NOTIFY. In other words, rebooting a CPE
SHOULD NOT systematically trigger a NOTIFY message.</t>
-->
<t>Hidden Master Server differs from a regular authoritative server
for the home network by:
<list hangIndent="6" style="hanging">
<t hangText="- Interface Binding: ">the Hidden Master
Server listens on the WAN Interface, whereas a regular
authoritative server for the home network would listen on the
home network interface.</t>
<t hangText="- Limited exchanges: ">the purpose of the Hidden
Master Server is to synchronizes with the Public Authoritative
Name Server Set, not to serve zone. As a result, exchanges are performed
with specific nodes (the Public Authoritative Servers). Then
exchange types are limited. The only legitimate exchanges are:
NOTIFY initiated by the Hidden Master and IXFR or AXFR
exchanges initiated by the Public Authoritative Name Server Set.
On the other hand regular authoritative servers would respond
any hosts on the home network, and any DNS(SEC) query would be
considered. The CPE SHOULD filter IXFR/AXFR traffic and drop
traffic not initiated by the Public Authoritative Server. The
CPE MUST listen for DNS on TCP and UDP and at least allow SOA
lookups to the DNS Homenet Zone.</t>
</list>
</t>
</section>
<section title="Securing Synchronization">
<t>Exchange between the Public Servers and the CPE MUST be secured, at
least for integrity protection and for authentication. This is the
case whatever mechanism is used between the CPE and the Public
Authoritative Name Server Set.</t>
<t>TSIG <xref target="RFC2845"/> or SIG(0) <xref target="RFC2931"/>
can be used to secure the DNS communications between the CPE and
the Public DNS(SEC) Servers. TSIG uses a symmetric key which can
be managed by TKEY <xref target="RFC2930"/>. Management of the
key involved in SIG(0) is performed through zone updates. How to
roll the keys with SIG(0) is out-of-scope of this document. The
advantage of these mechanisms is that they are only associated
with the DNS application. Not relying on shared
libraries ease testing and integration. On the other hand, using
TSIG, TKEY or SIG(0) requires that these mechanisms to be implemented
on the DNS(SEC) Server's implementation running on the CPE, which
adds codes. Another disadvantage is that TKEY does not provides
authentication mechanism.</t>
<t>Protocols like TLS <xref target="RFC5246"/> / DTLS <xref
target="RFC6347"/> can be used to secure the transactions between the
Public Authoritative Servers and the CPE. The advantage of TLS/DTLS is
that this technology is widely deployed, and most of the boxes already
embeds a TLS/DTLS libraries, eventually taking advantage of hardware
acceleration. Then TLS/DTLS provides authentication facilities and
can use certificates to authenticate the Public Authoritative Server
and the CPE. On the other hand, using TLS/DTLS requires to integrate
DNS exchange over TLS/DTLS, as well as a new service port. This is
why we do not recommend this option.</t>
<t>IPsec <xref target="RFC4301"/> IKEv2 <xref target="RFC5996"/> can
also be used to secure the transactions between the CPE and the Public
Authoritative Servers. Similarly to TLS/DTLS, most CPE already embeds
a IPsec stack, and IKEv2 provides multiple authentications
possibilities with its EAP framework. In addition, IPsec can be used
to protect the DNS exchanges between the CPE and the Public
Authoritative Servers without any modifications of the DNS Servers or
client. DNS integration over IPsec only requires an additional security
policy in the Security Policy Database. One disadvantage of IPsec is
that it hardly goes through NATs and firewalls. However, in our case,
the CPE is connected to the Internet, and IPsec communication between
the CPE and Public Authoritative Server SHOULD NOT be impacted by
middle boxes.</t>
<t>As mentioned above, TSIG, IPsec and TLS/DTLS may be used to secure
transactions between the CPE and the Public Authentication Servers.
The CPE and Public Authoritative Server SHOULD implement TSIG and
IPsec.</t>
<t>How the PSK can be used by any of the TSIG, TLS/DTLS or IPsec
protocols. Authentication based on certificates implies a mutual
authentication and thus requires the CPE to manage a private key,
a public key or certificates as well as Certificate Authorities.
This adds complexity to the configuration especially on the CPE
side. For this reason, we recommend that CPE MAY use PSK or
certificate base authentication and that Public Authentication
Servers MUST support PSK and certificate based authentication.</t>
</section>
<section anchor="sec-cpe-sec-policies" title="CPE Security Policies">
<t>This section details security policies related to the
Hidden Master / Slave synchronization.</t>
<t>The Hidden Master, as described in this document SHOULD drop
any queries from the home network. This can be performed with
port binding and/or firewall rules.</t>
<t>The Hidden Master SHOULD drop on the WAN interface any DNS
queries that is not issued from the Public Authoritative Server Name
Server Set.</t>
<t>The Hidden Master SHOULD drop any outgoing packets other
than DNS NOTIFY query, SOA response, IXFR response or AXFR responses.</t>
<t>The Hidden Master SHOULD drop any incoming packets other
than DNS NOTIFY response, SOA query, IXFR query or AXFR query.</t>
<t>The Hidden Master SHOULD drop any non protected IXFR or
AXFR exchange. This depends how the synchronization is secured.</t>
</section>
</section>
<section anchor="sec-dnssec-deplyment" title="DNSSEC compliant Homenet Architecture">
<t><xref target="I-D.ietf-homenet-arch"/> in Section 3.7.3 recommends DNSSEC to be deployed on the both the authoritative server and the resolver. The resolver side is out of scope of this document, and only the authoritative part is considered.</t>
<t>Deploying DNSSEC requires signing the zone and configuring a secure delegation. As described in <xref target="sec-arch-overview"/>, signing can be performed by the CPE or by the Public Authoritative Servers. <xref target="sec-zone-signing"/> details the implications of these two alternatives. Similarly, the secure delegation can be performed by the CPE or by the Public Authoritative Servers. <xref target="sec-ds"/> discusses these two alternatives.</t>
<section title="Zone Signing" anchor="sec-zone-signing">
<t>This section discusses the pros and cons when zone signing is performed by the CPE or by the Public Authoritative Servers. It is recommended to sign the zone by the CPE unless there is a strong argument against it, like a CPE that is not able to sign the zone. In that case zone signing may be performed by the Public Authoritative Servers on behalf of the CPE.</t>
<t>Reasons for signing the zone by the CPE are:
<list hangIndent="6" style="hanging">
<t hangText="- 1: ">Keeping the Homenet Zone and the Public Zone equals. This aspect is discussed in detail in <xref target="sec-views"/>. More specifically, if the CPE signs the DNS Homenet Zone, then, the CPE has the ability to host the authoritative naming service of the homenet for DNSSEC queries coming from within the network. As a result, a query will be resolved the same way whether it is sent from the home network or from the Internet. On the other hand, if the CPE does not sign the DNS Homenet Zone, either it acts as an authoritative server for the home network or not. If the CPE is an authoritative server for queries initiated from within the home network, then nodes connected to both networks-- the home network and the Internet -- do not have a unique resolution. Devices that may be impacted are mobile phones with Radio Access Network interfaces and WLAN interfaces. Alternatively if the CPE does not act as an authoritative server, it goes against the principles connectivity disruption independence exposed in <xref target="I-D.ietf-homenet-arch"/> section 4.4.1 and 3.7.5. In case of connectivity disruption, naming resolution for nodes inside the home network for nodes in the home network are not possible.</t>
<t hangText="- 2: ">Privacy and Integrity of the DNS Zone are better guaranteed. When the Zone is signed by the CPE, it makes modification of the DNS data -- for example for flow redirection -- not possible. As a result, signing the Homenet Zone by the CPE provides better protection for the end user privacy.</t>
</list>
</t>
<t>Reasons for signing the zone by the Public Authoritative Servers are:
<list hangIndent="6" style="hanging">
<t hangText="- 1: ">The CPE is not able to sign the zone, most likely because its firmware does not make it possible. However the reason is expected to be less and less valid over time.</t>
<t hangText="- 2: ">Outsourcing DNSSEC management operations. Management operations involve key-roll over which can be done automatically by the CPE and transparently for the end user. As result avoiding DNSSEC management is mostly motivated by bad software implementations.</t>
<t hangText="- 3: ">Reducing the impact of CPE replacement on the Public Zone. Unless the CPE private keys are backuped, CPE replacement results in a emergency key roll over. This can be mitigated also by using relatively small TTLs.</t>
<t hangText="- 4: ">Reducing configuration impacts on the end user. Unless there are some zero configuration mechanisms to provide credentials between the new CPE and the Public Authoritative Name Server Sets. Authentications to Public Authoritative Name Server Set should be re-configured. As CPE replacement is not expected to happen regularly, end users may not be at ease with such configuration settings. However, mechanisms as described in <xref target="I-D.mglt-homenet-naming-architecture-dhc-options"/> use DHCP Options to outsource the configuration and avoid this issue.</t>
<t hangText="- 5: ">Public Authoritative Servers are more likely to handle securely private keys than the CPE. However, having all private information at one place may also balance that risk.</t>
</list>
</t>
</section>
<section title="Secure Delegation" anchor="sec-ds">
<t>The secure delegation is set if the DS RRset is properly set in the parent zone. Secure delegation can be performed by the CPE or the Public Authoritative Servers.</t>
<t>The DS RRset can be updated manually by the CPE or the Public Authoritative Servers. This can be used then with nsupdate for example bu requires the CPE or the Public Authoritative Server to be authenticated by the Parent Zone Server. Such a trust channel between the CPE and the Parent Zone server may be hard to maintain, and thus may be easier to establish with the Public Authoritative Server. On the other hand, <xref target="I-D.ietf-dnsop-delegation-trust-maintainance"/> may mitigate such issues.</t>
</section>
</section>
<section anchor="sec-views" title="Handling Different Views">
<t>The issue raised by handling different views of the DNS Homenet Zone or a DNS Homenet Zone that differs from the Public Zone is that a given DNS query may lead to different responses. The responses may be different values for the queried RRsets or different RCODE or different RRsets types in the responses for DNS/DNSSEC responses.</t>
<t>The document does not recommend the CPE manages different views, since devices may be connected to different networks at the same time or may flip / flop from one network to the other.</t>
</section>
<section anchor="sec-reverse" title="Reverse Zone">
<t>Most of the description considered the DNS Homenet Zone as the non-Reverse Zone. This section is focused on the Reverse Zone. </t>
<t>First, all considerations for the DNS Homenet Zone apply to the Reverse Homenet Zone. The main difference between the Reverse DNS Homenet Zone and the DNS Homenet Zone is that the parent zone of the Reverse Homenet Zone is most likely managed by the ISP. As the ISP also provides the IP prefix to the CPE, it may be able to authenticate the CPE. If the Reverse Public Authoritative Name Server Set is managed by the ISP, credentials to authenticate the CPE for the zone synchronization may be set automatically and transparently to the end user. <xref target="I-D.mglt-homenet-naming-architecture-dhc-options"/> describes how automatic configuration may be performed.</t>
</section>
<!--
<section anchor="sec-dnssec-outsrc" title="DNSSEC outsourcing configuration">
<t>In this document we assumed that the Public Authoritative
Server signs the DNS Homenet Zone. Multiple variants MAY be
proposed by the Public Authoritative Servers. Public
Authoritative Servers MAY propose to sign the DNS Homenet
Zone with keys generated by the Public Authoritative Servers
and unknown to the CPE. Alternatively some MAY propose the end
user to provide the private keys. Although not considered in
this document some end user MAY still prefer to sign their
zone with their own keys they do not communicate to the Public
Authoritative Servers. All these alternatives result from a
negotiation between the end user and the Public Authoritative
Servers. This negotiation is performed out-of-band and is out
of scope of this document.</t>
<t>In this document, we consider that the Public Authoritative
Server has all the necessary cryptographic elements to perform
zone signing and key management operations.</t>
<t>Note that Public Authoritative Servers described in this
document accomplish different functions, and thus different
entities MAY be involved.
<list hangIndent="6" style="hanging">
<t hangText="- DNS Slave function">synchronizes the DNS Homenet Zone
between the CPE and the Public Authoritative Servers. The DNS
Homenet Zone on the Public Authoritative Servers is not
available, and the Public Authoritative Server MUST NOT address
any DNS queries for that zone. As a result, the Public
Authoritative Servers MAY chose a dedicated set of servers to
serve the DNS Homenet Zone: the Public Authoritative Name Server Set.</t>
<t hangText="- DNS Zone Signing function">signs the DNS Zone
Homenet Zone to generate an DNSSEC Public Zone.</t>
<t hangText="- DNSSEC Authoritative Server">hosts the naming
service for the DNSSEC Public Zone. Any DNS(SEC) query associated
to the Homenet Zone SHOULD be done using the specific servers
designated as the Public Authoritative Master(s).</t>
</list>
</t>
</section>
-->
<!--
</section>
-->
<section anchor="sec-considerations" title="Security Considerations">
<t>The Homenet Naming Architecture described in this document solves
exposing the CPE's DNS service as a DoS attack vector.</t>
<section title="Names are less secure than IP addresses">
<t>This document describes how an End User can make his services and
devices from his home network reachable on the Internet with Names
rather than IP addresses. This exposes the home network to attackers
since names are expected to provide less randomness than IP addresses.
The naming delegation protects the End User's privacy by not providing
the complete zone of the home network to the ISP. However, using the
DNS with names for the home network exposes the home network and its
components to dictionary attacks. In fact, with IP addresses, the
Interface Identifier is 64 bit length leading to 2^64 possibilities
for a given subnetwork. This is not to mention that the subnet prefix
is also of 64 bit length, thus providing another 2^64 possibilities.
On the other hand, names used either for the home network domain or
for the devices present less randomness (livebox, router, printer,
nicolas, jennifer, ...) and thus exposes the devices to dictionary
attacks.</t>
</section>
<section title="Names are less volatile than IP addresses">
<t>IP addresses may be used to locate a device, a host or a Service.
However, home networks are not expected to be assigned the same Prefix
over time. As a result observing IP addresses provides some ephemeral
information about who is accessing the service. On the other hand,
Names are not expected to be as volatile as IP addresses. As a
result, logging Names, over time, may be more valuable that logging IP
addresses, especially to profile End User's characteristics.</t>
<t>PTR provides a way to bind an IP address to a Name. In that sense
responding to PTR DNS queries may affect the End User's Privacy. For
that reason we recommend that End Users may choose to respond or not
to PTR DNS queries and may return a NXDOMAIN response.</t>
</section>
<!--
<section title="DNSSEC is recommended to authenticate DNS hosted data">
<t>The document describes how the Secure Delegation can be set between
the Delegating DNS Server and the Delegated DNS Server.</t>
<t>Deploying DNSSEC is recommended since in some cases the information
stored in the DNS is used by the ISP or an IT departments to grant
access. For example some Servers may performed a PTR DNS query to
grant access based on host names. With the described Delegating Naming
Architecture, the ISP or the IT department MUST take into
consideration that the CPE is outside its area of control. As such,
with DNS, DNS responses may be forged, resulting in isolating a
Service, or not enabling a host to access a service. ISPs or IT
department may not base their access policies on PTR or any DNS
information. DNSSEC fulfills the DNS lack of trust, and we recommend
to deploy DNSSEC on CPEs.</t>
</section>
-->
</section>
<section title="IANA Considerations">
<t>This document has no actions for IANA.</t>
</section>
<section title="Acknowledgment">
<t>The authors wish to thank Philippe Lemordant for its contributions
on the early versions of the draft, Ole Troan for pointing out issues with the
IPv6 routed home concept and placing the scope of this document in a
wider picture, Mark Townsley for encouragement and injecting a healthy
debate on the merits of the idea, Ulrik de Bie for providing alternative
solutions, Paul Mockapetris, Christian Jacquenet, Francis Dupont and
Ludovic Eschard for their remarks on CPE and low power devices, Olafur
Gudmundsson for clarifying DNSSEC capabilities of small devices,
Simon Kelley for its feedback as dnsmasq implementer. Andrew Sullivan, Mark Andrew, Ted Lemon, Mikael Abrahamson and Michael Richardson, Ray Bellis for their feed backs on handling different views as well as clarifying the impact of outsourcing the zone signing operation outside the CPE.</t>
</section>
</middle>
<back>
<references title="Normative References">
&rfc1034;
&rfc1035;
&rfc1995;
&rfc1996;
&rfc2119;
&rfc2136;
&rfc2142;
<!--&rfc2181; -->
&rfc2845;
&rfc2930;
&rfc2931;
&rfc4301;
&rfc5246;
&rfc5936;
&rfc5996;
&rfc6347;
&rfc6644;
<!--&rfc6672; -->
&rfc6762;
</references>
<references title="Informational References">
&rfc1033;
<!--
&I-D.ietf-homenet-arch;
&I-D.sury-dnsext-cname-dname;
-->
&I-D.ietf-homenet-arch;
&I-D.mglt-homenet-naming-architecture-dhc-options;
&I-D.ietf-dnsop-delegation-trust-maintainance;
</references>
<section title="Document Change Log">
<t>[RFC Editor: This section is to be removed before publication]</t>
<t>-04:</t>
<t>*Clarifications on zone signing</t>
<t>*Rewording</t>
<t>*Adding section on different views</t>
<t>*architecture clarifications</t>
<t>-03:</t>
<t>*Simon's comments taken into consideration</t>
<t>*Adding SOA, PTR considerations</t>
<t>*Removing DNSSEC performance paragraphs on low power devices</t>
<t>*Adding SIG(0) as a mechanism for authenticating the servers</t>
<t>*Goals clarification: the architecture described in the document 1) does not describe new protocols, and 2) can be adapted to specific cases for advance users.</t>
<t>-02:</t>
<t>*remove interfaces: "Public Authoritative Server Naming Interface" is replaced by "Public Authoritative Master(s)". "Public Authoritative Server Management Interface" is replaced by "Public Authoritative Name Server Set".</t>
<t>-01.3: </t>
<t>*remove the authoritative / resolver services of the CPE. Implementation dependent</t>
<t>*remove interactions with mdns and dhcp. Implementation dependent.</t>
<t>*remove considerations on low powered devices</t>
<t>*remove position toward homenet arch</t>
<t>*remove problem statement section</t>
<t>-01.2: </t>
<t>* add a CPE description to show that the architecture can fit CPEs</t>
<t>* specification of the architecture for very low powered devices.</t>
<t>* integrate mDNS and DHCP interactions with the Homenet Naming Architecture.</t>
<t>* Restructuring the draft. 1) We start from the homenet-arch draft to derive a Naming Architecture, then 2) we show why CPE need mechanisms that do not expose them to the Internet, 3) we describe the mechanisms.</t>
<t>* I remove the terminology and expose it in the figures A and B.</t>
<t>* remove the Front End Homenet Naming Architecture to Homenet Naming</t>
<t>-01: </t>
<t>* Added C. Griffiths as co-author.</t>
<t>* Updated section 5.4 and other sections of draft to update section
on Hidden Master / Slave functions with CPE as Hidden Master/Homenet
Server.</t>
<t>* For next version, address functions of MDNS within Homenet Lan and
publishing details northbound via Hidden Master.</t>
<t>-00: First version published.</t>
</section>
</back>
</rfc>
| PAFTECH AB 2003-2026 | 2026-04-23 11:10:58 |