Gateway Basics
Requirements
To use the eth.limo gateway, you need to have an ENS domain with a valid resolver and a supported contenthash record. Wildcard resolvers conforming to the ENSIP-10 standard are supported. Just append .limo to the end of any .eth or .gno domain to serve your dWebsite content.
How Resolution Works
eth.limo operates a wildcard DNS record (*.eth.limo) that captures requests for every ENS domain. On each request the gateway:
Extracts the ENS name from the hostname (
ens.eth.limo→ens.eth).Looks up the name's resolver and reads its
contenthashrecord from Ethereum (including CCIP-read for off-chain resolvers).Decodes the record and fetches the content from the corresponding storage network — IPFS/IPNS, Arweave/ArNS, Swarm, or directly from chain for data URLs.
Serves the content over HTTPS with security headers and per-site origin isolation applied.
URL Format
https://ens.eth.limo
The name ens.eth
https://app.ens.eth.limo
The subdomain app.ens.eth (any depth of subdomains is supported)
https://name.base.eth.limo
The Basename name.base.eth, resolved on Base
https://12345.gno.limo
The GNS name 12345.gno — see .gno Resolution
Because each name is served from its own origin (*.eth.limo hostname), browser storage, cookies, and permissions are isolated per dWebsite.
Error Pages
If a name has no contenthash record the gateway returns a 404 "ENS Domain Not Configured" page; if the record exists but can't be resolved it returns 422 "Unsupported Contenthash". See Troubleshooting for what each error means and how to fix it.
Supported Networks
Name resolution is supported on the following networks:
Ethereum Mainnet
.eth names, including ENS-integrated DNS names such as .art
Base
Basenames — name.base.eth, accessible at name.base.eth.limo
Gnosis Mainnet
.gno (GNS) names, accessible at name.gno.limo
The initial resolution — locating a name's resolver and reading its records — must take place on one of these networks.
This does not limit where your data can live. Resolvers on a supported network may use CCIP-read (ERC-3668) to fetch records from other chains or off-chain sources — but the resolver performing that redirection must itself be discoverable on a supported network. In other words: CCIP-read extends where records come from, not where resolution begins.
Names registered or managed exclusively on other networks (including testnets) will not resolve through the gateway.
CCIP and Off-chain Resolution
The *.eth.limo, *.eth.link, and *.gno.limo gateways support off-chain resolution via CCIP. Note that CCIP-read is a second hop: the initial resolver lookup must still occur on a supported network. For more information, please consult the following resources:
Caching
By default all content is cached for 5 minutes. This means that if you update the contenthash of your ENS domain, it may take up to 5 minutes for those changes to become visible. We are actively working on a refactor of the caching layer which will eventually deprecate this limitation. If your update still isn't visible after that window, see Troubleshooting.
HTTPS Certificates
All subdomain certificates, i.e. non *.eth.limo are generated on demand, provided that there is a valid resolver and contenthash record set for the subdomain. Users no longer need to request certificates manually in our Discord server.
Server Side Headers
If you require custom HTTP response headers to support features such as SharedArrayBuffer please open a ticket in the #support-tickets channel of our Discord (server verification is required before you can interact). We are actively collaborating on an ENSIP specification that will allow ENS domain holders to specify server side headers in a TXT record, however this feature is still in heavy development for the time being.
Supported Storage Protocols
Currently, we support IPFS, IPNS, Arweave, ARNS (Arweave Name System), Swarm, TON Sites, and fully on-chain content via Data URLs & ENS hooks (EIP-8121).
Last updated