GEOPRIV                                                       M. Thomson
Internet-Draft                                           J. Winterbottom
Intended status: Standards Track                                  Andrew
Expires: October 3, 25, 2009                                 April 1, 23, 2009

        Discovering the Local Location Information Server (LIS)
                  draft-ietf-geopriv-lis-discovery-09
                  draft-ietf-geopriv-lis-discovery-10

Status of This Memo

   This Internet-Draft is submitted to IETF in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF), its areas, and its working groups.  Note that
   other groups may also distribute working documents as Internet-
   Drafts.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on October 3, 25, 2009.

Copyright Notice

   Copyright (c) 2009 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents in effect on the date of
   publication of this document (http://trustee.ietf.org/license-info).
   Please review these documents carefully, as they describe your rights
   and restrictions with respect to this document.

Abstract

   Discovery of the correct Location Information Server (LIS) in the
   local access network is necessary for devices that wish to acquire
   location information from the network.  A method is described for the
   discovery of a LIS. LIS in the access network serving a device.  Dynamic
   Host Configuration Protocol (DHCP) options for IP versions 4 and 6
   are defined that specify a URI for domain name.  This domain name is then
   used as input to a
   LIS in the local access network.  An alternative method that uses URI-enabled NAPTR (U-NAPTR) is described for use where the DHCP
   option is unsuccessful. resolution process.

Table of Contents

   1.  Introduction and Overview  . . . . . . . . . . . . . . . . . .  3
     1.1.  DHCP  Discovery . . . . . . . Procedure Overview . . . . . . . . . . . . . . .  3
     1.2.  U-NAPTR Discovery  . . . . . . . . . . . . . . . . . . . .  3
     1.3.  Terminology  . . . . . . . . . . . . . . . . . . . . . . .  4
   2.  LIS Discovery Using DHCP Procedure  . . . . . . . . . . . . . . . . . . .  4
     2.1.  DHCPv4 LIS URI Option  . . . .  Residential Gateways . . . . . . . . . . . . . .  4
     2.2.  DHCPv6 LIS URI Option . . . . .  5
     2.2.  Virtual Private Networks (VPNs)  . . . . . . . . . . . . .  5  6
   3.  U-NAPTR for LIS Discovery  . . . . . .  Access Network Domain Name DHCP Option . . . . . . . . . . . .  6
     3.1.  Determining a  Domain Name Encoding . . . . . . . . . . . . . . . .  7
   4.  Overall Discovery Procedure . . .  7
     3.2.  Access Network Domain Name DHCPv4 Option . . . . . . . . .  7
     3.3.  Access Network Domain Name DHCPv6 Option . . . . .  7
     4.1.  Residential Gateways . . . .  8
   4.  U-NAPTR Resolution of a LIS URI  . . . . . . . . . . . . . . .  8
     4.2.  Virtual Private Networks (VPNs)
     4.1.  Determining a Domain Name  . . . . . . . . . . . . . . . .  9
   5.  Security Considerations  . . . . . . . . . . . . . . . . . . .  9 10
   6.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 10 11
     6.1.  Registration of DHCPv4 and DHCPv6 LIS URI Option Codes . . 10 . . . . 11
     6.2.  Registration of a Location Server Application Service
           Tag  . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 11
     6.3.  Registration of a Location Server Application Protocol
           Tag for HELD . . . . . . . . . . . . . . . . . . . . . . . 11 12
   7.  Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 11 12
   8.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 11 12
     8.1.  Normative References . . . . . . . . . . . . . . . . . . . 11 12
     8.2.  Informative References . . . . . . . . . . . . . . . . . . 13 14

1.  Introduction and Overview

   The location of a device is a useful and sometimes necessary part of
   many services.  A Location Information Server (LIS) is responsible
   for providing that location information to devices with an access
   network.  The LIS uses knowledge of the access network and its
   physical topology to generate and serve location information to
   devices.

   Each access network requires specific knowledge about topology.
   Therefore, it is important to discover the LIS that has the specific
   knowledge necessary to locate a device.  That is, the LIS that serves
   the current access network.  Automatic discovery is important where
   there is any chance of movement outside a single access network.
   Reliance on static configuration can lead to unexpected errors if a
   device moves between access networks.

   This document describes DHCP options and DNS records a process that a device can use to discover a
   LIS.

   The product of  This process uses a discovery process, such as the one described in this
   document, is DHCP option and the address DNS.  The product of the service.  In
   this document, the
   result discovery process is an http: or https: URI, which identifies a
   LIS.

   The URI result from the discovery process is suitable for location
   configuration only; that is, the device MUST dereference the URI
   using the process described in HELD
   [I-D.ietf-geopriv-http-location-delivery].  URIs discovered in this
   way are not "location URIs" [I-D.ietf-geopriv-lbyr-requirements];
   dereferencing one of them provides the location of the requester
   only.  Devices MUST NOT embed these URIs in fields in other protocols
   designed to carry the location of the device.

1.1.  DHCP  Discovery Procedure Overview

   DHCP ([RFC2131], [RFC3315]) is a commonly used mechanism for
   providing bootstrap configuration information allowing a device to
   operate in a specific network environment.  The bulk of DHCP
   information is largely static; consisting of configuration
   information that does not change over the period that the device is
   attached to the network.  Physical location information might change
   over this time, however the address of the LIS does not.  Thus, DHCP
   is suitable for configuring a device with the address of a LIS.

1.2.  U-NAPTR Discovery

   Where DHCP is not available, the DNS might be able to provide a URI.

   This document defines a DHCP option that produces a domain name that
   identifies the local access network in Section 3.

   Section 4 describes a method that uses URI-enabled NAPTR (U-NAPTR)
   [RFC4848], a Dynamic Delegation Discovery Service (DDDS) profile that supports
   produces a URI results.

   For for the LIS discovery LIS.  The input to this process is provided by
   the DHCP option.

   For the LIS discovery DDDS application, an Application Service tag
   "LIS" and an Application Protocol tag "HELD" are created and
   registered with the IANA.  Taking a  Based on the domain name, this U-NAPTR
   application uses the two tags to determine the a URI for a LIS URI.

1.3. that
   supports the HELD protocol.

1.2.  Terminology

   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].

   This document also uses the term "device" to refer to an end host, or
   client consistent with its use in HELD.  In HELD and RFC3693
   [RFC3693] parlance, the Device is also the Target.

   The terms "access network" refers to the network that a device
   connects to for Internet access.  The "access network provider" is
   the entity that operates the access network.  This is consistent with
   the definition in [I-D.ietf-geopriv-l7-lcp-ps] which combines the
   Internet Access Provider (IAP) and Internet Service Provider (ISP).
   The access network provider is responsible for allocating the device
   a public IP address and for directly or indirectly providing a LIS
   service.

2.  LIS Discovery Using DHCP

   DHCP allows the Procedure

   A device that has multiple network interfaces could potentially be
   served by a different access network provider on each interface, each with a
   different LIS.  The device SHOULD attempt to specify discover the address of a LIS as part of network configuration.  If the device is able
   applicable to
   acquire each network interface, stopping when a LIS URI using DHCP then this URI is used directly;
   successfully discovered on any interface.

   The LIS discovery procedure follows the
   U-NAPTR process is not necessary if this option is provided.

   This document registers a following process:

   1.  Acquire the access network domain name DHCP option (Section 3).

       This process might be repeated for each of the network interfaces
       on the device.  Domain names acquired from other sources might
       also be added.

   2.  Apply U-NAPTR resolution (Section 4) to discover a LIS URI for both IPv4 and
   IPv6.  An "https:" URI.

       The U-NAPTR process is applied using each of the domain names as
       input.

   3.  Verify that the LIS is able to provide location information.

       The first URI that is results in a product of U-NAPTR successful response from the LIS
       is used.

   A device MUST be
   authenticated support discovery using the access network domain name method
   DHCP option (Section 3) as input to U-NAPTR resolution (Section 4).
   Other domain names MAY be used, as described in Section 3.1
   of RFC 2818 [RFC2818].

2.1.  DHCPv4 4.1.

   A device that discovers a LIS URI Option

   This section defines a DHCP for IPv4 (DHCPv4) option for MUST attempt to verify that the address
   of LIS
   is able to provide location information.  For the HELD protocol, the
   device verifies the URI by making a LIS.

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    LIS_URI    |    Length     |                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               |
   .                            LIS URI                            .
   .                              ...                              .
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Figure 1: DHCPv4 LIS URI Option

   LIS_URI:  The IANA assigned option number (TBD).  [[IANA/RFC-Editor
      Note: Please replace TBD with location request to the assigned DHCPv4 option code.]]

   Length:  The length of LIS.  If
   - at any time - the entire LIS URI option in octets. LIS URI:  The address responds to a request with the "notLocatable"
   error code (see Section 4.3.2 of
   [I-D.ietf-geopriv-http-location-delivery]), the LIS.  The URI device MUST continue
   or restart the discovery process.  A device SHOULD NOT be terminated by make further
   requests to a zero octet.

      The DHCPv4 version LIS that provides a "notLocatable" error until its
   network attachment changes, or it discovers the LIS on an alternative
   network interface.

   Static configuration of this a domain name or a LIS URI SHOULD NOT exceed 255 octets in
      length, but MAY be extended by concatenating multiple option
      values used if all
   other discovery methods fail.  Note that if necessary, as described in [RFC3396].

2.2.  DHCPv6 LIS URI Option

   This section defines a DHCP for IPv6 (DHCPv6) option for the address
   of device has moved from
   its customary location, static configuration might indicate a LIS. LIS
   that is unable to provide accurate location information.

   The DHCPv6 option product of the LIS discovery process for HELD is an "https:" or
   "http:" URI.  Nothing distinguishes this parameter URI from other URIs with the
   same scheme, aside from the fact that it is similarly
   formatted to the DHCPv4 option.

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |       OPTION_LIS_URI          |           Length              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   .                            LIS URI                            .
   .                              ...                              .
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Figure 2: DHCPv6 LIS URI Option

   OPTION_LIS_URI:  The IANA assigned option number (TBD).  [[IANA/
      RFC-Editor Note: Please replace TBD with product of this
   process.  Only URIs produced by the assigned DHCPv6
      option code.]]

   Length: discovery process can be used for
   location configuration using HELD.

2.1.  Residential Gateways

   The length process described in this document is known to not work in a very
   common deployment scenario.  A fixed wireline scenario is described
   in more detail in Section 3.1 of [I-D.ietf-geopriv-l7-lcp-ps].  In
   this fixed wireline environment an intervening residential gateway
   exists between the LIS URI option in octets.

      The semantics device and format of the remainder of access network.  If the LIS URI residential
   gateway does not provide this option to the devices it serves, those
   devices are identical unable to discover a LIS.

   Support of this specification by residential gateways ensures that
   the DHCPv4 option, except for devices they serve are able to acquire location information.  In
   many cases the larger
      allowance for URI length granted by residential gateway configures the 16 bit length field.
      DHCPv6 prohibits concatenation of devices it serves
   using DHCP.  When DHCP is used, the residential gateway MUST provide
   the devices it serves with an access network domain name DHCP option values.

3.  U-NAPTR for LIS Discovery

   U-NAPTR resolution
   suitable for a LIS takes discovery.  In order to provide a useful value for
   this option, the residential gateway MUST either:

   o  acquire an access network domain name as input and
   produces from the access network
      provider (possibly using DHCP) and pass the resulting value to
      devices; or

   o  discover a URI LIS on its external interface, then provide devices
      with the domain name that identifies was used to successfully discover the
      LIS; or

   o  explicitly include configuration that refers to a particular LIS.  This process also requires

   In either case, the residential gateway provides an Application Service tag and access network
   domain name DHCP option to devices.

   [I-D.ietf-dhc-container-opt] might be used by an Application Protocol tag, which
   differentiate LIS-related NAPTR records from other records access network
   provider to convey configuration information to a residential gateway
   for that
   domain.

   Section 6.2 defines an Application Service tag use by the devices it serves.  Support and use of "LIS", which this option is
   RECOMMENDED for both residential gateways and devices.  Option values
   found within the container MUST be used to identify after values that are
   directly in the location service for DHCP response.

2.2.  Virtual Private Networks (VPNs)

   LIS discovery over a particular domain.  The
   Application Protocol tag "HELD", defined VPN network interface SHOULD NOT be performed.
   A LIS discovered in Section 6.3, this way is used unlikely to have the information
   necessary to determine an accurate location.

   Not all interfaces connected to
   identify a LIS that understands VPN can be detected by devices or
   the HELD protocol
   [I-D.ietf-geopriv-http-location-delivery].

   The NAPTR records software running on them.  A LIS MUST NOT provide location
   information in response to requests that it can identify as
   originating from a device on the following example demonstrate the use remote end of the
   Application Service and Protocol tags.  Iterative NAPTR resolution a VPN tunnel, unless
   it is able to accurately determine location.  The "notLocatable" HELD
   error code can be used to delegate responsibility for the LIS service from
   "zonea.example.net." and "zoneb.example.net." indicate to
   "outsource.example.com.".

      zonea.example.net.
      ;;       order pref flags
      IN NAPTR 100   10   ""  "LIS:HELD" (          ; service
          ""                                        ; regex
          outsource.example.com.                    ; replacement
          )
      zoneb.example.net.
      ;;       order pref flags
      IN NAPTR 100   10   ""  "LIS:HELD" (          ; service
          ""                                        ; regex
          outsource.example.com.                    ; replacement
          )
      outsource.example.com.
      ;;       order pref flags
      IN NAPTR 100   10   "u"  "LIS:HELD" (         ; service
          "!*.!https://lis.example.org:4802/?c=ex!" ; regex
          .                                         ; replacement
          )

              Figure 3: Sample LIS:HELD Service NAPTR Records

   Details for the "LIS" Application Service tag and a device that discovery has
   revealed an unsuitable LIS.  This ensures that even if a device
   discovers a LIS over the "HELD"
   Application Protocol tag are included in Section 6.

   An "https:" VPN, it does not rely on a LIS URI that is
   unable to provide accurate location information.

3.  Access Network Domain Name DHCP Option

   DHCP provides a product of U-NAPTR MUST be
   authenticated using direct means for the domain name method described in Section 3.1
   of RFC 2818 [RFC2818].

3.1.  Determining access network provider to
   configure a Domain Name device.  The U-NAPTR discovery method described requires a domain name as
   input.  This document does not specify how that access network domain name is
   acquired by a device.  If option identifies
   a device knows one or more domain names name that might be used for discovery, it is able to attempt to use each suitable for service discovery within the
   access network.  This domain name is used as input to the U-NAPTR discovery process.  Static
   configuration of a device is possible if a
   resolution process for LIS discovery.

   The domain name is known to
   work for provided in this purpose.

   A fully qualified option is one owned by the access
   network operator.  This domain name (FQDN) is intended for use in
   discovering services within the device might be provided
   by access network.

   This document registers a DHCP server ([RFC4702] option for DHCPv4, [RFC4704] the access network domain
   name for DHCPv6). both IPv4 and IPv6.

3.1.  Domain Name Encoding

   This section describes the encoding of the domain name used in the
   DHCPv4 option 15 [RFC2131] could defined in Section 3.2 and also be used in the DHCPv6
   option defined in Section 3.3.

   The domain name is encoded according to Section 3.1 of [RFC1035].
   Each label is represented as a source one-octet length field followed by
   that number of a octets.  Since every domain name suffix for ends with the device.  If DHCP and any null
   label of these options are
   available, these values could be used as input the U-NAPTR procedure;
   however, implementers need to be aware that many DHCP servers do not
   provide root, a sensible value for these options.  Therefore, this method domain name is terminated by a length byte of discovery SHOULD be given lesser precedence than methods that are
   based on more explicit assurances.

4.  Overall Discovery Procedure
   zero.  The individual components high-order two bits of discovery are combined into a single
   discovery procedure.  Some networks maintain a topology analogous to
   an onion every length octet MUST be zero,
   and are comprised the remaining six bits of layers, or segments, separating devices
   from the Internet through intermediate networks.  Applying length field limit the
   individual discovery methods in an order that favours a physically
   proximate LIS over label to 63
   octets or less.  To simplify implementations, the total length of a remote LIS
   domain name (i.e., label octets and label length octets) is preferred.

   A device MUST support
   restricted to 255 octets or less.

3.2.  Access Network Domain Name DHCPv4 Option

   This section defines a DHCP discovery, where applicable.  Devices
   SHOULD support U-NAPTR discovery unless no input for IPv4 (DHCPv4) option for the domain names can be
   determined.
   name associated with the access network.

             Code   Len   Access Network Domain Name
            +-----+-----+-----+-----+-----+-----+-----+----
            | TBD |  n  |  s1 |  s2 |  s3 |  s4 | s5  |  ...
            +-----+-----+-----+-----+-----+-----+-----+----

            Figure 1: Access Network Domain Name DHCPv4 Option

   The following process ensures a greater likelihood of a LIS values s1, s2, s3, etc. represent the domain name labels in close
   physical proximity being discovered:

   1.  Request the DHCP LIS URI Option for each network interface.

   2.  Use U-NAPTR to discover a LIS URI using all known
   domain names.

   3.  Use a statically configured LIS URI.

   A device name encoding.  Note that has multiple network interfaces could potentially be
   served by a different access network on each interface, each with a
   different LIS.  The device SHOULD attempt to discover the LIS
   applicable to each network interface, stopping when a LIS is
   successfully discovered on any interface.

   A device that discovers a LIS URI MUST attempt to verify that length field in the LIS
   is able to provide location information.  For DHCPv4
   option represents the HELD protocol, length of the
   device MUST make a location request to entire domain name encoding,
   whereas the LIS.  If - at any time - length fields in the LIS responds to domain name encoding (see Section 3)
   is the length of a request single domain name label.

   Code:  OPTION_V4_ACCESS_DOMAIN (TBD).  [[IANA/RFC-Editor Note: Please
      replace TBD with the "notLocatable" error code (see
   Section 4.3.2 assigned DHCPv4 option code, both here and in
      Figure 1.]]

   Length:  The length of [I-D.ietf-geopriv-http-location-delivery]), the
   device MUST continue or restart entire access network domain name option
      in octets.

   Access Network Domain Name:  The domain name associated with the discovery process.
      access network, encoded as described in Section 3.1.

   A device
   SHOULD NOT make further requests to DHCPv4 client MAY request a LIS that provides LoST server domain name in a
   "notLocatable" error until its network attachment changes, or it
   discovers the LIS on an alternative network interface.

   DHCP discovery Parameter
   Request List option, as described in [RFC2131].

   This option contains a single domain name and, as such, MUST be attempted before any other discovery method. contain
   precisely one root label.

3.3.  Access Network Domain Name DHCPv6 Option

   This allows section defines a DHCP for IPv6 (DHCPv6) option for the domain
   name associated with the access network.  The DHCPv6 option for this
   parameter is similarly formatted to the DHCPv4 option.

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    OPTION_V6_ACCESS_DOMAIN    |           Length              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   .                  Access Network Domain Name                   .
   .                              ...                              .
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

            Figure 2: DHCPv6 Access Network Domain Name Option

   option-code:  OPTION_V6_ACCESS_DOMAIN (TBD).  [[IANA/RFC-Editor Note:
      Please replace TBD with the assigned DHCPv6 option code.]]

   option-length:  The length of the entire access network domain name
      option in octets.

   option-value:  The access provider network domain name, encoded as described
      in Section 3.1.

   A DHCPv6 client MAY request a direct and explicit means
   of configuring LoST server domain name in a LIS address.  Alternative methods are only specified Options
   Request Option (ORO), as described in [RFC3315].

   This option contains a means to discover single domain name and, as such, MUST contain
   precisely one root label.

4.  U-NAPTR Resolution of a LIS where the DHCP infrastructure does not
   support the LIS URI option.

   This document does not mandate any particular source

   U-NAPTR [RFC4848] resolution for the a LIS takes a domain name that is used as input to U-NAPTR.

   Static configuration MAY be used if all other discovery methods fail.
   Note however, that if a device has moved from its customary location,
   static configuration might indicate a LIS that is unable to provide
   accurate location information.

   The product of the LIS discovery process is an "https:" or "http:"
   URI.  Nothing distinguishes this
   and produces a URI from other URIs with the same
   scheme, aside from the fact that it is the product of this process.
   Only URIs produced by identifies the discovery LIS.  This process can be used also
   requires an Application Service tag and an Application Protocol tag,
   which differentiate LIS-related NAPTR records from other records for location
   configuration using HELD.  URIs
   that are not a product domain.

   Section 6.2 defines an Application Service tag of LIS
   discovery MUST NOT be "LIS", which is
   used for to identify the location configuration.

4.1.  Residential Gateways service for a given domain.  The process described
   Application Protocol tag "HELD", defined in this document Section 6.3, is known used to not work in
   identify a very
   common deployment scenario.  A fixed wireline scenario is described
   in more detail in Section 3.1 of [I-D.ietf-geopriv-l7-lcp-ps].  In
   this fixed wireline environment an intervening residential gateway
   exists between the device and LIS that understands the access network.  If HELD protocol
   [I-D.ietf-geopriv-http-location-delivery].

   The NAPTR records in the residential
   gateway does not provide this option to following example demonstrate the devices it serves, those
   devices are unable to discover a LIS.

   Support use of this specification by residential gateways ensures that the devices they serve are able
   Application Service and Protocol tags.  Iterative NAPTR resolution is
   used to acquire location information.  In
   most cases the residential gateway configures delegate responsibility for the devices it serves
   using DHCP.  When DHCP is used, LIS service from
   "zonea.example.net." and "zoneb.example.net." to
   "outsource.example.com.".

      zonea.example.net.
      ;;       order pref flags
      IN NAPTR 100   10   ""  "LIS:HELD" (          ; service
          ""                                        ; regex
          outsource.example.com.                    ; replacement
          )
      zoneb.example.net.
      ;;       order pref flags
      IN NAPTR 100   10   ""  "LIS:HELD" (          ; service
          ""                                        ; regex
          outsource.example.com.                    ; replacement
          )
      outsource.example.com.
      ;;       order pref flags
      IN NAPTR 100   10   "u"  "LIS:HELD" (         ; service
          "!*.!https://lis.example.org:4802/?c=ex!" ; regex
          .                                         ; replacement
          )

              Figure 3: Sample LIS:HELD Service NAPTR Records

   Details for the residential gateway MUST provide "LIS" Application Service tag and the devices it serves with a "HELD"
   Application Protocol tag are included in Section 6.

   An "https:" LIS URI option.  In order to provide that is a
   sensible value for this option, the residential gateway product of U-NAPTR MUST either:

   1.  act as a LIS and provide location information to be
   authenticated using the devices domain name method described in Section 3.1
   of RFC 2818 [RFC2818].  The domain name that
       it serves, or

   2.  discover a LIS on its external interface and relay is used in this
       information
   authentication is the one extracted from the URI, not the input to devices.

   In either case,
   the residential gateway provides U-NAPTR resolution process.

4.1.  Determining a LIS URI option to
   devices.

4.2.  Virtual Private Networks (VPNs)

   LIS discovery over Domain Name

   The U-NAPTR resolution method described requires a VPN domain name as
   input.  The access network interface SHOULD NOT be performed.
   A LIS discovered in domain name DHCP option (Section 3)
   describes one source of this way is unlikely to have the information
   necessary to determine an accurate location.

   Not all interfaces connected to domain name.

   If a VPN can be detected by devices device knows one or
   the software running on them.  A LIS MUST NOT provide location
   information in response to requests more alternative domain names that might be
   used for discovery, it can identify MAY repeat the U-NAPTR process using those
   domain names as
   originating from a device on the remote end input.  For instance, static configuration of a VPN tunnel, unless
   it is able to accurately determine location.  The "notLocatable" HELD
   error code can
   device might be used to indicate to provide a device with a domain name.

   Alternative domain names MUST NOT be used unless the access network
   domain name option is unsuccessful or where external information
   indicates that discovery has
   revealed an unsuitable LIS.  This ensures that even if a particular domain name is to be used.  For instance,
   domain names for the device
   discovers might be provided by a LIS over the VPN, it does not rely on DHCP server
   ([RFC4702] for DHCPv4, [RFC4704] for DHCPv6); DHCPv4 option 15
   [RFC2131] could also be used as a source of a domain name suffix for
   the device.  However, these domain names could be provided without
   considering their use for LIS that is
   unable to discovery; therefore, many DHCP servers
   do not provide accurate location information. a sensible value for these options.

5.  Security Considerations

   The address of a LIS is usually well-known within an access network;
   therefore, interception of messages does not introduce any specific
   concerns.

   The primary attack against the methods described in this document is
   one that would lead to impersonation of a LIS.  The LIS is
   responsible for providing location information and this information
   is critical to a number of network services; furthermore, a device
   does not necessarily have a prior relationship with a LIS.  Several
   methods are described here that can limit the probablity of, or
   provide some protection against, such an attack.

   The address of a LIS is usually well-known within  These methods MUST
   be applied unless similar protections are in place, or in cases -
   such as an access network;
   therefore, interception emergency - where location information of messages does not introduce any specific
   concerns. dubious origin
   is arguably better than none at all.

   An attacker that is able could attempt to modify or spoof messages from compromise LIS discovery at any of three
   stages:

   1.  providing a DHCP
   server could provide falsified domain name to be used as input to U-NAPTR

   2.  altering the DNS records used in U-NAPTR resolution

   3.  impersonation of the LIS

   U-NAPTR is entirely dependent on its inputs.  In falsifying a falsified LIS URI domain
   name, an attacker avoids any later protections, bypassing them
   entirely.  To ensure that a device would be able
   to use to successfully authenticate the LIS.  Preventing access network domain name DHCP option
   can be relied upon, preventing DHCP messages from being modified or
   spoofed by attackers is necessary if
   this information is to be relied upon. necessary.  Physical or link layer security
   are commonplace methods that can reduce the possibility of such an
   attack within an access network; alternatively, DHCP authentication
   [RFC3118] can provide a degree of protection against modification or
   spoofing.

   An attacker could attempt

   The domain name that is used to compromise authenticated the LIS is the domain
   name in the URI that is the result of the U-NAPTR resolution.  A
   more thorough description
   Therefore, if an attacker were able to modify or spoof any of the DNS
   records used in the DDDS resolution, this URI could be replaced by an
   invalid URI.  The application of DNS security (DNSSEC) [RFC4033]
   provides a means to limit attacks that rely on modification of the
   DNS records used in U-NAPTR resolution.  Security considerations for
   specific to U-NAPTR
   applications is included are described in more detail in [RFC4848].  In addition to considerations
   related to U-NAPTR, it

   An "https:" URI is important to recognize that authenticated using the output method described in
   Section 3.1 of [RFC2818].  The domain name used for this
   authentication is the domain name in the URI resulting from U-NAPTR discovery
   resolution, not the input domain name as in [RFC3958].  Using the
   domain name in the URI is entirely dependent more compatible with existing HTTP client
   software, which authenticate servers based on its input.  An attacker
   who can control the domain name is therefore able to control in the
   final
   URI.

   A LIS that is identified by an "http:" URI cannot be authenticated.
   Use of unsecured HTTP also does not meet requirements in HELD for
   confidentiality and integrity.  If an "http:" URI is the product of
   DHCP or U-NAPTR
   LIS discovery, this leaves devices vulnerable to several attacks.
   Lower layer protections, such as layer 2 traffic separation might be
   used to provide some guarantees.

6.  IANA Considerations

6.1.  Registration of DHCPv4 and DHCPv6 LIS URI Option Codes

   The IANA has assigned an option code of (TBD) for the DHCPv4 option
   for a LIS URI, an access network domain name option, as described in Section 2.1 3.2
   of this document.

   The IANA has assigned an option code of (TBD) for the DHCPv6 option
   for a LIS URI, an access network domain name option, as described in Section 2.2 3.3
   of this document.

6.2.  Registration of a Location Server Application Service Tag

   This section registers a new S-NAPTR/U-NAPTR Application Service tag
   for a LIS, as mandated by [RFC3958].

   Application Service Tag:  LIS

   Intended usage:  Identifies a service that provides a device with its
      location information.

   Defining publication:  RFCXXXX

   Related publications:  HELD [I-D.ietf-geopriv-http-location-delivery]

   Contact information:  The authors of this document

   Author/Change controller:  The IESG

6.3.  Registration of a Location Server Application Protocol Tag for
      HELD

   This section registers a new S-NAPTR/U-NAPTR Application Protocol tag
   for the HELD [I-D.ietf-geopriv-http-location-delivery] protocol, as
   mandated by [RFC3958].

   Application Service Tag:  HELD

   Intended Usage:  Identifies the HELD protocol.

   Applicable Service Tag(s):  LIS

   Terminal NAPTR Record Type(s):  U

   Defining Publication:  RFCXXXX

   Related Publications:  HELD [I-D.ietf-geopriv-http-location-delivery]

   Contact Information:  The authors of this document

   Author/Change Controller:  The IESG

7.  Acknowledgements

   The authors would like to thank Leslie Daigle for her work on
   U-NAPTR; Peter Koch for feedback on how not to use DNS for discovery;
   Andy Newton for constructive suggestions with regards to document
   direction; Hannes Tschofenig and Tschofenig, Richard Barnes Barnes, and Joe Salowey for
   input and reviews; Dean Willis for constructive feedback.

8.  References

8.1.  Normative References

   [RFC1035]                                  Mockapetris, P., "Domain
                                              names - implementation and
                                              specification", STD 13,
                                              RFC 1035, November 1987.

   [RFC2131]                                  Droms, R., "Dynamic Host
                                              Configuration Protocol",
                                              RFC 2131, March 1997.

   [RFC2818]                                  Rescorla, E., "HTTP Over
                                              TLS", RFC 2818, May 2000.

   [RFC3315]                                  Droms, R., Bound, J.,
                                              Volz, B., Lemon, T.,
                                              Perkins, C., and M.
                                              Carney, "Dynamic Host
                                              Configuration Protocol for
                                              IPv6 (DHCPv6)", RFC 3315,
                                              July 2003.

   [RFC3396]                                  Lemon, T.

   [RFC4033]                                  Arends, R., Austein, R.,
                                              Larson, M., Massey, D.,
                                              and S. Cheshire,
                                              "Encoding Long Options in
                                              the Dynamic Host
                                              Configuration Protocol
                                              (DHCPv4)", Rose, "DNS Security
                                              Introduction and
                                              Requirements", RFC 3396,
                                              November 2002. 4033,
                                              March 2005.

   [RFC4702]                                  Stapp, M., Volz, B., and
                                              Y. Rekhter, "The Dynamic
                                              Host Configuration
                                              Protocol (DHCP) Client
                                              Fully Qualified Domain
                                              Name (FQDN) Option",
                                              RFC 4702, October 2006.

   [RFC4704]                                  Volz, B., "The Dynamic
                                              Host Configuration
                                              Protocol for IPv6 (DHCPv6)
                                              Client Fully Qualified
                                              Domain Name (FQDN)
                                              Option", RFC 4704,
                                              October 2006.

   [RFC4848]                                  Daigle, L., "Domain-Based
                                              Application Service
                                              Location Using URIs and
                                              the Dynamic Delegation
                                              Discovery Service (DDDS)",
                                              RFC 4848, April 2007.

   [I-D.ietf-geopriv-http-location-delivery]  Barnes, M., Winterbottom,
                                              J., Thomson, M., and B.
                                              Stark, "HTTP Enabled
                                              Location Delivery (HELD)",
                                              draft-ietf-geopriv-http-
                                              location-delivery-13 (work
                                              in progress),
                                              February 2009.

   [I-D.ietf-dhc-container-opt]               Droms, R., "Container
                                              Option for Server
                                              Configuration", draft-
                                              ietf-dhc-container-opt-05
                                              (work in progress),
                                              March 2009.

   [RFC2119]                                  Bradner, S., "Key words
                                              for use in RFCs to
                                              Indicate Requirement
                                              Levels", BCP 14, RFC 2119,
                                              March 1997.

8.2.  Informative References

   [RFC3118]                                  Droms, R. and W. Arbaugh,
                                              "Authentication for DHCP
                                              Messages", RFC 3118,
                                              June 2001.

   [RFC3693]                                  Cuellar, J., Morris, J.,
                                              Mulligan, D., Peterson,
                                              J., and J. Polk, "Geopriv
                                              Requirements", RFC 3693,
                                              February 2004.

   [RFC3958]                                  Daigle, L. and A. Newton,
                                              "Domain-Based Application
                                              Service Location Using SRV
                                              RRs and the Dynamic
                                              Delegation Discovery
                                              Service (DDDS)", RFC 3958,
                                              January 2005.

   [I-D.ietf-geopriv-l7-lcp-ps]               Tschofenig, H. and H.
                                              Schulzrinne, "GEOPRIV
                                              Layer 7 Location
                                              Configuration Protocol;
                                              Problem Statement and
                                              Requirements", draft-ietf-
                                              geopriv-l7-lcp-ps-09 (work
                                              in progress),
                                              February 2009.

   [I-D.ietf-geopriv-lbyr-requirements]       Marshall, R.,
                                              "Requirements for a
                                              Location-by-Reference
                                              Mechanism", draft-ietf-
                                              geopriv-lbyr-requirements-
                                              07 (work in progress),
                                              February 2009.

Authors' Addresses

   Martin Thomson
   Andrew
   PO Box U40
   Wollongong University Campus, NSW  2500
   AU

   Phone: +61 2 4221 2915
   EMail: martin.thomson@andrew.com
   URI:   http://www.andrew.com/

   James Winterbottom
   Andrew
   PO Box U40
   Wollongong University Campus, NSW  2500
   AU

   Phone: +61 2 4221 2938
   EMail: james.winterbottom@andrew.com
   URI:   http://www.andrew.com/