
Инструмент для нагрузочного и стресс-тестирования на Go с режимами L7 HTTP и L4 raw TCP/UDP, многопоточными воркерами, графиком скорости в реальном времени, а также GUI для Windows и кроссплатформенным CLI.
Инструмент для нагрузочного тестирования. Rust, полноэкранное терминальное приложение. Зелёный на чёрном, загрузочная последовательность, график пакетов и меню для каждой функции, которая была в старой сборке на Go.

Rust 1.75 или новее. Без cgo, без других инструментов.
cargo build --release
Бинарный файл оказывается в target/release/ddossnake.exe или target/release/ddossnake
в остальных случаях.
В Windows без компоновщика msvc используйте инструментарий gnu. Любая свежая установка msys2 содержит mingw-w64:
rustup toolchain install stable-x86_64-pc-windows-gnu
rustup target add x86_64-pc-windows-gnu --toolchain stable-x86_64-pc-windows-gnu
# with C:\msys64\mingw64\bin on PATH
cargo +stable-x86_64-pc-windows-gnu build --release
ddossnake # terminal ui
ddossnake --tui # same, explicit
Безголовый режим, те же флаги, что и в go cli:
ddossnake -target <url|ip|ip:port> [flags]
-target target to hit
-mode l7 (http) or l4 (raw tcp/udp) [l7]
-proto l4 protocol: tcp or udp [tcp]
-threads concurrent workers [400]
-duration seconds to run [30]
-requests request cap [1000000]
-source worker source, see -list [local]
-proxies proxy folder (with -source proxies) [proxies]
-fast keep-alive, no delay [true]
-blend vary request shape and pace [true]
-discord-token / -guild / -channel voice lane resolve
-list list worker sources and exit
-version print version
Шесть векторов слева: запуск, прокси, источники, голос, журнал, о программе.
tab / shift-tab cycle vectors
1 ... 6 jump straight to a vector
up down / j k move selection
left right adjust a value or choice (shift = x10 step)
enter type a fresh value / fire an action
ctrl+v paste into the focused field
space toggle or cycle
F5 / r engage
F9 / s halt
esc halt, then quit when idle
q quit
pgup / pgdn scroll the log
Вкладка run содержит target, mode, proto, threads, duration, request cap, fast mode, blend, worker source и кнопку engage. Вставьте url через ctrl+v или собственную вставку терминала — он попадёт прямо в поле. Телеметрия справа: sent, errors, packets, rate, peak, elapsed, спарклайн пакетов в секунду и индикатор времени запуска.
Вкладка Proxies: путь к папке, загрузка, сбор и проверка бесплатных списков (живые счётчики, сохраняемый рабочий набор), остановка посреди проверки с сохранением прошедших, очистка.
Вкладка Sources: выбор worker source, его тип, число узлов, endpoint и ключ env. reload повторно читает nodes.json из рабочей директории или из папки рядом с бинарником.
Вкладка Voice: token, guild id, channel id, опциональный proxy. Resolve подключается к голосовому состоянию ровно настолько, чтобы поймать VOICE_SERVER_UPDATE. Затем push relay to run устанавливает target на медиарелей с l4/udp.
Вкладка Log: полный поток сообщений с уровнями.
| source | что это |
|---|---|
local | сокеты этой машины, по умолчанию |
proxies | ваши собственные списки прокси |
scrape | собирает бесплатные списки, проверяет их, запускает рабочий набор |
redirects | встроенные релеи открытых редиректов, хопы берутся с их ip |
ufonet | мост к локальному клону UFONet, если он у вас есть |
vps-pool | ваши собственные узлы, запускающие агент |
stress-api | платный testing api, на который у вас есть ключ |
Один прокси на строку. Читается каждый файл в папке.
http://1.2.3.4:8080
socks5://5.6.7.8:1080
9.9.9.9:3128 (http assumed)
user:[email protected]:3128
# comment
Воркеры распределяются по списку, по одному пулу соединений на каждый прокси. Через прокси идёт только http. Задача l4 откатывается на локальное выполнение и сообщает об этом.
Загружает списки monosans и proxifly, сначала опрашивает каждого кандидата с коротким таймаутом (большинство записей — мёртвые хосты), затем выполняет реальный запрос через выживших. Сначала http, затем socks5, поскольку списки постоянно путают метки. Рабочий набор записывается в scraped.txt в папке прокси, начиная с самых быстрых.
Blend включён по умолчанию. Каждый запрос получает собственную строку запроса, ротацию user agent, языка и referer, воркеры работают с небольшим случайным интервалом, а ramp распределяет создание потоков примерно на 3 секунды вместо всплеска в начале. Это снижает пропускную способность. -blend=false, когда нужно сырое число.
l4 требует порт. Он не будет угадывать 80.
Полоса redirects работает с более широкими интервалами, чем полоса http, релеи ограничивают скорость сильнее всего.
Потоки — это настоящие потоки. Машина, с которой вы запускаете, — это первый лимит.
src/engine/ stats, target parsing, l7/l4 load, proxies, scrape,
redirects, sources, ufonet bridge, discord voice resolve
src/ui/ app state, rendering, boot animation, theme
src/cli.rs headless flags
cargo test
MIT, см. LICENSE.