<?xml version="1.0" encoding="utf-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.4 (Ruby 3.0.6) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

<!ENTITY RFC2119 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY RFC1034 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.1034.xml">
<!ENTITY RFC1035 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.1035.xml">
<!ENTITY RFC1700 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.1700.xml">
<!ENTITY RFC6891 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6891.xml">
<!ENTITY RFC8499 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8499.xml">
<!ENTITY RFC7871 SYSTEM "https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7871.xml">
]>


<rfc ipr="trust200902" docName="draft-pan-dnsop-edns-isp-location-05" category="info" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="EIL">ISP Location in DNS Queries</title>

    <author initials="L." surname="Pan" fullname="Lanlan Pan">
      <organization></organization>
      <address>
        <postal>
          <city>Guangdong</city>
          <country>China</country>
        </postal>
        <email>abbypan@gmail.com</email>
      </address>
    </author>
    <author initials="Y." surname="Fu" fullname="Yu Fu">
      <organization>China Unicom</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>fuy186@chinaunicom.cn</email>
      </address>
    </author>
    <author initials="C." surname="Wang" fullname="Cuicui Wang">
      <organization>China Unicom</organization>
      <address>
        <postal>
          <city>Beijing</city>
          <country>China</country>
        </postal>
        <email>wangcc107@chinaunicom.cn</email>
      </address>
    </author>

    <date year="2024" month="January" day="15"/>

    <area>ops</area>
    <workgroup>dnsop</workgroup>
    <keyword>Internet-Draft</keyword>

    <abstract>


<?line 170?>

<t>Nowadays, many authoritative servers support GeoIP feature, 
they guess the client's geolocation by the client subnet of EDNS Client Subnet (ECS) or by the source IP address of DNS query, return tailor DNS response based on the client's geolocation. 
However, ECS raises some privacy concerns because it leaks client subnet information on the resolution path to the authoritative server.</t>

<t>This document describes an improved GeoIP solution,
defines an EDNS ISP Location (EIL) extension to address the privacy problem of ECS, 
tries to find the right balance between privacy improvement and user experience optimization.</t>

<t>EIL is defined to convey isp location &lt; COUNTRY, AREA, ISP &gt; information that is relevant to the DNS message. 
It will directly provide sufficient information for the GeoIP-enabled authoritative server as ECS, decide the response without guessing client's geolocation.</t>



    </abstract>



  </front>

  <middle>


<?line 183?>

<section anchor="introduction"><name>Introduction</name>

<t>Nowadays, many authoritative servers support GeoIP feature, such as <xref target="BIND-GeoIP"/>, <xref target="PowerDNS-GeoIP"/>, <xref target="Amazon-GeoIP"/>, <xref target="DYN-GeoIP"/>, <xref target="gdnsd-GeoIP"/>, <xref target="WindowsServer-GeoIP"/> (More details are given in Appendix A). These geographically aware authoritative servers guess the client's geolocation by the client subnet of ECS or by the source IP address of DNS query, return tailor DNS response based on the client's geolocation.</t>

<t>ECS is an EDNS0 option <xref target="RFC6891"/>, described in <xref target="RFC7871"/>, carries client subnet information in DNS queries for authoritative server. Compared to source IP address of DNS query, ECS will help authoritative server to guess the client's geolocation more precisely because of the DNS forwarding query structure.</t>

<t>GeoIP-enabled authoritative servers use ECS for client geolocation detecting. However, ECS raises some privacy concerns because it leaks client subnet information on the resolution path to the authoritative server <xref target="ECS-Privacy"/>.</t>

<t>This document describes an improved GeoIP solution,
defines an EDNS ISP Location (EIL) extension to address the privacy problem of ECS, 
tries to find the right balance between privacy improvement and user experience optimization.</t>

<t>EIL is defined to convey isp location &lt; COUNTRY, AREA, ISP &gt; information that is relevant to the DNS message. 
It will directly provide the same sufficient information for the GeoIP-enabled authoritative server as ECS, decide the response without guessing client's geolocation.</t>

<t>EIL is intended for those local forwarding resolvers, recursive resolvers and authoritative servers that would benefit from the extension and not for general purpose deployment. EIL could be applied for tailor DNS response for GeoIP scenario. EIL can safely be ignored by servers that choose not to implement or enable it.</t>

</section>
<section anchor="terminology"><name>Terminology</name>

<t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in <xref target="RFC2119"/> when they appear in ALL CAPS. When these words are not in ALL CAPS (such as "should" or "Should"), they have their usual English meanings, and are not to be interpreted as <xref target="RFC2119"/> keywords.</t>

<t>Basic terms used in this specification are defined in the documents <xref target="RFC1034"/>, <xref target="RFC1035"/>, <xref target="RFC8499"/> and <xref target="RFC7871"/>.</t>

<t><list style="symbols">
  <t>EIL: EDNS ISP Location.</t>
  <t>ECS: EDNS Client Subnet, described in <xref target="RFC7871"/>.</t>
  <t>Stub Resolver: A resolver that cannot perform all resolution itself.</t>
  <t>Authoritative Server: It is a server that knows the content of a DNS zone from local knowledge, and thus can answer queries about that zone without needing to query other servers.</t>
  <t>Intermediate Nameserver: Any nameserver in between the stub resolver and the authoritative server, such as a recursive resolver or a forwarding resolver.</t>
  <t>Local Forwarding Resolver: It is the first forwarding resolver which receives DNS queries from stub resolver, usually deployed nearby the first-hop router such as public Wi-Fi hotspot routers and home routers.</t>
  <t>Recursive Resolver: It is the last-hop before authoritative server in the DNS query path.</t>
</list></t>

</section>
<section anchor="problem-of-ecs"><name>Problem of ECS</name>

<t>As mentioned in <xref target="RFC7871"/>'s abstract section, since ECS has some known operational and privacy shortcomings, a revision will be worked through the IETF for improvement.</t>

<section anchor="client"><name>Client</name>

<t>Common clients have little power to defense passive monitoring, expecially in the plain-text traffic.</t>

<t>ECS's client subnet leakage has rise some user privacy concerns.</t>

</section>
<section anchor="recursive-resolver"><name>Recursive Resolver</name>

<t>Recursive resolver must deal with ECS's cache problem, such as low cache hitrate, rise response time, redundant cache size, etc.</t>

<t>Mukund Sivaraman described some scenarios in <xref target="ClientSubnet-Bis"/>.</t>

<t>ECS is precise because it is based on client subnet. But IPv6 addresses will boom, we can foresee it to increase more burden on global recursive resolvers.</t>

</section>
<section anchor="geoip-enabled-authoritative-server"><name>GeoIP-enabled Authoritative Server</name>

<t>Tranditional recursive resolver's IP can on behalf of many client subnets because they are network topological close.
But this scenario has been varied by public recursive resolver. ECS push client subnets to authoritative server, wants to solve the "public recursive resolver's IP is network topological far from client subnet" problem.</t>

<t>Therefore, ECS rises GeoIP-enabled authoritative server's dependence on IP2Geo database quality, because authoritative server should guess geolocation for huge amounts of client subnet.
Every GeoIP-enabled authoritative server must operate IP2Geo database carefully and catch up with network topology change. 
The work is inevitable, but ECS aggravate this, because the number of client subnets is far greater than the number of recursive resolvers. 
GeoIP-enabled authoritative server needs a more precise IP2Geo database, updates it more frequent than before, to catch up with the huge client subnet network topology, but not the recursive resolver's IP network topology.
Every GeoIP-enabled authoritative server should cost more on IP2Geo database.</t>

</section>
</section>
<section anchor="eil-overview"><name>EIL Overview</name>

<t>EIL is an EDNS0 option to allow local forwarding resolvers and recursive resolvers, if they are willing, to forward details about the isp location of client when talking to other nameservers. EIL can be added in queries sent by local forwarding resolvers or recursive resolvers in a way that is transparent to stub resolvers and end users.</t>

<t>Authoritative servers could provide a better answer by using precise isp location in EIL. Intermediate Nameservers could send EIL query and cache the EIL response. This document also provides a mechanism to signal Intermediate Nameservers that they do not want EIL treatment for specific queries.</t>

<t>EIL is only defined for the Internet (IN) DNS class.</t>

<section anchor="the-eil-edns0-option"><name>The EIL EDNS0 option</name>

<t>The EIL is an EDNS0 option to include the &lt; COUNTRY, AREA, ISP &gt; isp location of client in DNS messages.</t>

<t>It is 16 octets which is structured as follows:</t>

<figure><artwork><![CDATA[
                +0 (MSB)                            +1 (LSB)
      +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
   0: |                         OPTION-CODE                           |
      +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
   2: |                         OPTION-LENGTH                         |
      +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
   4: |                         COUNTRY                               |
      +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
   6: |                         AREA                                  |
      |                                                               |
      |                                                               |
      +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
  12: |                         ISP                                   |
      |                                                               |
      +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+

      Total: 16 octets.
]]></artwork></figure>

<t><list style="symbols">
  <t>OPTION-CODE, 2 octets, defined in <xref target="RFC6891"/>. EDNS option code should be assigned by the IANA.</t>
  <t>OPTION-LENGTH, 2 octets, defined in <xref target="RFC6891"/>, contains the length of the payload (everything after OPTION-LENGTH) in octets.</t>
  <t>COUNTRY, 2 octets, uppercase, defined in <xref target="ISO3166"/>, indicates the country information of the client's IP. For example, China's COUNTRY is CN.</t>
  <t>AREA, 6 octets, uppercase, defined in <xref target="ISO3166"/> country subdivision code, indicates the area information of the client's IP. For example, The AREA of Fujian Province in China is 35.</t>
  <t>ISP, 4 octets, uppercase, indicates the ISP information of the client's IP, using shortcut names. ISP shortcut names are unique within the context of the COUNTRY. For example, the shortcut name of China Telecommunications Corporation is TEL, the shortcut name of China United Network Communications is UNI, the shortcut name of China Mobile is MOB, etc.</t>
</list></t>

<t>All fields are in network byte order ("big-endian", per <xref target="RFC1700"/>, Data Notation).</t>

<t>The aim to use shortcut names in the ISP field is to limit the data size of EIL, decrease the DDoS risk.</t>

<t>The null value 0x20 signifies that the field is unknown. If all fields in EIL are set to null value, it means that client doesn't want to use EIL.</t>

<t>Authoritative servers can send EIL response with the * value 0x2A in AREA field or ISP field (not COUNTRY field), which signifies that the field is wildcard match. For example,  &lt; CN, *, TEL &gt; indicates "all area in China, Telecom ISP", &lt; CN, *, * &gt; indicates "all area in China".</t>

</section>
</section>
<section anchor="protocol-description"><name>Protocol Description</name>

<section anchor="originating-the-option"><name>Originating the Option</name>

<t>The EIL can be initialized by public recursive resolver, ISP recursive resolver, or local forwarding resolver.</t>

<t>Examples are given in Appendix B.</t>

<section anchor="p-model-public-recursive-resolver"><name>P-Model: Public Recursive Resolver</name>

<t>Public recursive resolvers are not close to many clients because the service providers couldn't deploy servers in every country and every ISP's network, which will affect the response accuracy of authoritative servers. 
To address this problem, ECS shifts the client subnet information to authoritative server, but rises user privacy concerns.</t>

<t>Therefore, to keep balance between precise and privacy, when a public recursive resolver receives a DNS query, it can guess isp location of client's IP and generate the EIL OPT data, then send EIL query to the authoritative server. This will move the "guess location of client's IP" work from authoritative server back to public recursive resolver, lighten the burden of authoritative server, but increase DDoS risk on public recursive resolver.</t>

<t>In order to improve the user's privacy, if a recursive resolver receives a DNS query with ECS, it can guess the isp location of SOURCE-PREFIX from the ECS OPT data, and make a new DNS query with EIL, then send the query to authoritative server which supports EIL.</t>

<t>P-model is the most recommended and close to the ECS.</t>

</section>
<section anchor="i-model-isp-recursive-resolver"><name>I-Model: ISP Recursive Resolver</name>

<t>ISP recursive resolver only serves its customers, each of whom has a static isp location. ISP recursive resolver can add EIL transparent to end client, and then authoritative server doesn't need to "guess location of client's IP".</t>

<t>EIL will be benefit if the authoritative server could not find the approximate isp location of ISP recursive resolver, which is crucial to DNS response accuracy in ECS.</t>

</section>
<section anchor="l-model-local-forwarding-resolver"><name>L-Model: Local Forwarding Resolver</name>

<t>Local forwarding resolver is usually on the first-hop router, such as public Wi-Fi hotspot routers and Cisco/Linksys/Netgear/TP-LINK home routers.</t>

<t>When a local forwarding resolver that implements EIL receives a DNS query from an end client, it surely can know about the isp location of client's IP, and generate the EIL OPT data, then send the EIL query to the recursive resolver. Recursive resolver sends the EIL query to the authoritative server.</t>

<t>In this scenario, both public recursive resolver and authoritative server don't need to "guess location of client's IP", 
because the local forwarding resolver supplies the isp location precisely. 
That is, EIL can reduce the dependence on the IP geolocation database quality, which is crucial to DNS response accuracy in ECS.</t>

<t>If a local forwarding resolver had sent a query with EIL, and receives a REFUSE response, it MUST regenerate a query with no EIL.</t>

</section>
</section>
<section anchor="generating-a-response"><name>Generating a Response</name>

<section anchor="path-calculation-and-tailored-dns-response"><name>Path Calculation and Tailored DNS Response</name>

<t>Separate the consideration of path calculation (data provider) and tailored DNS response (authoritative server).</t>

<t>Data providers make path calculations to optimize content delivery on the Internet based on the network topology, considering many factors such as IP, RIPs, FIBs, AS Path hops, system load, content availability, path latency, etc. Note that, data providers have the full details of the clients, they can make any complex path calculations without ECS and EIL.
Data Providers can make path calculations based on network topology, decide network topological close datacenter for each IP address.</t>

<t>Authoritative servers allocate tailored DNS response to each IP address based on the "network topological close" result of path calculations.
Based on the result of path calculation, data providers could build up their GeoIP configuration for their domains. Usually, clients from the same &lt; COUNTRY, AREA, ISP &gt; isp location are allocated to the same best "network topologically close" target ip addresses. For example, client IP addresses from &lt; China, Beijing, Telecom &gt; are allocated to Target-IP-addresses-1 (ip1, ..., ip4), client IP addresses from &lt; China, Beijing, Unicom &gt; are allocated to Target-IP-addresses-2 (ip5, ..., ip8), etc.</t>

<t>Data providers publish their GeoIP configuration to Authoritative servers. Authoritative servers load the GeoIP configuration, and return the GeoIP-based tailored DNS response based on client's geolocation.
If the GeoIP-enabled authoritative servers support ECS, they can use the client subnet information of ECS for client's geolocation detecting.
Alternative, if the GeoIP-enabled authoritative servers support EIL, they can use the &lt; COUNTRY, AREA, ISP &gt; information of EIL directly, without client's geolocation detecting.</t>

<t>EIL tell authoritative server like that, "I want to know what is best IP address for clients from &lt; China, Beijing, Telecom &gt; at network topology path calculations result", but not "I want to know what is the nearest IP address for clients from &lt; China, Beijing, Telecom &gt; at physical topology path calculations result".</t>

<t>EIL is satisfied if authoritative servers aggregate the IP addresses from the same &lt; COUNTRY, AREA, ISP &gt; isp location to visit the same datacenters, we call that GeoIP-based tailored DNS responses, and these tailored responses have the best "network topological close" distance to the clients which are generated from network topology path calculations result.</t>

<t>ECS is satisfied if authoritative servers make tailored DNS response down to subnet precise level. For example, (subnet-1, ..., subnet-10) are from the same &lt; COUNTRY, AREA, ISP &gt; isp location, Data Provider can apply (subnet-1, ..., subnet-5) visit Target-IP-addresses-1 (ip1, ..., ip2), (subnet-6, ..., subnet-10) visit Target-IP-addresses-1 (ip3, ..., ip4).</t>

</section>
<section anchor="whitelist"><name>Whitelist</name>

<t>EIL contains a whitelist for &lt; COUNTRY, AREA and ISP &gt;, which can be discussed and maintained by the DNSOP working group. 
Authoritative servers that supporting EIL must only response the EIL queries matched the whitelist. 
Recursive resolver that supporting EIL must only cache the EIL responses matched the whitelist.</t>

</section>
<section anchor="authoritative-server"><name>Authoritative Server</name>

<t>Using the &lt; COUNTRY, AREA and ISP &gt; isp location specified in the EIL option of DNS query, an authoritative server can generate a tailored response.</t>

<t>Authoritative servers that have not implemented or enabled support for the EIL ought to safely ignore it within incoming queries, response the query as a normal case without EDNS0 option. Such a server MUST NOT include an EIL option within replies to indicate lack of support for it.</t>

<t>An authoritative server that has implemented this protocol and receives an EIL option MUST include an EIL option in its response to indicate that it SHOULD be cached accordingly.</t>

<t>An authoritative server will return a more appropriate tailored response for the query with an EIL option containing more precisely AREA.</t>

</section>
<section anchor="intermediate-nameserver"><name>Intermediate Nameserver</name>

<t>Like ECS, intermediate nameserver passes a DNS response with an EIL option to its client when the client indicates support EIL.</t>

<t>If an intermediate nameserver receives a response that has a larger area than the AREA provided in its query, it SHOULD still provide the result as the answer to the triggering client request even if the client is in a smaller area.</t>

</section>
</section>
<section anchor="handling-eil-responses-and-caching"><name>Handling EIL Responses and Caching</name>

<t>If an intermediate nameserver had sent a query with EIL, and receives a NOERROR response without EIL option, it SHOULD treat this answer as suitable for all clients.</t>

<t>Other handling considerations are similar with <xref target="RFC7871"/>, SECTION 7.3.</t>

<t>In the cache, all resource records in the answer section MUST be tied to the isp location specified in the response. The answer section is valid for all areas which the EIL option covered. For example, an EIL option &lt; CN, 35, TEL &gt; covers all 9 cities in Fujian province of China Telecommunications ISP.</t>

<t>Same with ECS, the additional and authority sections are excluded.</t>

<t>Enabling support for EIL in an intermediate nameserver will increase the size of the cache, and prevent "client subnet leak" privacy concern of ECS.</t>

<section anchor="answering-from-cache"><name>Answering from Cache</name>

<t>Cache lookups are first done as usual for a DNS query, using the query tuple of &lt; name, type, class &gt;. Then, the appropriate RRset MUST be chosen based on the isp location matching.</t>

<t>If there was an EIL option, the intermediate nameserver will lookup for &lt; same COUNTRY, same AREA, same ISP &gt; of the same query tuple in the cache.</t>

<t>If no EIL option was provided, the safest choice of the intermediate nameserver is dealing the query as a normal case without EDNS0 option.</t>

<t>If no EIL option was provided, but the intermediate nameserver want to be more aggressive, it can guess the isp location from the source IP of the query, then respond as if there was an EIL option with the guessed information. Clients can be benefit when the intermediate nameserver has a more precise IP location database than the authoritative server, especially in global public DNS service like GoogleDNS(8.8.8.8).</t>

<t>Otherwise, if no matching is found, the intermediate nameserver MUST perform resolution as usual.</t>

</section>
<section anchor="delegations-and-negative-answers"><name>Delegations and Negative Answers</name>

<t>EIL's delegation case is similar with ECS, Additional and Authority Sections SHOULD ignore EIL.</t>

<t>For negative answers, authoritative servers return traditional negative answers without EIL.</t>

</section>
</section>
<section anchor="deploy"><name>Deploy</name>

<section anchor="transitivity"><name>Transitivity</name>

<t>EIL's transitivity concerns are similar with ECS.</t>

<t>Name servers should only enable EIL where it is expected to benefit the end clients, such as dealing with some latency-sensitive CDN domain queries in a complex network environment.</t>

</section>
<section anchor="compatibility-with-non-edns-and-ecs"><name>Compatibility with non-EDNS and ECS</name>

<t>GeoIP-enabled authoritative servers can simply add EIL support.</t>

<t>Recursive Resolvers can add EIL support, and make the compatible policy with ECS and EIL.</t>

<t>The indicator that authoritative servers used to generate tailor response is showed as follows:</t>

<t><list style="symbols">
  <t>RRIP: Recursive Resolver's IP</t>
  <t>ECS: Client Subnet</t>
  <t>EIL: Client Isp Location  <vspace blankLines='1'/>
+--------------------+----------------------=-------------------------------------+
  | Recursive Resolver |                                    AUTH                    |
  |                    | non-EDNS | ECS but non-EIL | EIL but non-ECS | ECS and EIL |
  +--------------------+----------+-----------------+-----------------+-------------+
  | non-EDNS           | RRIP     | RRIP            | RRIP            | RRIP        | 
  +-------------------------------+-----------------+-----------------+-------------+
  | ECS but non-EIL    | RRIP     | ECS             | RRIP            | ECS         |
  +-------------------------------+-----------------+-----------------+-------------+
  | EIL but non-ECS    | RRIP     | RRIP            | EIL             | EIL         |
  +--------------------+----------+-----------------+-----------------+-------------+
  | ECS and EIL        | RRIP     | ECS             | EIL             | ECS/EIL     |
  +--------------------+----------+-----------------+-----------------+-------------+</t>
</list></t>

</section>
<section anchor="intermediate-servers-support-ecs-and-eil-at-the-same-time"><name>Intermediate Servers Support ECS and EIL at the Same Time</name>

<t>Intermediate nameservers can support ECS and EIL at the same time. However, ECS and EIL can't be both initiated at the same DNS packet.</t>

<t>To make more effort to protect user's privacy, we suggest that intermediate nameservers could initiate EIL query prior to ECS query. Alternative, they could send both ECS and EIL queries if not match in the cache.</t>

<figure><artwork><![CDATA[
Receive EIL query: 
    Search in EIL cache.
    If cache is matched, return EIL response.
    Otherwise, 
        Send EIL query.

Receive ECS query: 
    Search in ECS cache.
    If cache is matched, return ECS response.
    Otherwise, 
        Send ECS query.

Receive plain DNS query without EDNS option: 
    Search in ECS cache.
    If cache is matched, return ECS response.
    Otherwise,  
        Guess the isp location information of the client's IP, 
        Search in EIL cache.
        If cache is matched, return EIL response.
        Otherwise, 
            Send EIL query.
            If authoritative server supports EIL, return EIL response.
            Otherwise, 
                Send ECS query.
                If authoritative server supports ECS, return ECS response.
                Otherwise, 
                    Send plain DNS query.


Receive plain DNS query with not-ECS/not-EIL option: 
    Search in not-EDNS cache.
    If cache is matched, return response.
    Otherwise, 
        Send plain DNS query.

Receive ECS query, improve user privacy with EIL: 
    Guess the isp location information of the client's IP, 
    Search in EIL cache.
    If cache is matched, return EIL response RR with origin ECS option.
    Otherwise, 
         Send EIL query.
]]></artwork></figure>

</section>
</section>
<section anchor="why-not-use-as-number-to-build-eil"><name>Why not use AS number to build EIL</name>

<t>AS number is not an ideal object to balance between response accuracy and user privacy, for example:</t>

<t><list style="symbols">
  <t>User privacy: AS24151 can directly guide to China Internet Network Infomation Center, it is not good for user privacy.</t>
  <t>Response accurancy: AS4134 contains a huge amount of IP prefixes whose geolocation covers from South China to North China, AS number can not afford the response accuracy consideration.</t>
</list></t>

<t>Maybe &lt; COUNTRY-CODE, AREA-CODE, ISP, AS-NUMBER &gt; is a considerable trade-off choice.</t>

</section>
</section>
<section anchor="benefit-and-cost"><name>Benefit and Cost</name>

<section anchor="client-1"><name>Client</name>

<t>EIL is transparent to client.</t>

<t>EIL is to help mitigate client subnet leakage on the resolution path, improve user privacy.</t>

</section>
<section anchor="recursive-resolver-1"><name>Recursive Resolver</name>

<t>ECS sends the query with client subnet, which means that recursive resolvers have to send a new query to authoritative servers with client_subnet_b, even it has known the response about network topological close client_subnet_a. In fact, thousands of subnets visit only a few servers, there are many redundacy queries, the recursive's cache hitrate is low.</t>

<t>Because of ECS's low cache hitrate, recursive resolvers's ECS tailored response latency will be longer, the average of response time will rise with the redundacy queries rate from recursive resolvers to authoritative servers.</t>

<t>Recursive resolver's ECS cache size grows up with the number of client subnets, see also <xref target="EIL-Qshine"/> and <xref target="EIL-PST"/>.</t>

<t>To sum it up, above problems all rise with the client subnet amount, especially when IPv6 addresses boom. Extend the subnet range in the ECS response may be mitigating, but not work for wide range client subnets. Recursive can make some guess optimization, if it has known response for client_subnet_a, then guess to return the same response for toplogical close client_subnet_b without send the redundancy query.</t>

<t>Therefore, if the ECS revision wants to make more effective client subnets aggregation for recursive resolver, then EIL can be an considerable choice.
EIL wants to summary network toplogical close client subnets into &lt; COUNTRY, AREA, ISP &gt; for GeoIP-enabled authoritative server.
With EIL response cache, recursive resolvers can directly response for many ECS client subnets queries, which will rise cache hitrate and reduce response latency.
The cache size of EIL is related to the row count in the &lt; COUNTRY, AREA, ISP &gt; isp location whitelist. Therefore, under IPv6 environment, the cache size of EIL will be much smaller than ECS.</t>

<t>Note that, the EIL's IP2Geo mapping work will make recursive resolver to more computational cost.</t>

</section>
<section anchor="geoip-enabled-authoritative-server-1"><name>GeoIP-enabled Authoritative Server</name>

<t>Client subnet is the best factor if the company has good network topology monitor ability, offen is for big company.
However, for many authoritative servers that only deployed GeoDNS, the accuracy limitation is commonly because of the IP2Geo database quality, and the small ISPs change to another next-hop big ISP suddenly.</t>

<t>For the GeoIP-enabled authoritative server, the response accurancy depends on the IP geolocation database quality. If authoritative server can not find approximate isp location of ECS's client subnet, they can not return best tailored response.</t>

<t>Even though GeoIP-enabled authoritative servers know about the precise isp location of ECS's client subnet, they may not know about the latest toplogical path change of the isp to update the tailored response in time.
In the case of "small ISP -&gt; big ISP (change frequency) -&gt; ...  -&gt; website", both small ISP's client ip/resolver ip is not good factor for GeoDNS. 
Big companies work hard to catch up with the client ip's connect topology change, and adjust their authoritative servers' tailored response, but smaller companies only deploy IP2Geo may not afford.</t>

<t>EIL wants to give downstream a chance to tell authoritative server its best path quickly and proactively, help to rise the response accuracy, avoid cross-isp visit, save IP transit cost for Data Provider.
EIL directly provide sufficient information for the GeoIP-enabled authoritative server.
Compared to ECS, EIL can reduce GeoIP-enabled authoritative server's dependence on the IP geolocation database quality.</t>

</section>
</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<section anchor="dnssec"><name>DNSSEC</name>

<t>EIL is not signed.</t>

</section>
<section anchor="privacy"><name>Privacy</name>

<t>The biggest privacy concern on ECS is that client subnet information is personally identifiable. The more domains publish their zones on a third-party authoritative server, the more end user privacy information can be gathered by the authoritative server according to the ECS queries.</t>

<t>EIL is to improve user privacy which is inspired by ECS, prevented leaks in the client subnet information.</t>

<t>Like ECS, EIL will leak the global zonefile configurations of the authoritative servers more easily than normal case.</t>

</section>
<section anchor="target-censorship"><name>Target Censorship</name>

<t>DNS traffic is plain text by default. It is easily to be blocked or poisoned by internet target censorship. To bypass the censorship, it is better to encrypt the DNS traffic or use some proxy tunnel.</t>

<t>EIL's isp location information covers bigger area than ECS's client subnet information. Therefore, compared to ECS in plain text condition, EIL is weaker at blocking record attack, but stronger at targeted DNS poisoning attack.</t>

</section>
<section anchor="ddos"><name>DDoS</name>

<t>To migrate the DDoS problem:</t>

<t><list style="symbols">
  <t>If an Authority Server receives a DNS query with unknown data in EIL option, it SHOULD return the default response whose EIL option with null value.</t>
  <t>Nameservers OPTIONAL only implement EIL when the query is from a TCP connection.</t>
</list></t>

<t>More migration techniques described in <xref target="RFC7871"/>, Section 11.3.</t>

</section>
</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>This document defines EIL, need request IANA to assign a new EDNS0 option code to EIL.</t>

</section>
<section anchor="acknowledgements"><name>Acknowledgements</name>

<t>EIL is inspired by ECS, the authors especially thanks to C. Contavalli, W. van der Gaast, D. Lawrence, and W. Kumari.</t>

<t>Thanks comments for Barry Raveendran Greene, Paul Vixie, Petr Špaček, Brian Hartvigsen, Ask Bjørn Hansen, Dave Lawrence.</t>

<t>Thanks a lot to all in the DNSOP, DNSPRIV mailing list.</t>

</section>
<section anchor="appendix-a-geoip-enabled-authoritative-servers-example"><name>Appendix A. GeoIP-enabled Authoritative Servers Example</name>

<section anchor="bind"><name>BIND</name>

<t>As described in <xref target="BIND-GeoIP"/>, BIND 9.10 is able to use data from MaxMind GeoIP databases to achieve restrictions based on the (presumed) geographic location of that address. The ACL itself is still address-based, but the GeoIP-based specification mechanisms can easily populate an ACL with addresses in a certain geographic location.</t>

<figure><artwork><![CDATA[
acl "example" {
  geoip country US;
  geoip region CA;
  geoip city "Redwood City"; /* names, etc., must be quoted if they contain spaces */
};
]]></artwork></figure>

</section>
<section anchor="powerdns"><name>PowerDNS</name>

<t>As described in <xref target="PowerDNS-GeoIP"/>, PowerDNS supports many geolocation placeholders, such as %co = 3-letter country, %cn = continent, %re = region, %ci = city.</t>

<figure><artwork><![CDATA[
domains:
- domain: geo.example.com
  ttl: 30
  records:
    geo.example.com:
      - soa: ns1.example.com hostmaster.example.com 2014090125 7200 3600 1209600 3600
      - ns:
           content: ns1.example.com
           ttl: 600
      - ns: ns2.example.com
      - mx: 10 mx.example.com
    fin.eu.service.geo.example.com:
      - a: 192.0.2.2
      - txt: hello world
      - aaaa: 2001:DB8::12:34DE:3
    # this will result first record being handed out 30% of time
    swe.eu.service.geo.example.com:
      - a:
           content: 192.0.2.3
           weight: 50
      - a: 192.0.2.4
  services:
    # syntax 1
    service.geo.example.com: '%co.%cn.service.geo.example.com'
    # syntax 2
    service.geo.example.com: [ '%co.%cn.service.geo.example.com', 
                                        '%cn.service.geo.example.com']
    # alternative syntax
  services:
    service.geo.example.com:
      default: [ '%co.%cn.service.geo.example.com', '%cn.service.geo.example.com' ]
      10.0.0.0/8: 'internal.service.geo.example.com'
]]></artwork></figure>

</section>
<section anchor="amazon"><name>Amazon</name>

<t>As described in <xref target="Amazon-GeoIP"/>, Amazon Route 53 lets you choose the resources that serve your traffic based on the geographic location of your users, meaning the location that DNS queries originate from. It allows you to route some queries for a continent to one resource and to route queries for selected countries on that continent to a different resource.</t>

<t>When a browser or other viewer uses a DNS resolver that does support edns-client-subnet, the DNS resolver sends Amazon Route 53 a truncated version of the client's IP address. Amazon Route 53 determines the location of the user based on the truncated IP address rather than the source IP address of the DNS resolver; this typically provides a more accurate estimate of the client's location. Amazon Route 53 then responds to geolocation queries with the DNS record for the client's location.</t>

</section>
<section anchor="dyn"><name>DYN</name>

<t>As described in <xref target="DYN-GeoIP"/>, Dyn provides the ability to control DNS responses on a granular/customized geographical rule set. Part of the rulesets will be the identification of the global regions, countries, or states and provinces that use a specific DNS server group. DYN uses the ECS information for the geolocation lookup. Once a geolocation is found and a response is selected, it will provide a DNS response back to the source IP address.</t>

</section>
<section anchor="gdnsd"><name>gdnsd</name>

<t>As described in <xref target="gdnsd-GeoIP"/>, gdnsd uses MaxMind's GeoIP binary databases to map address and CNAME results based on geography and monitored service availability. gdnsd supports geolocation codes, such as continent, country, region/subdivision, city.</t>

</section>
<section anchor="windows-server"><name>Windows Server</name>

<t>As described in <xref target="WindowsServer-GeoIP"/>, Windows server can be configured DNS Policy to respond to DNS client queries based on the geographical location of both the client and the resource to which the client is attempting to connect, providing the client with the IP address of the closest resource.</t>

</section>
</section>
<section anchor="appendix-b-eil-example"><name>Appendix B. EIL Example</name>

<t>authoritative server of www.example.com has enabled EIL.</t>

<t>Stub DNS query A resource record of www.example.com .</t>

<section anchor="p-model"><name>P-Model</name>

<figure><artwork><![CDATA[
Stub DNS 
-> local forwarding resolver (61.48.7.2) 
-> Public Forwarding Resolver(AliDNS, 223.5.5.5) 
-> Public recursive resolver(AliDNS, 202.108.250.231) 
-> authoritative server
]]></artwork></figure>

<t>Public Forwarding Resolver 223.5.5.5 could enable EIL and generate the EIL OPT data &lt; CN, 11, UNI &gt; based on 61.48.7.2.</t>

<t>P-Model will not leak client subnet to authoritative server.</t>

</section>
<section anchor="i-model"><name>I-Model</name>

<figure><artwork><![CDATA[
Stub DNS 
-> local forwarding resolver 
-> ISP Forwarding Resolver(202.106.196.115) 
-> ISP recursive resolver(61.135.23.92) 
-> authoritative server
]]></artwork></figure>

<t>ISP recursive resolver 61.135.23.92 could enable EIL and generate the EIL OPT data &lt; CN, 11, UNI &gt; based on 61.135.23.92.</t>

<t>If authoritative server doesn't know much about 61.135.23.92, EIL will be helpful.</t>

<t>ISP recursive resolver generates static EIL query, simply manages response cache as tranditionl non-ECS/non-EIL scenario.</t>

<t>EIL helps ISP recursive resolver to give upstream an explicit correct isp location information.</t>

</section>
<section anchor="l-model"><name>L-Model</name>

<figure><artwork><![CDATA[
Stub DNS 
-> Local Fowarding Resolver(58.60.109.234) 
-> ... 
-> authoritative server
]]></artwork></figure>

<t>Local Fowarding Resolver 58.60.109.234 could enable EIL and generate the option data is &lt; CN, 44, TEL &gt; based on 58.60.109.234.</t>

<t>L-Model can give the most precisely isp location information for DNS resolution.</t>

</section>
</section>
<section anchor="appendix-c-frequent-geoip-enabled-authoritative-servers-response-accuracy-problem"><name>Appendix C. Frequent GeoIP-enabled Authoritative Server's Response Accuracy Problem</name>

<section anchor="public-recursive-resolver-with-non-ecs-authoritative-server"><name>Public Recursive Resolver with non-ECS Authoritative Server</name>

<t>If authoritative server doesn't support ECS, the clients that use public recursive resolver(such as 8.8.8.8) may receive disaster latency IP.</t>

<t>In this scenario, we must pray that public recursive resolver's IP is network topological close to client's IP.</t>

</section>
<section anchor="ip2geo-database-quality"><name>IP2Geo Database Quality</name>

<t>If authoritative server's IP2Geo database misidentify client IP's information, then the client may be assigned to some high letency cross-isp IP address.</t>

<t>With EIL, public recursive resolver and ISP recursive resolver can help to give more precise information for GeoIP-enabled authoritative servers.</t>

</section>
<section anchor="unstable-isp-network-topology"><name>Unstable ISP Network Topology</name>

<t>Some small ISPs may change their upstreams frequently. authoritative servers offen can not catch up the variation in time.</t>

<t>EIL gives downstream a chance to proactively tell authoritative servers the latest best topological close response itself wants now. Downstream can assure itself has got explicit tailored response with EIL.</t>

<t>For example, 218.247.200.100's isp location information is &lt; China, Beijing, PengBoShi &gt;. In I-Model, PengBoShi's resolver can send EIL &lt; CN, 11, TEL &gt; to authoritative servers, indicates that the best topological close response forclient 218.247.200.100 is from China Beijing Telecom.</t>

</section>
</section>


  </middle>

  <back>


    <references title='Normative References' anchor="sec-normative-references">

&RFC2119;
&RFC1034;
&RFC1035;
&RFC1700;
&RFC6891;
&RFC8499;
&RFC7871;


    </references>

    <references title='Informative References' anchor="sec-informative-references">

<reference anchor="BIND-GeoIP" target="https://kb.isc.org/article/AA-01149/0">
  <front>
    <title>Using the GeoIP Features in BIND 9.10</title>
    <author >
      <organization>ISC</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="PowerDNS-GeoIP" target="https://doc.powerdns.com/md/authoritative/backend-geoip/">
  <front>
    <title>PowerDNS GeoIP backend</title>
    <author >
      <organization>PowerDNS</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="Amazon-GeoIP" target="http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-geo">
  <front>
    <title>Amazon Route 53 Geolocation Routing</title>
    <author >
      <organization>Amazon</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="DYN-GeoIP" target="https://help.dyn.com/understanding-td-decisions/">
  <front>
    <title>Understanding How Traffic Director Makes Decisions</title>
    <author >
      <organization>DYN</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="gdnsd-GeoIP" target="https://github.com/gdnsd/gdnsd/wiki/GdnsdPluginGeoip">
  <front>
    <title>GdnsdPluginGeoip</title>
    <author initials="" surname="gdnsd" fullname="gdnsd">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="WindowsServer-GeoIP" target="https://docs.microsoft.com/en-us/windows-server/networking/dns/deploy/primary-geo-location">
  <front>
    <title>Use DNS Policy for Geo-Location Based Traffic Management with Primary Servers</title>
    <author >
      <organization>Microsoft</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="ISO3166" target="http://www.iso.org/iso/country_codes">
  <front>
    <title>Country Codes</title>
    <author >
      <organization>ISO</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="ClientSubnet-Bis" target="https://www.ietf.org/mail-archive/web/dnsop/current/msg21616.html">
  <front>
    <title>CLIENT-SUBNET bis appetite?</title>
    <author initials="M." surname="Sivaraman" fullname="Mukund Sivaraman">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="ECS-Privacy" target="https://link.springer.com/chapter/10.1007/978-3-319-40667-1_17">
  <front>
    <title>Understanding the Privacy Implications of ECS</title>
    <author initials="P." surname="Kintis" fullname="Panagiotis Kintis">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="EIL-PST" target="https://ieeexplore.ieee.org/document/8514164">
  <front>
    <title>Mitigating Client Subnet Leakage in DNS Queries</title>
    <author initials="L." surname="Pan" fullname="Lanlan Pan">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="EIL-Qshine" target="https://eudl.eu/doi/10.1007/978-3-030-14413-5_1">
  <front>
    <title>Improving Privacy for GeoIP DNS Traffic</title>
    <author initials="L." surname="Pan" fullname="Lanlan Pan">
      <organization></organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>


    </references>


<?line 730?>



  </back>

<!-- ##markdown-source:
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
LB94/+ve/wWvcHW7+JYAAA==

-->

</rfc>

