6 ms·
DOOM Over DNS
- vivzkestrel 6mo agoany of you did doom inside meta glasses?
- tombert 6mo agoGotta 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 6mo agoWhich is more ambitious, targeting the MONIAC platform or ENIAC? https://en.wikipedia.org/wiki/ENIAC https://en.wikipedia.org/wiki/ENIAC https://en.wikipedia.org/wiki/Phillips_Machine https://en.wikipedia.org/wiki/Phillips_Machine (MONIAC) I'd say both are looking increasingly doable.
- sssilver 6mo ago“Run” is doing a lot of heavy lifting at this point.
- mistyvales 6mo agoI remember the pregnancy test Doom. Wasn't it "running" on the display only?
- deathanatos 6mo agoYes, 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.
- anthk 6mo agoNo it wasn't, it just was the display. My commented example in this thread states that in every device your are running Zork I-III or any z-machine v3 compatible game it's actually hosting the interpreter and the game itself, from the Game Boy to an smartphone, a PC, an old PDA...
- teddyh 6mo agoIt wasn’t even the test’s original display, IIRC; they just re-used the housing and inserted a fancier display.
- bananaboy 6mo agoThey replaced both the display and the microcontroller with something like an Adafruir Trinket.
- TZubiri 6mo agoComing up: playing doom on Ping-as-Storage
- aboardRat4 6mo agoIt's ready, nothing to enjoy. ICMP packets can be arbitrary length, and there are plenty of tcp-over-icmp tunnels.
- TZubiri 6mo agoNot what I meant, I meant icmp as storage, not as communication. There was this article a long time ago about using packets in transit as storage/memory, mischeivously for free. Turns out this is how early memory worked, i think it was called delay line memory, made of mercury, i think PDP and DEC era
- FartyMcFarter 6mo agoYou were right to assume that in this case. DNS is not running doom here, it's just storing it.
- tombert 6mo agoThat's fair. I guess "can it store DOOM?" is still an interesting question though.
- hrmtst93837 6mo ago[flagged]
- LetsGetTechnicl 6mo agoThis novel form of data storage reminds of me of this classic YouTube video, Harder Drive: https://www.youtube.com/watch?v=JcJSW7Rprio https://www.youtube.com/watch?v=JcJSW7Rprio
- Waterluvian 6mo agoHarder 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.
- anitil 6mo agoIt reminds me of the mercury delay lines - https://en.wikipedia.org/wiki/Delay-line_memory https://en.wikipedia.org/wiki/Delay-line_memory
- mister_mort 6mo ago"I have one memory system remaining. Delay-line." https://vgel.me/fiction/gyre/ https://vgel.me/fiction/gyre/
- ricdl 6mo agovery cool story
- ktpsns 6mo agoTo 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 6mo agoYou 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 6mo ago> 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 6mo agoYup. A better title might be “Author discovers data can be stored in DNS TXT records which were created to store data.”
- deathanatos 6mo agoData can be stored in A records, too, just less efficiently. (Or AAAA, or CNAME, or…)
- sta1n 6mo ago[dead]
- uuddlrlrbaba 6mo agoOr how about "pedantic HN users making comments about titles"
- nasretdinov 6mo agoWaiting for Doom over https://github.com/yarrick/pingfs https://github.com/yarrick/pingfs next
- wizardforhire 6mo ago^ This is amazing! Thanks for the share!
- lidder86 6mo agoSDo its Friday why not ask Claude do something dumb! http://github.com/elmobp/ping-doom 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 6mo agoSuper cool. Never thought of this. Would this be useful for seeding LLMs?
- FartyMcFarter 6mo agoThis 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 6mo agoDoes this LLM discussion support LLMs?
- deleted 6mo ago[deleted]
- deleted 6mo ago[deleted]
- kaitari 6mo agoI 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.
- deleted 6mo ago[deleted]
- hun3 6mo agoFinally, a DOOM download that bypasses captive portals
- hhh 6mo agovery 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 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 https://www.youtube.com/watch?v=AJ2Q12vYojY
- lxgr 6mo agoA database storing data? Now I’ve seen everything!
- nullbyte808 6mo agoMalware could still use DNS records for storage and access to bootstrapped payloads correct?
- thesuitonym 6mo agoYes, but it's not a problem, any more than downloading any arbitrary text is. You'd still have to have something execute the binary.
- k_roy 6mo agoIf anything, this would be more of a way to act as a command and control server
- AbanoubRodolf 6mo ago[flagged]
- k4rnaj1k 6mo ago[dead]
- thestackfox 6mo agoRespect. 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 6mo agoI 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 6mo agolol 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 6mo agoI'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 6mo agoYou 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.com/en//archive/gfs-sosp2003.pdf 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.
- emmelaich 6mo ago
- ethin 6mo agoI 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 6mo ago> 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 6mo agoAnd 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 6mo agoTangent, harder drives by suckerpinch
- vicapow 6mo agothat SVG wow how?!
- kuberwastaken 6mo agoThis is so peak
- Sajarin 6mo agoThere's a writeup here: https://blog.rice.is/post/doom-over-dns/ https://blog.rice.is/post/doom-over-dns/
- nimbius 6mo agoblech...too much windows. bring me the Linux version and i might care ;)
- jjlane 6mo agothank you for doing god’s work my friend.
- jjlane 6mo agothanks for doing god’s work my friend.
- umvi 6mo ago> 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 6mo agoLook, if this was a project on using DNS to replace Dropbox or something, I'd agree with you. But the demo version of Doom just isn't that large; Cloudflare will host much larger files than that for free via Cloudflare Pages/Workers. This project is clearly meant as a fun proof of concept, not some novel way to host 3 MB for free.
- montyanne 6mo agoI’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 6mo agoWhat is the serialization format? Base64?
- invalidator 6mo agoYes. Details here: https://github.com/resumex/doom-over-dns/tree/main/TXTRecords https://github.com/resumex/doom-over-dns/tree/main/TXTRecord...
- anthk 6mo agoAnother fake Doom run, like the predictor one. This doesn't actually run Doom. Sorry. Meanwhile, other esoteric platforms actually runthe 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. I think some Activision games had the the Zork game embedded on their engine as an Easter Egg. As it's an 'easy' task for any programmer embedding it under a fake ingame computer woudn't have been a daunting task. 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.
- paulddraper 6mo ago"Author discovers that DNS stores data, and that data could be DLLs." Okay?
- ttul 6mo agoMy old late friend Dan Kaminsky famously wrote the Perl module "Ozyman DNS", which allowed you to tunnel ssh session over the DNS, thus evading certain firewalls such as those controlling access to public WiFi. Modern public WiFi setups filter the DNS too, rendering this technique moot, but I remember using "Ozyman DNS" to get WiFi access on the Caltrain and that was highly satisfying. https://boingboing.net/2004/06/21/tunneling-ssh-over-d.html https://boingboing.net/2004/06/21/tunneling-ssh-over-d.html
- ozgurozkan999 6mo agoThis feels so unnecessary but very cool.
- sta1n 6mo ago[dead]
- spirodonfl 6mo agoI covered another use case for this last year: https://youtu.be/mjSdHHJySDk https://youtu.be/mjSdHHJySDk
- aboardRat4 6mo ago>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. That's plain wrong. DNS was specifically designed to store arbitrary data, cf. the Hesiod name class.
- chodecaller 6mo ago[flagged]
- quotemstr 6mo agoWe've known for years that we tunnel IP over DNS [1]. We know, of course, that we can load or play DOOM over IP. Suddenly, combining the two things we already know how to do is supposed to garner attention and plaudits? [1] https://code.kryo.se/iodine/ https://code.kryo.se/iodine/
- cobbzilla 6mo agowhat is the frame rate?
- yanhangyhy 6mo agoPerhaps one day in the future, DOOM will become one of the symbols of human civilization—both in contrast to robots and in contrast to extraterrestrials.
- panelpowder 6mo ago[dead]
- midnightrun_ai 6mo ago[flagged]