Skip to content

Commit 2243570

Browse files
committed
Update draft
1 parent 6a51f61 commit 2243570

File tree

1 file changed

+34
-18
lines changed

1 file changed

+34
-18
lines changed

draft-yocto-dns-relative-label.xml

Lines changed: 34 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
<rfc category="info" docName="draft-yocto-dns-relative-label-00" ipr="trust200902" submissionType="IETF" version="3">
1+
<rfc category="info" docName="draft-yocto-dns-relative-label-01" ipr="trust200902" submissionType="IETF" version="3">
22
<front>
33
<title abbrev="DNS Relative Labels">Relative Labels in the Domain Name System</title>
4-
<seriesInfo name="Internet-Draft" value="draft-yocto-dns-relative-label-00"/>
4+
<seriesInfo name="Internet-Draft" value="draft-yocto-dns-relative-label-01"/>
55
<author fullname="B.J. van Hartingsveldt" initials="B.J." surname="van Hartingsveldt">
66
<organization showOnFrontPage="true">Yocto</organization>
77
<address>
@@ -15,19 +15,19 @@
1515
<middle>
1616
<section>
1717
<name>Introduction</name>
18-
<t>This document defines a "Relative Label" which may appear within domain names. This new label type enables resource records to be stored with their relative form (e.g. "www" instead of "www.example.com.").</t>
18+
<t>This document defines a "Relative Label" which may appear within domain names. This new label type enables resource records to be used with their relative form (e.g. "www" instead of "www.example.com.").</t>
1919
</section>
2020
<section>
2121
<name>Terminology</name>
2222
<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>
2323
</section>
2424
<section>
2525
<name>Motivation</name>
26-
<t>Relative labels are intended to efficiently solve the problem of using FQDNs when a relative label is wanted. For example, when someone wants to add the MX record "0 mx" instead of "0 mx.example.com." using DNS UPDATE <xref target="RFC2136"/>. It is also useful for DNS providers that store all the records in binary format. Saving data in binary requires less space and the data is already in wire format, but at the moment there is no way to save relative domains.</t>
26+
<t>Relative labels are intended to efficiently solve the problem of using FQDNs when a relative label is wanted. For example, when someone wants to add the MX record "0 mx" instead of "0 mx.example.com." to a zone using DNS UPDATE <xref target="RFC2136"/>. It is also useful for DNS providers that store all the records in binary format. Saving data in binary requires less space and the data is already in wire format, but at the moment there is no way to save relative domains in their binary form.</t>
2727
</section>
2828
<section>
2929
<name>Label Format</name>
30-
<t>Relative labels can only appear in the end of a relative FQDN, like the zero octet only appears in the end of an absolute FQDN. Message compression is possible when also using the relative label, but because the relative label already gives the possibility to leave out the zone name, message compression will likely have less effect.</t>
30+
<t>Relative labels can only appear in the end of a relative FQDN, like the zero octet only appears in the end of an absolute FQDN. [TODO: MOVE -->] Message compression is possible when also using the relative label, but because the relative label already gives the possibility to leave out the zone name, message compression will likely have less effect.</t>
3131
<section>
3232
<name>Wire format</name>
3333
<figure>
@@ -46,17 +46,29 @@
4646
<t>As described in <xref target="RFC1035"/>, relative domain names are domain names that don't end with a dot.</t>
4747
</section>
4848
<section>
49-
<name>Canonical Representation and Sort Order</name>
50-
<t>Before records are sorted for DNSSEC <xref target="RFC2065"/> purposes, the resource record MUST be converted to canonical form. This simply happens by replacing the relative label by the whole zone name. Also, the relative label should not appear when doing queries, except for AXFR and IXFR.</t>
49+
<name>Examples</name>
50+
<t>When an absolute domain name like "www.example.com." is converted to binary, its hexadecimal representation would be: [03] 77 77 77 [07] 65 78 61 6D 70 6C 65 [03] 63 6F 6D [00]. The square brackets indicate the label lengths.</t>
51+
<t>When converting a relative domain name like "www.subdomain" to binary, its hexadecimal representation becomes: [03] 77 77 77 [09] 73 75 62 64 6F 6D 61 69 6E [40]. The square brackets also indicate the labels lengths here, except for [40], which is the extended label type defined by this specification.</t>
5152
</section>
5253
</section>
54+
<section>
55+
<name>Canonical Representation</name>
56+
<t>Relative domain names do not contain the zone they belong to. For the resource records, in order to be queried with the QUERY opcode or sorted for DNSSEC <xref target="RFC4033"/>, at some moment the records should be converted to their canonical form. To be able to do that, the absolute form of the domain name should be known.</t>
57+
<t>To retrieve the absolute domain name from a relative domain name, the containing zone MUST be known from context. In DNS UPDATE <xref target="RFC2136"/>, the zone is sent in the zone section, which a renaming of the question section. When using binary zone files, the zone will likely be encoded in the file header or the file name.</t>
58+
<t>On binary level, to get the absolute form of the domain name, the last byte of the relative domain name, 0x40, MUST be removed. Then, the binary form of the zone name MUST be appended. For example, [03] 77 77 77 [40] (www) and [07] 65 78 61 6D 70 6C 65 [03] 63 6F 6D [00] (example.com.), will become [03] 77 77 77 [07] 65 78 61 6D 70 6C 65 [03] 63 6F 6D [00] (www.example.com.).
59+
<t>Relative labels should be avoided in QUERY results, because clients MAY NOT support it. Also, for supporting clients, it is impossible know which zone the records belong to. For AXFR and IXFR, it is possible to know the zone, so using the relative label for those queries MAY be considered.</t>
60+
</section>
61+
<section>
62+
<name>Implementation</name>
63+
<t>Implementation is OPTIONAL, so clients SHOULD NOT expect every server to support this feature. An indicator MAY BE added in the future for servers to indicate that they support relative labels and for which record types.</t>
64+
</section>
5365
<section>
5466
<name>IANA Considerations</name>
5567
<t>This document defines one Extended Label Type, termed the Relative Label, and requests registration of the code point 000000 binary in the space defined by <xref target="RFC2671"/>.</t>
5668
</section>
5769
<section>
5870
<name>Security Considerations</name>
59-
<t>All security considerations which apply to traditional ASCII DNS labels apply equally to binary labels. The canonicalization and sorting rules of section 3.3 allow these to be addressed by DNS Security <xref target="RFC2065"/>.</t>
71+
<t>All security considerations which apply to traditional ASCII DNS labels apply equally to binary labels. The canonicalization and sorting rules of section 3.3 allow these to be addressed by DNS Security <xref target="RFC4033"/>.</t>
6072
</section>
6173
</middle>
6274
<back>
@@ -71,15 +83,6 @@
7183
<seriesInfo name="RFC" value="1035"/>
7284
<seriesInfo name="DOI" value="10.17487/RFC1035"/>
7385
</reference>
74-
<reference anchor="RFC2065">
75-
<front>
76-
<title>Domain Name System Security Extensions</title>
77-
<author fullname="D. Eastlake" initials="D." surname="Eastlake"/>
78-
<date month="January" year="1997"/>
79-
</front>
80-
<seriesInfo name="RFC" value="2065"/>
81-
<seriesInfo name="DOI" value="10.17487/RFC2065"/>
82-
</reference>
8386
<reference anchor="RFC2119">
8487
<front>
8588
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
@@ -108,9 +111,22 @@
108111
<author fullname="P. Vixie" initials="P." surname="Vixie"/>
109112
<date month="August" year="1999"/>
110113
</front>
111-
<seriesInfo name="RFC" value="2119"/>
114+
<seriesInfo name="RFC" value="2671"/>
112115
<seriesInfo name="DOI" value="10.17487/RFC2671"/>
113116
</reference>
117+
<reference anchor="RFC4033">
118+
<front>
119+
<title>DNS Security Introduction and Requirements</title>
120+
<author fullname="R. Arends" initials="R." surname="Arends"/>
121+
<author fullname="R. Austein" initials="R." surname="Austein"/>
122+
<author fullname="M. Larson" initials="M." surname="Larson"/>
123+
<author fullname="D. Massey" initials="D." surname="Massey"/>
124+
<author fullname="S. Rose" initials="S." surname="Rose"/>
125+
<date month="March" year="2005"/>
126+
</front>
127+
<seriesInfo name="RFC" value="4033"/>
128+
<seriesInfo name="DOI" value="10.17487/RFC4033"/>
129+
</reference>
114130
</references>
115131
</back>
116132
</rfc>

0 commit comments

Comments
 (0)