Doom запустили через DNS: игре хватило 1964 TXT-записей Обложка: Скайрид

Doom запустили через DNS: игре хватило 1964 TXT-записей

Новости
Главное:

  • Разработчик Дам Райс выпустил открытый проект Doom Over DNS, который запускает условно-бесплатную версию DOOM через DNS-запросы.
  • Игра упакована примерно в 1964 TXT-записи DNS и разворачивается на лету без сохранения WAD-файла на диск.
  • Для запуска нужен PowerShell 7, а для публикации данных — DNS-зона Cloudflare и API-токен с правами на её редактирование.

Разработчик Дам Райс представил открытый проект Doom Over DNS, который позволяет запустить условно-бесплатную версию DOOM через обычные механизмы DNS. Игра собирается во время запуска из TXT-записей DNS, а пользователю для старта нужен PowerShell 7 и скрипт Start-DoomOverDNS.ps1.

Идея проекта строится на том, что DNS TXT-записи могут хранить произвольный текст. Автор разбил данные игры примерно на 1964 фрагмента и разместил их в одной или нескольких DNS-зонах Cloudflare. После этого клиентский скрипт получает их через публичные DNS-запросы и восстанавливает нужные данные уже в памяти. Файл WAD, в котором хранятся ресурсы DOOM, на диск при этом не записывается, а DLL-компоненты движка .NET тоже загружаются напрямую в память.

Для обычного запуска автор предлагает установить PowerShell 7 и выполнить команду со ссылкой на основную DNS-зону. Остальная загрузка, по его описанию, проходит автоматически через Resolve-DNSName. Для публикации самих фрагментов требуется API-токен Cloudflare с правами на изменение DNS-зоны; его нужно загрузить через команду Set-CFCredential из модуля TXTRecords.

У проекта есть и практические ограничения. В бесплатной зоне Cloudflare, по словам автора, помещается 185 фрагментов данных, а в тарифах Pro, Business и Enterprise — до 3400. Только WAD-файлу нужно около 1199 фрагментов, поэтому на бесплатном уровне придётся использовать несколько доменов. Скрипт поддерживает и возобновление прерванной публикации: параметр -Resume проверяет хеши, находит последний корректный фрагмент и продолжает загрузку с нужного места.

Контекст

Запуск DOOM на необычных устройствах и поверх нестандартных интерфейсов давно стал отдельным жанром технических экспериментов. Doom Over DNS продолжает эту традицию, но использует для этого базовую интернет-службу, которая обычно нужна для сопоставления доменных имён и IP-адресов.

Что это значит на практике

Для пользователей это скорее демонстрация того, как далеко можно зайти с обычным DNS и скриптами автоматизации. Для администраторов и компаний проект показывает, что TXT-записи могут использоваться не только для служебных настроек, но и для передачи больших объёмов данных, что стоит учитывать при контроле DNS-инфраструктуры.