[HN Gopher] DOOM Over DNS
___________________________________________________________________
DOOM Over DNS
Author : Venn1
Score : 170 points
Date : 2026-03-23 15:17 UTC (3 days ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| tombert wrote:
| Gotta admit that it didn't occur to me that "can it run DOOM?"
| would stretch all the way to DNS.
|
| At this point I am wondering if people will somehow port DOOM
| over to the MONIAC.
| bigwheels wrote:
| Which is more ambitious, targeting the MONIAC platform or
| ENIAC?
|
| https://en.wikipedia.org/wiki/ENIAC
|
| https://en.wikipedia.org/wiki/Phillips_Machine (MONIAC)
|
| I'd say both are looking increasingly doable.
| sssilver wrote:
| "Run" is doing a lot of heavy lifting at this point.
| mistyvales wrote:
| I remember the pregnancy test Doom. Wasn't it "running" on
| the display only?
| deathanatos wrote:
| Yes, I think it was, but that was also b/c, IIRC, the
| pregnancy tester had a CPU, too. A CPU can actually run
| things.
|
| DNS ... cannot, and that's why the person upthread is
| criticizing the use of the word "run" here. DNS ran
| nothing.
| TZubiri wrote:
| Coming up: playing doom on Ping-as-Storage
| FartyMcFarter wrote:
| You were right to assume that in this case. DNS is not running
| doom here, it's just storing it.
| tombert wrote:
| That's fair. I guess "can it store DOOM?" is still an
| interesting question though.
| antonvs wrote:
| Is it? DNS has an explicit mechanism for storing data.
| tombert wrote:
| Ok well it was new to me ok!
| LetsGetTechnicl wrote:
| This novel form of data storage reminds of me of this classic
| YouTube video, Harder Drive:
| https://www.youtube.com/watch?v=JcJSW7Rprio
| Waterluvian wrote:
| Harder Drives is such a great watch. It's also the source of a
| personal epiphany over the idea that you can store data in the
| space between you and a reflective surface or retransmittor or
| whatnot.
| ktpsns wrote:
| To clarify, a good title would be "Loading Doom entirely from DNS
| records"
|
| Neither one plays Doom over DNS nor is the first paragraph in the
| README correct, because DNS is only abused for storage, not for
| computing/processing/executing instructions:
|
| > At some point, a reasonable person asked "DNS resolves names to
| IP addresses, what else can it do?" The answer, apparently, is
| run DOOM.
| b112 wrote:
| You make me wonder if it is possible. All you need to do is to
| programmatically change bits, and you have compute. Some cache
| monkeying or somethong.
|
| Of course, I imagine it would be incredibly slow.
| testaccount28 wrote:
| > All you need to do is to programmatically change bits, and
| you have compute.
|
| all you need is to rapidly push off one foot and land on the
| other, and you have running.
| drob518 wrote:
| Yup. A better title might be "Author discovers data can be
| stored in DNS TXT records which were created to store data."
| deathanatos wrote:
| Data can be stored in A records, too, just less efficiently.
|
| (Or AAAA, or CNAME, or...)
| akdev1l wrote:
| Also we could probably achieve this by using dnsfs and regular
| doom install
|
| https://blog.benjojo.co.uk/post/dns-filesystem-true-cloud-st...
| nasretdinov wrote:
| Waiting for Doom over https://github.com/yarrick/pingfs next
| wizardforhire wrote:
| ^ This is amazing!
|
| Thanks for the share!
| lidder86 wrote:
| SDo its Friday why not ask Claude do something dumb!
| http://github.com/elmobp/ping-doom Doom over pure icmp you
| need root though the other one it spat out was doom over git
| cat-turner wrote:
| Super cool. Never thought of this. Would this be useful for
| seeding LLMs?
| FartyMcFarter wrote:
| This is a data storage system, so I guess yes, data is useful
| to train LLMs?
|
| Why does everything get turned into an LLM discussion?
| michaelsshaw wrote:
| Does this LLM discussion support LLMs?
| kaitari wrote:
| I never stop being impressed by these "<something-crazy> running
| Doom" posts. AFAIC, whenever we get to Mars, we won't truly have
| arrived until someone is playing Doom on Mars, and without
| wasting valuable resources by doing so. Running Doom, the
| canonical measurement of truly mastering a thing's capabilities.
| lthi747 wrote:
| I am still waiting someone to port Doom on CSS
| gnabgib wrote:
| Someone delivered that 2 years ago:
| https://codepen.io/cobra_winfrey/pen/oNOMRav
| cwnyth wrote:
| Oddly, it doesn't work on my browser (Firefox on Gnome).
| hun3 wrote:
| Finally, a DOOM download that bypasses captive portals
| hhh wrote:
| very cool, i did something similar but turning the doom frame
| running on a server into ascii (with colour) and then a small
| shim to give inputs via subdomains
|
| https://www.youtube.com/watch?v=GoPWuJR6Npc
|
| without the colour i did it in a worse way for bad apple
|
| https://www.youtube.com/watch?v=AJ2Q12vYojY
| lxgr wrote:
| A database storing data? Now I've seen everything!
| nullbyte808 wrote:
| Malware could still use DNS records for storage and access to
| bootstrapped payloads correct?
| thesuitonym wrote:
| Yes, but it's not a problem, any more than downloading any
| arbitrary text is. You'd still have to have something execute
| the binary.
| thestackfox wrote:
| Respect. But also ... WHY????
|
| Now let's do
|
| (1) A DNS file drop: Split small files into TXT records and
| rebuild them client-side. Useless for big files, perfect for
| config blobs, tiny payloads, and cursed demos. Also someone can
| write an S3-compatible client.
|
| (2) Redis DNS:
|
| - GET foo.cache.example.com -> TXT record returns value chunks
|
| - TTL is the eviction policy
|
| - Cache invalidation becomes even more of a hate crime.
| kgeist wrote:
| I once had this silly idea to create distributed storage of
| arbitrary data by exploiting a range of completely unrelated
| sites. Say, when you want to upload your file to the System, it
| may store one encrypted chunk as an image on a free image hosting
| site, another chunk as an encoded blog post on a random forum
| about farming (or in the user profile?), another chunk as a
| youtube video, etc. Imagine having something like hundreds or
| thousands of such "backends". Every chunk would be stored in 3
| places for high durability of course. Free storage, hidden in
| plain sight :) Although, I didn't think through how to store the
| index reliably, and, because a moderator on a random farmers'
| site may delete our record(s), there needs to be a system which
| continously validates the integrity and reuploads the chunks.
|
| Maybe such a silly project already exists?
| naultic wrote:
| lol now I wanna build this. It's like the dark web but without
| user or in this case, site consent. This could be a fun few
| weekend project
| noman-land wrote:
| I've had this exact idea. Would need to be error encoded to
| account for chubks disappearing. There would be a rot rate as
| sites die or change.
| sillysaurusx wrote:
| You might enjoy reading through the original Google FS papers.
| I forget what they're called but it addresses the durability
| problems.
|
| Ah, I couldn't remember the name because it's literally named
| Google File System.
| https://static.googleusercontent.com/media/research.google.c...
|
| I seem to remember bigtable also being interesting.
|
| More than that, you might enjoy MIT's distributed systems
| course. It's all freely available online. I went through it for
| fun a decade ago or so, and it's worthwhile for reasoning
| through hard problems like this.
|
| People have definitely (ab)used YouTube as a filesystem though.
| And that's probably your best bet for durability and
| performance.
| ethin wrote:
| I read this title, did a double-take, then had to go look at the
| git hub because it still didn't click for me. Because this sounds
| absolutely amazing, and absurd, and weird, all at the same time.
| Like..... Wow? Talk about turning protocols into pretzels...
| Sohcahtoa82 wrote:
| > had to go look at the git hub because it still didn't click
| for me
|
| Obviously it still didn't click for you or you're lying about
| looking at the GitHub, because if you did, you'd have learned
| that it's not using DNS to _run_ DOOM, only to _store_ it.
| Which...shouldn 't really be a surprise to anybody who knows
| that DNS TXT records exist.
| ethin wrote:
| And obviously your forgetting that doing this is from my
| perspective a very novel idea and I didn't consider a TXT
| record as a data storage system. Good grief.
| ge96 wrote:
| Tangent, harder drives by suckerpinch
| vicapow wrote:
| that SVG wow how?!
| kuberwastaken wrote:
| This is so peak
| Sajarin wrote:
| There's a writeup here:
|
| https://blog.rice.is/post/doom-over-dns/
| nimbius wrote:
| blech...too much windows. bring me the Linux version and i might
| care ;)
| jjlane wrote:
| thank you for doing god's work my friend.
| jjlane wrote:
| thanks for doing god's work my friend.
| umvi wrote:
| > Cloudflare will serve them globally, for free, cached at the
| edge, to anyone who asks. They are not a file storage system.
| They were not designed to be a file storage system. Nobody at the
| IETF was thinking about them being used as a file storage system
| when they wrote RFC 1035. And yet here we are.
|
| Yeah these types of hacker stories kind of bug me. They are sort
| of in the same vein as "you can eat for free by going to
| McDonald's and eating a pint of ketchup without ordering
| anything" or "How I drank and showered for a year using public
| water fountains" . Or put another way "just because you can
| doesn't mean you should". Trustless societies kind of suck and
| forcing society to lower trust by abusing trust kind of makes
| things incrementally suckier ("trust" here being "it's on the
| honor system to not abuse DNS to serve static content").
| Wowfunhappy wrote:
| Look, if this was a project on using DNS to replace Dropbox or
| something, I'd agree with you.
|
| But the Doom demo really isn't that large, this isn't going to
| use or cost anyone substantial bandwidth. Cloudflare will
| gladly host significantly larger files for free the "normal"
| way using Cloudflare Pages/Workers. It's clearly just a fun
| proof of concept.
| montyanne wrote:
| I've heard rumors that DNS records are also sometimes used in
| some steganography-type communications. Great way of passing
| small messages in a ubiquitous and innocuous system, unlikely
| to be blocked or raise eyebrows by accessing.
| didip wrote:
| What is the serialization format? Base64?
| anthk wrote:
| Another fake Doom run, like the predictor one. This doesn't
| actually run Doom. Sorry. Meanwhile, other esoteric platforms
| actually _run_ the software.
|
| There's the Infocom ZMachine with Zork I-III, Tristam Island,
| Calypso (Z machine v3 games) and many more which can be run
| starting from a PostScript file to a pen, a simple FPGA machine,
| an Amiga, the original Game Boy and who knows what.
|
| If you can port a libre interpreter, you can run it. Old PDA's,
| Smartphones, JS browsers, Windows 95 machines with Winfrotz, DOS,
| Raspberry Pies with GNU/Linux, Riscos... There are emulators even
| written in Perl, Python, Lua, tons of them. It's text based
| output and the Z machine format it's documented.
|
| Maybe I can adapt the PostScript one to Eforth under the Subleq
| VM, PS' syntax maps slightly ok to EForth...
|
| With Asterisks and some old modules you can even play it over a
| VOIP client and listen to the output with Flite/Festival/Espeak-
| nG or any compatible TTS software, such as PicoTTS. The voice
| input it's done with CMU Sphinx.
|
| Something Doom can't do at all.
___________________________________________________________________
(page generated 2026-03-26 23:00 UTC)