
Strumento di load e stress testing in Go con modalità L7 HTTP e L4 raw TCP/UDP, worker multi-thread, grafico del rate in tempo reale e una GUI per Windows più CLI multipiattaforma.
Strumento di load testing scritto in go. Puntalo verso un target, scegli quanto colpirlo forte, osserva un grafico in tempo reale. Funziona da una finestra su Windows e dal terminale ovunque altrove.
Solo target autorizzati. Lancialo contro macchine che possiedi o per cui hai permesso scritto di testare. Carico non richiesto contro il servizio di qualcun altro è un reato in quasi tutti i posti e non è lo scopo di questo strumento.
Prendi un binario dalla pagina delle release:
| piattaforma | file |
|---|---|
| Windows | ddossnake-windows-amd64.exe — la finestra |
| Linux | ddossnake-linux-amd64 |
| macOS (Intel / Apple silicon) | ddossnake-darwin-amd64 / ddossnake-darwin-arm64 |
| FreeBSD / OpenBSD | ddossnake-freebsd-amd64 / ddossnake-openbsd-amd64 |
Quello per Windows è una finestra nativa, senza console. Gli altri sono la CLI — stesso motore, nessun toolkit grafico.
Su linux/mac/bsd rendilo eseguibile prima:
chmod +x ddossnake-linux-amd64
./ddossnake-linux-amd64 -target http://10.0.0.5 -threads 400 -duration 30

TARGET url, ip, or ip:port e.g. 10.0.0.5:8080
REQUESTS cap for the run
MODE dos (L7 http) or ddos (multi source)
THREADS workers
DURATION seconds
FAST MODE keep-alive, no delay
LAYER 4 raw tcp/udp instead of http (ddos mode)
Start lo avvia, Stop lo termina, il grafico traccia i pacchetti al secondo.
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]
-fast keep-alive, no delay [true]
-list list worker sources and exit
-version print version
esempi:
# http load at a box you own
ddossnake -target http://10.0.0.5 -threads 400 -duration 30
# raw udp at a game/voice port
ddossnake -target 10.0.0.5:3478 -mode l4 -proto udp -threads 200
# what pools are available
ddossnake -list
ctrl-c lo ferma. una riga in esecuzione mostra inviati / errori / pacchetti / rate.
i target possono essere una url (http://host:port), un ip nudo, o ip:port. l4
richiede che la porta sia specificata esplicitamente — non indovinerà 80 per te.
| sorgente | cos'è |
|---|---|
local | i socket di questa macchina. il default. |
redirects | relay open-redirect integrati, così i salti provengono da altri IP |
ufonet | bridge verso un clone locale di UFONet, se ne hai uno |
vps-pool | i tuoi nodi che eseguono un agent (compila la lista dei nodi) |
stress-api | una API di testing a pagamento per cui possiedi una chiave |
local e redirects non richiedono altro. Gli altri servono quando hai la tua
infrastruttura o un account da qualche parte.
Richiede go 1.21+. Nessun cgo da nessuna parte.
git clone https://gitlab.com/vqkro/ddossnake
cd ddossnake
# cli - any platform
go build -o ddossnake ./cmd/ddossnake
# the window - windows only, walk is a native win32 toolkit
go build -o ddossnake.exe ./cmd/ddossnake-gui
La cross-compilazione della cli è puro go, senza destreggiarsi con toolchain:
GOOS=linux GOARCH=amd64 go build -o ddossnake-linux-amd64 ./cmd/ddossnake
GOOS=freebsd GOARCH=amd64 go build -o ddossnake-freebsd-amd64 ./cmd/ddossnake
GOOS=darwin GOARCH=arm64 go build -o ddossnake-darwin-arm64 ./cmd/ddossnake
La finestra è per sua natura solo per Windows — disegna con il toolkit walk. Ovunque altrove la CLI è lo strumento, ed è lo stesso motore sotto.
cmd/ddossnake cli entry
cmd/ddossnake-gui windows window
internal/ddos the engine both of them use
go test ./...
MIT, vedi LICENSE.