UltraDNS is one of the world’s largest authoritative DNS platforms, answering over 25 billion DNS requests every day. Neustar continuously works to improve the UltraDNS service and we are pleased to announce that we now support EDNS client-subnet requests.

For most UltraDNS clients, this change will have no impact. But for those who use the advanced “directional” routing service offered with UltraDNS, Neustar will use this client IP subnet to make routing decisions that will now generate more geographically accurate DNS responses for the end-user.

Before the EDNS rollout, the directional routing feature used the only source IP that was contained in the DNS Query, the IP address of the recursive resolver. This is not the true IP address of the actual end user, so the accuracy was only so precise. Imagine you are in Belgium, but are using a recursive resolver in London. You type in a web address and hit enter, triggering a DNS lookup. The directional information says the IP address is in London, so you might be served up a website in English, with advertisements for services in London, instead of advertisements for restaurants in Brussels and perhaps a website served up in French or Flemish.

With EDNS, the actual IP address of the end-user’s subnet will be added to the DNS request. Neustar will use this client IP subnet to make a “directional” routing decision, providing greater accuracy to the end-user’s location.

The accuracy of the geographic information is dependent on a number of factors:

  • The overall accuracy of the database matching IP address to geography (Neustar maintains its own highly regarded GEO-IP database)
  • The EDNS client IP is only defined to the network subnet, discarding the last octet of the IP address.
    Example:
    Real client IP is 197.197.197.197
    EDNS version is 197.197.197.XXX
    (197.197.197.0/24 in CIDR terminology)

There are some other considerations to take into account. As of today, EDNS is not widely supported by recursive resolvers around the Internet. Without the support of the recursive resolver, the client subnet will not be passed along to UltraDNS. In this case, UltraDNS will use the recursive resolver’s IP for directional lookup.

Also, the recursive resolver should expect an increase in cached DNS answers, if no change in caching policy is made. Typically a DNS query (and the associated DNS answer) will be stored for use by other clients asking the same DNS question. If two people try to hit www.example.com from the same recursive resolver within a short period of time, the second requestor will get the stored or cached answer, thereby skipping the DNS lookup. With EDNS enabled, each unique client subnet will have a unique DNS answer. The number of cached answers will increase, and the USE of cached answers will decrease. The RFC link below has some recommendations for the operators of recursive resolvers to handle the potential increase in cached answers.

Finally, the DNS query count will typically rise for those UltraDNS clients that have enabled directional traffic management.  As each directional lookup is unique to the client subnet, fewer cached answers will be a match.

For more information, see the document on Client Subnet in DNS Requests.