GENWiki

Premier IT Outsourcing and Support Services within the UK

User Tools

Site Tools


rfc:rfc3123

Network Working Group P. Koch Request for Comments: 3123 Universitaet Bielefeld Category: Experimental June 2001

        A DNS RR Type for Lists of Address Prefixes (APL RR)

Status of this Memo

 This memo defines an Experimental Protocol for the Internet
 community.  It does not specify an Internet standard of any kind.
 Discussion and suggestions for improvement are requested.
 Distribution of this memo is unlimited.

Copyright Notice

 Copyright (C) The Internet Society (2001).  All Rights Reserved.

Abstract

 The Domain Name System (DNS) is primarily used to translate domain
 names into IPv4 addresses using A RRs (Resource Records).  Several
 approaches exist to describe networks or address ranges.  This
 document specifies a new DNS RR type "APL" for address prefix lists.

1. Conventions used in this document

 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 [RFC2119].
 Domain names herein are for explanatory purposes only and should not
 be expected to lead to useful information in real life [RFC2606].

2. Background

 The Domain Name System [RFC1034], [RFC1035] provides a mechanism to
 associate addresses and other Internet infrastructure elements with
 hierarchically built domain names.  Various types of resource records
 have been defined, especially those for IPv4 and IPv6 [RFC2874]
 addresses.  In [RFC1101] a method is described to publish information
 about the address space allocated to an organisation.  In older BIND
 versions, a weak form of controlling access to zone data was
 implemented using TXT RRs describing address ranges.
 This document specifies a new RR type for address prefix lists.

Koch Experimental [Page 1] RFC 3123 DNS APL RR June 2001

3. APL RR Type

 An APL record has the DNS type of "APL" and a numeric value of 42
 [IANA].  The APL RR is defined in the IN class only.  APL RRs cause
 no additional section processing.

4. APL RDATA format

 The RDATA section consists of zero or more items (<apitem>) of the
 form
    +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
    |                          ADDRESSFAMILY                        |
    +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
    |             PREFIX            | N |         AFDLENGTH         |
    +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
    /                            AFDPART                            /
    |                                                               |
    +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
    ADDRESSFAMILY     16 bit unsigned value as assigned by IANA
                      (see IANA Considerations)
    PREFIX            8 bit unsigned binary coded prefix length.
                      Upper and lower bounds and interpretation of
                      this value are address family specific.
    N                 negation flag, indicates the presence of the
                      "!" character in the textual format.  It has
                      the value "1" if the "!" was given, "0" else.
    AFDLENGTH         length in octets of the following address
                      family dependent part (7 bit unsigned).
    AFDPART           address family dependent part.  See below.
 This document defines the AFDPARTs for address families 1 (IPv4) and
 2 (IPv6).  Future revisions may deal with additional address
 families.

4.1. AFDPART for IPv4

 The encoding of an IPv4 address (address family 1) follows the
 encoding specified for the A RR by [RFC1035], section 3.4.1.
 PREFIX specifies the number of bits of the IPv4 address starting at
 the most significant bit.  Legal values range from 0 to 32.
 Trailing zero octets do not bear any information (e.g., there is no
 semantic difference between 10.0.0.0/16 and 10/16) in an address
 prefix, so the shortest possible AFDLENGTH can be used to encode it.
 However, for DNSSEC [RFC2535] a single wire encoding must be used by

Koch Experimental [Page 2] RFC 3123 DNS APL RR June 2001

 all.  Therefore the sender MUST NOT include trailing zero octets in
 the AFDPART regardless of the value of PREFIX.  This includes cases
 in which AFDLENGTH times 8 results in a value less than PREFIX.  The
 AFDPART is padded with zero bits to match a full octet boundary.
 An IPv4 AFDPART has a variable length of 0 to 4 octets.

4.2. AFDPART for IPv6

 The 128 bit IPv6 address (address family 2) is encoded in network
 byte order (high-order byte first).
 PREFIX specifies the number of bits of the IPv6 address starting at
 the most significant bit.  Legal values range from 0 to 128.
 With the same reasoning as in 4.1 above, the sender MUST NOT include
 trailing zero octets in the AFDPART regardless of the value of
 PREFIX.  This includes cases in which AFDLENGTH times 8 results in a
 value less than PREFIX.  The AFDPART is padded with zero bits to
 match a full octet boundary.
 An IPv6 AFDPART has a variable length of 0 to 16 octets.

5. Zone File Syntax

 The textual representation of an APL RR in a DNS zone file is as
 follows:
 <owner>   IN   <TTL>   APL   {[!]afi:address/prefix}*
 The data consists of zero or more strings of the address family
 indicator <afi>, immediately followed by a colon ":", an address,
 immediately followed by the "/" character, immediately followed by a
 decimal numeric value for the prefix length.  Any such string may be
 preceded by a "!" character.  The strings are separated by
 whitespace.  The <afi> is the decimal numeric value of that
 particular address family.

5.1. Textual Representation of IPv4 Addresses

 An IPv4 address in the <address> part of an <apitem> is in dotted
 quad notation, just as in an A RR.  The <prefix> has values from the
 interval 0..32 (decimal).

Koch Experimental [Page 3] RFC 3123 DNS APL RR June 2001

5.2. Textual Representation of IPv6 Addresses

 The representation of an IPv6 address in the <address> part of an
 <apitem> follows [RFC2373], section 2.2.  Legal values for <prefix>
 are from the interval 0..128 (decimal).

6. APL RR usage

 An APL RR with empty RDATA is valid and implements an empty list.
 Multiple occurrences of the same <apitem> in a single APL RR are
 allowed and MUST NOT be merged by a DNS server or resolver.
 <apitems> MUST be kept in order and MUST NOT be rearranged or
 aggregated.
 A single APL RR may contain <apitems> belonging to different address
 families.  The maximum number of <apitems> is upper bounded by the
 available RDATA space.
 RRSets consisting of more than one APL RR are legal but the
 interpretation is left to the particular application.

7. Applicability Statement

 The APL RR defines a framework without specifying any particular
 meaning for the list of prefixes.  It is expected that APL RRs will
 be used in different application scenarios which have to be
 documented separately.  Those scenarios may be distinguished by
 characteristic prefixes placed in front of the DNS owner name.
 An APL application specification MUST include information on
 o  the characteristic prefix, if any
 o  how to interpret APL RRSets consisting of more than one RR
 o  how to interpret an empty APL RR
 o  which address families are expected to appear in the APL RRs for
    that application
 o  how to deal with APL RR list elements which belong to other
    address families, including those not yet defined
 o  the exact semantics of list elements negated by the "!" character

Koch Experimental [Page 4] RFC 3123 DNS APL RR June 2001

 Possible applications include the publication of address ranges
 similar to [RFC1101], description of zones built following [RFC2317]
 and in-band access control to limit general access or zone transfer
 (AXFR) availability for zone data held in DNS servers.
 The specification of particular application scenarios is out of the
 scope of this document.

8. Examples

 The following examples only illustrate some of the possible usages
 outlined in the previous section.  None of those applications are
 hereby specified nor is it implied that any particular APL RR based
 application does exist now or will exist in the future.
; RFC 1101-like announcement of address ranges for foo.example
foo.example.             IN APL 1:192.168.32.0/21 !1:192.168.38.0/28
; CIDR blocks covered by classless delegation
42.168.192.IN-ADDR.ARPA. IN APL ( 1:192.168.42.0/26 1:192.168.42.64/26
                                1:192.168.42.128/25 )
; Zone transfer restriction
_axfr.sbo.example.       IN APL 1:127.0.0.1/32 1:172.16.64.0/22
; List of address ranges for multicast
multicast.example.       IN APL 1:224.0.0.0/4  2:FF00:0:0:0:0:0:0:0/8
 Note that since trailing zeroes are ignored in the first APL RR the
 AFDLENGTH of both <apitems> is three.

9. Security Considerations

 Any information obtained from the DNS should be regarded as unsafe
 unless techniques specified in [RFC2535] or [RFC2845] were used.  The
 definition of a new RR type does not introduce security problems into
 the DNS, but usage of information made available by APL RRs may
 compromise security.  This includes disclosure of network topology
 information and in particular the use of APL RRs to construct access
 control lists.

Koch Experimental [Page 5] RFC 3123 DNS APL RR June 2001

10. IANA Considerations

 This section is to be interpreted as following [RFC2434].
 This document does not define any new namespaces.  It uses the 16 bit
 identifiers for address families maintained by IANA in
 http://www.iana.org/numbers.html.
 The IANA assigned numeric RR type value 42 for APL [IANA].

11. Acknowledgements

 The author would like to thank Mark Andrews, Olafur Gudmundsson, Ed
 Lewis, Thomas Narten, Erik Nordmark, and Paul Vixie for their review
 and constructive comments.

12. References

 [RFC1034] Mockapetris, P., "Domain Names - Concepts and Facilities",
           STD 13, RFC 1034, November 1987.
 [RFC1035] Mockapetris, P., "Domain Names - Implementation and
           Specification", STD 13, RFC 1035, November 1987.
 [RFC1101] Mockapetris, P., "DNS Encoding of Network Names and Other
           Types", RFC 1101, April 1989.
 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
           Requirement Levels", BCP 14, RFC 2119, March 1997.
 [RFC2181] Elz, R. and R. Bush, "Clarifications to the DNS
           Specification", RFC 2181, July 1997.
 [RFC2317] Eidnes, H., de Groot, G. and P. Vixie, "Classless IN-
           ADDR.ARPA delegation", BCP 20, RFC 2317, March 1998.
 [RFC2373] Hinden, R. and S. Deering, "IP Version 6 Addressing
           Architecture", RFC 2373, July 1998.
 [RFC2434] Narten, T. and H. Alvestrand, "Guidelines for Writing an
           IANA Considerations Section in RFCs", BCP 26, RFC 2434,
           October 1998.
 [RFC2535] Eastlake, D., "Domain Name System Security Extensions", RFC
           2535, March 1999.
 [RFC2606] Eastlake, D. and A. Panitz, "Reserved Top Level DNS Names",
           BCP 32, RFC 2606, June 1999.

Koch Experimental [Page 6] RFC 3123 DNS APL RR June 2001

 [RFC2845] Vixie, P., Gudmundsson, O., Eastlake, D. and B. Wellington,
           "Secret Key Transaction Authentication for DNS (TSIG)", RFC
           2845, May 2000.
 [RFC2874] Crawford, M. and C. Huitema, "DNS Extensions to Support
           IPv6 Address Aggregation and Renumbering", RFC 2874, July
           2000.
 [IANA]    http://www.iana.org/assignments/dns-parameters

13. Author's Address

 Peter Koch
 Universitaet Bielefeld
 Technische Fakultaet
 D-33594 Bielefeld
 Germany
 Phone: +49 521 106 2902
 EMail: pk@TechFak.Uni-Bielefeld.DE

Koch Experimental [Page 7] RFC 3123 DNS APL RR June 2001

14. Full Copyright Statement

 Copyright (C) The Internet Society (2001).  All Rights Reserved.
 This document and translations of it may be copied and furnished to
 others, and derivative works that comment on or otherwise explain it
 or assist in its implementation may be prepared, copied, published
 and distributed, in whole or in part, without restriction of any
 kind, provided that the above copyright notice and this paragraph are
 included on all such copies and derivative works.  However, this
 document itself may not be modified in any way, such as by removing
 the copyright notice or references to the Internet Society or other
 Internet organizations, except as needed for the purpose of
 developing Internet standards in which case the procedures for
 copyrights defined in the Internet Standards process must be
 followed, or as required to translate it into languages other than
 English.
 The limited permissions granted above are perpetual and will not be
 revoked by the Internet Society or its successors or assigns.
 This document and the information contained herein is provided on an
 "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
 TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
 BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
 HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
 MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Acknowledgement

 Funding for the RFC Editor function is currently provided by the
 Internet Society.

Koch Experimental [Page 8]

/data/webs/external/dokuwiki/data/pages/rfc/rfc3123.txt · Last modified: 2001/06/12 16:15 by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki