ICANN-o-worms: Introducing a DNS implementation of ENS for public nameservers and the .eth TLD
What
We’re excited to announce that we have begun work on limo-web3-dns, an experimental domain specific implementation of the DNS protocol for direct resolution of ENS records.
The limo-web3-dns nameserver will extend traditional DNS functionality to on-chain ENS domain records, allowing native and seamless resolution via most network capable clients. The ultimate goal of limo-web3-dns is to provide trustless, auditable, and cryptographically signed ENS over DNS to bring ENS to parity with DNS.
Why
The Ethereum Name Service provides a best-in-class decentralized alternative to traditional Web2 DNS services, however, client accessibility remains a challenge and many legacy systems are still unable to perform resolution against this next generation name protocol. Further complicating matters is the impending inclusion of the .eth TLD into the ICANN namespace. In order to better mitigate the risks of centralization posed by registrar operated nameserver infrastructure, we are proactively building the tools that will enable the ENS community to host and manage their own DNS implementation of the ENS protocol.
Benefits
Extends native ENS resolution to home networks, cloud environments, and server-side applications (regardless of ICANN inclusion).
Community operated - DAOs/projects/teams can self host and custody their own nameservers, further federating the DNS namespace and providing end users with connectivity that can be managed and governed by their respective communities.
Designed from the ground up with ENS in mind. All record types can be resolved through their native verbs without any additional configuration.
Gateway optimized - seamlessly handle contenthash record resolution via the gateway or gateway(s) of your choice - deploy once, resolve anywhere.
Cryptographic verification - the nameserver implementation is designed to reply with a second, unsolicited response, containing signature and verification data as well as DNSSEC support for zone signing. Clients may then (optionally) verify the response prior to taking further action.
Mitigate and reduce the risks of centralization imposed by including the .eth TLD into a global, Web2 namespace. We believe that ENS domain holders should have the right and the ability to control how their domains are resolved over the traditional DNS protocol.
Open source and community contributions - The ENS protocol is a living and constantly evolving technical organism. Standards, RFCs, and security considerations should be handled by stakeholders, not registrars.
Encourage further federation of nameserver infrastructure.
CCIP compatibility. No L2 left behind.
The eth.limo team will be operating a set of public nameservers for the .eth TLD.
ICANN-o-worms (translation: it’s complicated)
.eth as a gTLD, what are the challenges?
Web2 DNS records aren’t compatible with existing ENS content fields
A, AAAA, CNAME, ALIAS records don’t make sense without gateway support.
DNS should wildcard read and automatically resolve records for a given ENS domain name (i.e. com.txt)
DNSLink is a bandaid.
Client specific implementations (not universally understood, particularly OS resolvers)
No RFC
Requires local application handlers
Greater centralization over name resolution.
Registrars will dominate the majority of DNS request handling, since by default they will become authoritative nameservers.
Split-horizon problem. The DNS protocol itself should not be able to override or otherwise mutate query responses that differ from their on-chain representations.
Call to action
We believe that ENS works best when it’s governed and managed by the stakeholders that depend upon it. We understand that solving Web2 adjacent problems in Web3 isn’t necessarily “sexy”, however it’s imperative for us as a community to anticipate and address implementation risks, wherever they might arise. The eth.limo team will continue project development and defining standards, however we need your help! Please get involved in any way you can. This is an open project that welcomes contributors regardless of skill level.
Repository: https://github.com/ethlimo/limo-web3-dns
Discord: https://discord.com/invite/zf8NxW94rB
Twitter: https://twitter.com/eth_limo
Website: https://eth.limo/