Net-benchmark v0.5.0: CLI per Benchmark DNS + HTTP — SSL in arrivo con v0.6.0

Dal DNS al Benchmark di Rete Completo

Sei mesi fa ho rilasciato dns-benchmark-tool — una CLI per fare benchmark e confrontare i resolver DNS. Ha raggiunto oltre 14.000 installazioni in più di 100 paesi senza alcun marketing, grazie esclusivamente al passaparola e alla condivisione nella community.

Questo risultato mi ha dato un segnale chiaro: sviluppatori, SRE e ingegneri di infrastruttura hanno bisogno di una visibilità migliore su ciò che accade realmente a ogni livello di una richiesta di rete — non solo al livello DNS.

Oggi rilascio il suo successore: net-benchmark v0.5.0.

Cosa è Cambiato

Il vecchio pacchetto dns-benchmark-tool è archiviato. Tutto ciò che faceva è stato integralmente preservato in net-benchmark — tutti i comandi e i flag esistenti rimangono compatibili. È un successore drop-in, non una riscrittura.

# Vecchio
pip install dns-benchmark-tool

# Nuovo
pip install net-benchmark

Il nuovo repo dell'organizzazione si trova su:

github.com/net-benchmark/net-benchmark

Cosa c'è di Nuovo in v0.5.0: Benchmark HTTP

La novità principale è una suite completa di benchmark HTTP sotto la stessa CLI — stessi pattern di comandi, stessi formati di esportazione.

Cosa misura per ogni richiesta

  • DNS → TCP → TLS → TTFB → TTLB — analisi completa dei tempi a ogni livello
  • Audit degli header di sicurezza — HSTS, CSP, X-Frame-Options, X-Content-Type-Options
  • Fingerprinting CDN — rileva Cloudflare, Fastly, Akamai, Google
  • Acquisizione certificato TLS — scadenza, CN, emittente, SAN
  • Supporto autenticazione — Basic, Bearer, API key, mTLS, proxy, override SNI
  • Asserzioni — codice di stato, body contains, latenza massima, content-type, dimensione risposta
  • Catena di redirect — con tempi per ogni hop
  • Rilevamento downgrade HTTP/2
  • Analisi header di cache — Cache-Control, ETag, Last-Modified, Age

Avvio rapido

pip install net-benchmark

# Benchmark HTTP
net-benchmark http benchmark \
  --targets "https://www.github.com,https://www.gitlab.com,https://www.google.com,https://www.bing.com,https://www.cloudflare.com" \
  --iterations 3 \
  --formats csv,excel

# Confronta due endpoint
net-benchmark http compare github.com gitlab.com \
  --iterations 3 \
  --show-details

# Endpoint migliori per performance
net-benchmark http top \
  --targets "https://www.github.com,https://www.gitlab.com" \
  --limit 3 --metric ttfb

# Monitoraggio continuo
net-benchmark http monitoring \
  --targets "https://www.google.com,https://www.bing.com" \
  --interval 10 --duration 60 \
  --alert-latency 200 --alert-failure-rate 5

Se conosci i comandi DNS, conosci già HTTP — gli stessi pattern ovunque.

DNS: Tutto Funziona Ancora

Tutti i comandi DNS rimangono invariati. DoH, DoT e la validazione DNSSEC sono ancora funzionalità di prima classe:

# Benchmark DoH
net-benchmark dns benchmark \
  --resolvers "Cloudflare,Google" \
  --domains "bing.com,google.com" \
  --doh \
  --doh-url "https://cloudflare-dns.com/dns-query,https://dns.google/dns-query" \
  --iterations 3 \
  --formats excel \
  --output ./doh_bench_results

# DoT con DNSSEC su domini firmati
net-benchmark dns benchmark \
  --resolvers "Cloudflare,Quad9" \
  --domains "cloudflare.com,quad9.net" \
  --dot \
  --dnssec-validate

# Monitoraggio con alerting
net-benchmark dns monitoring \
  --use-defaults \
  --interval 5 \
  --duration 20 \
  --alert-latency 100 \
  --output ./dns_monitoring.log

Formati di Esportazione

Tutto viene esportato in CSV, Excel, PDF e JSON — come prima, ora con copertura sia per i risultati DNS che HTTP.

In Arrivo con v0.6.0: Verifica Certificati SSL

Il prossimo rilascio aggiunge la verifica dei certificati SSL — monitoraggio della scadenza, validazione della catena, verifica dell'emittente — tutto dalla stessa CLI. Questo completa la pipeline DNS → HTTP → SSL in un unico binario.

Perché l'Ho Costruito

La maggior parte degli strumenti di benchmark HTTP ti dà un solo numero. Questo nasconde dove va davvero il tempo. Un tempo di risposta di 400ms potrebbe essere composto da 300ms di risoluzione DNS, 80ms di handshake TLS e 20ms di elaborazione effettiva del server. net-benchmark te li mostra tutti.


Se ti piace il mio contenuto, supportami! grazie.

Post correlati