What is happening?
The current DNS is unnecessarily slow and suffers from inability to deploy new features. To remediate these problems, vendors of DNS software and also big public DNS providers are going to remove certain workarounds on February 1st, 2019.
This change affects only sites which operate software which is not following published standards. Are you affected?
Please check if your domain is affected:
DNS resolver operators
On or around Feb 1st, 2019, major open source resolver vendors will release updates that implement stricter EDNS handling. Specifically, the following versions introduce this change:
- BIND 9.13.3 (development) and 9.14.0 (production)
- Knot Resolver already implemented stricter EDNS handling in all current versions
- PowerDNS Recursor 4.2.0
- Unbound 1.9.0
Also public DNS providers listed below will disable workarounds.
DNS server operators
For introduction to EDNS compliance we recommend you to use form above which produces simplified result for a whole domain.
It is also possible to test your DNS servers directly using the tool ednscomp which displays detailed technical report. Simply enter the name of a zone hosted on your DNS servers into the
zone name field and click the
The summary result of ednscomp tests should preferably be a green message
Minimal working setup which will allow your domain to survive 2019 DNS flag day must not have
timeout result in any of plain DNS and EDNS version 0 tests implemented in ednscomp tool. Please note that this minimal setup is still not standards compliant and will cause other issues sooner or later. For this reason we strongly recommend you to get full EDNS compliance (all tests
ok) instead of doing just minimal cleanup otherwise you will have to face new issues later on.
If there is a problem, the ednscomp tool displays an explanation for each failed test. Failures in these tests are typically caused by:
- broken DNS software
- broken firewall configuration
To remediate problems please upgrade your DNS software to the latest stable versions and test again. If the tests are still failing even after a DNS upgrade please check your firewall configuration.
Firewalls must not drop DNS packets with EDNS extensions, including unknown extensions. Modern DNS software may deploy new extensions (e.g. DNS cookies to protect from DoS attacks). Firewalls which drop DNS packets with such extensions are making the situation worse for everyone, including worsening DoS attacks and inducing higher latency for DNS traffic.
- Older versions of Juniper SRX will drop EDNS packets by default - Workaround is to disable DNS doctoring via
# set security alg dns doctoring none. Upgrade to latest versions for EDNS support.
- F5 BIG-IP DNS processing and DNS Flag Day
- BlueCat is ready
- DNS Flag Day and Akamai
DNS software developers
The main change is that DNS software from vendors named above will interpret timeouts as sign of a network or server problem. Starting February 1st, 2019 there will be no attempt to disable EDNS as reaction to a DNS query timeout.
This effectively means that all DNS servers which do not respond at all to EDNS queries are going to be treated as dead.
It is important to note that EDNS is still not mandatory. If you decide not to support EDNS it is okay as long as your software replies according to EDNS standard section 7.
Researchers and other parties like TLD operators might be interested in:
- EDNS compliance statistics generated by EDNS compliance test suite by ISC
- EDNS zone scanner by CZ.NIC which aims to evaluate real-world impact of the DNS flag day
Please read respective methodologies before interpreting the data. In any case, do not hesitate to reach out to tool authors using GitLab links above.
- DNS-OARC 28: abstract, slides, video
- LOADAYS 2018: abstract, slides, video
- RIPE 76: slides, video
- DNS-OARC 29: abstract, slides
- Please file comments regarding this web in dnsflagday repo on GitHub
- Comments regarding test results generated by this web or directly by ednscomp test tool belong to DNS Compliance Testing project in ISC GitLab