the moshpit namespace
One setting. .anything resolves.
These names live outside the traditional DNS root, so a normal browser has nowhere to look them up. These resolvers know where. Point a laptop, a phone or a whole router at one and .eggs, .moshpit, .yeah resolve like any other name — while .com, .org and the rest of the internet keep working exactly as before, forwarded on to 8.8.8.8 and 1.1.1.1. If the DNS settings on the machine are not yours to change, TronBrowser resolves the same namespace without touching them.
The addresses
Not published yet. The resolver is built and tested, but no public instance is announced here — and this page will not invent an address for you to paste into your network settings. Run your own below; it serves every name in the namespace, not just yours.
Set it
- macOS — System Settings → Network → your connection → Details → DNS, add it
with
+, drag it to the top, Save. Or:networksetup -setdnsservers Wi-Fi <resolver address> - Windows — Settings → Network & Internet → your adapter → DNS server assignment → Edit → Manual, IPv4 on, preferred server.
- Linux —
resolvectl dns <interface> <resolver address>, or anameserverline in/etc/resolv.conf. - Router — hand it out over DHCP and every device on the network gets the namespace. This is the setup it is really for.
- A locked-down machine where DNS is not yours to change — use DNS over HTTPS in the browser. Firefox: Privacy & Security → DNS over HTTPS → custom provider. Chrome: Security → Use secure DNS → custom. An endpoint appears here once a resolver is up. Or run TronBrowser, which changes no network settings at all.
Or change nothing: TronBrowser
TronBrowser resolves these names itself. Before every navigation it asks this registry, over ordinary HTTPS, who holds the name you typed. Nothing in your network settings changes, nothing needs admin rights, and it works on a machine where DNS is somebody else's to configure.
curl -fsSL https://tronbrowser.dev/install.sh | sh # macOS, Linux — Windows: the releases page
tron http://scrambled.eggs # or type it in the address bar
- Nothing to configure for a new ending. .eggs, .moshpit, .yeah resolve out of the box — the legacy root has never heard of them, so there is nothing to conflict with.
- Contested names are a setting. Settings → Name resolution → When a name
exists in both. Clearnet wins is the default and never redirects a domain that already
works; Moshpit wins lets a registered name override the clearnet one. It is the same
decision the resolvers make with
MOSHPIT_RESOLVE_MODE, taken per browser instead of per network. - Claim from the address bar.
mosh.eggsopens the Pit for .eggs.mosh.anything is reserved, so nobody can register that label and impersonate the page you register on. - Your own pit — Settings → Name resolution → Registry (advanced). Point it at the registry you run and it is looked up exactly like this one.
- Needs 3.8.8 or newer. Older builds sent a claimed-but-unpointed name to a URL
that has never existed, so parking 404'd.
tron upgrade— and a stale address left in settings by one of those builds is discarded on the way, rather than outliving the fix.
It fixes the browser, not the machine: curl, git and everything else still
go through DNS. On a machine you control, run both.
Check it worked
dig +short anything.moshpit # an address, not an error
dig +short example.com # the ordinary internet, still fine
nslookup anything.moshpit # the Windows spelling
A TXT lookup on any Moshpit name reports which registry and gateway answered — the
fastest way to tell a resolver problem from a site problem.
On the browser route there is nothing to dig: resolution never touches DNS. Open
mosh.eggs — if the Pit loads, the browser is talking to this registry.
What still breaks
https:// on a Moshpit name will warn on the resolver route. No public
certificate authority will issue for scrambled.eggs, because none of them
recognise a namespace that does not descend from the ICANN root. Plain http:// works,
and so does this site. A certificate authority you opt into is the real answer, and it is not built
yet.
TronBrowser sidesteps it rather than solving it: it rewrites the navigation to this registry's own
https:// host, so the certificate is one the browser already trusts. The address bar
shows where it landed, not what you typed — an honest trade, and the reason the two routes are
documented separately.
Clearnet lookups are forwarded to Google and Cloudflare, which is what a forwarder does. Run your own and point it wherever you like if that trade is wrong for you.
Run your own
No dependencies, no database, reads this registry over ordinary HTTPS. Nothing about it privileges ours — a private pit points at a different registry, a household one runs on whatever is already on the shelf.
git clone https://github.com/moshcoder/moshcoding
cd moshcoding && bun run dns # port 5354, no privileges needed
dig @127.0.0.1 -p 5354 +short anything.moshpit
Setup, deployment and the operating notes: docs/moshpit-dns.md. Claim a name first over on the namespace tab.