Torna agli aggiornamenti
New releaseJul 29, 2026

netwatch v0.28.1

Diagnostica di rete in tempo reale nel tuo terminale. Un comando, zero configurazione, visibilità istantanea.

Condividi

NetWatch

Un monitor di rete per il terminale che aiuta a identificare il processo dietro le connessioni, legge il TLS di cui possiedi le chiavi e ti dice cosa non va e come risolverlo.

crates.io downloads Release Packaging status Platform License

Terminal Trove Tool of The Week

La vista dense di NetWatch: un grafico di throughput braille speculare con il download sopra l'asse e l'upload sotto, velocità per interfaccia con sparkline, budget di latenza a quattro hop e una tabella delle connessioni con lo stato TCP del kernel del socket selezionato

netwatch --view dense. Quattro riquadri, nessun fronzolo, ogni scorciatoia da tastiera su un bordo. Il download cresce verso l'alto dall'asse, l'upload verso il basso.

Un solo binario, nessuna configurazione. sudo netwatch e hai la cattura live con decodifica L7, attribuzione dei processi dove disponibile e un motore diagnostico che apre una segnalazione quando una baseline appresa si rompe e la chiude quando la correzione regge.

Installazione

brew install netwatch                 # macOS / Linux
nix-shell -p netwatch                 # NixOS / Nix
paru -S netwatch-tui-bin              # Arch
scoop install netwatch                # Windows (richiede Npcap)
cargo install netwatch-tui            # ovunque con Rust e header libpcap

I binari precompilati sono nella pagina delle release. I binari Linux x86_64/aarch64 sono statici con libpcap inclusa, quindi non richiedono nulla di installato. C'è anche una build armv5te per i vecchi NAS Marvell Kirkwood (ad es. Iomega ix2-dl) con Debian — libpcap è inclusa allo stesso modo, ma si collega a glibc e libatomic, quindi richiede Debian 12 (bookworm) o successivo con libatomic1 installato. Windows richiede prima l'installazione di Npcap; la compilazione dai sorgenti richiede libpcap-dev (Debian), libpcap-devel (Fedora) o libpcap (Arch). Dettagli nel riferimento all'installazione.

Esecuzione

netwatch              # interfacce, connessioni, configurazione. Nessun privilegio.
sudo netwatch         # abilita la cattura dove è richiesto accesso elevato
netwatch --lite       # una schermata 80x24
netwatch --view dense # quattro riquadri, 130x44 o più grande

Da 1 a 9 e 0 cambiano scheda, V cicla tra le tre viste, ? mostra tutti i tasti. Per eseguire senza sudo su Linux, concedi le capability una volta: sudo setcap 'cap_net_raw,cap_bpf,cap_perfmon+eip' "$(which netwatch)" (perché e quando ripeterlo).

Cosa fa

Diagnose (scheda 9). Baseline per metrica limitate alla rete che le ha apprese; la readiness richiede 1.800 campioni distinti, quindi il tempo di apprendimento dipende dalla cadenza delle sonde. 25 regole catalogate, con 18 rilevatori Diagnose implementati e sette in attesa di integrazione. La copertura a runtime indica quali input sono disponibili, in apprendimento, obsoleti o non misurati. Un grafo di soppressione raggruppa un gateway morto e le sue conseguenze sotto un'unica segnalazione. Ogni causa è classificata in base ai controlli che l'hanno separata dalle altre. I cambi automatici del resolver nella TUI restano non disponibili; Diagnose fornisce passaggi manuali. Un esplicito comando resolver Linux supporta modifiche temporanee a file regolari non gestiti confermati dall'amministratore; i resolver gestiti restano non supportati. La demo simula ancora l'applicazione e il ripristino verificato. I journal esistenti vengono ispezionati all'avvio, e i record di ripristino illeggibili o corrotti bloccano ulteriori modifiche all'host. Una segnalazione si chiude solo quando la condizione di successo della regola stessa è stata mantenuta. Nessun modello coinvolto. Come funziona, il design.

Un resolver lento a 33 volte la sua baseline, tre cause classificate, una correzione associata a un tasto e la segnalazione che si chiude da sola una volta che dns.rtt_p50 è rimasto sotto i 5ms per 60 secondi

Decifra il TLS che controlli. Punta la SSLKEYLOGFILE di qualsiasi client verso NetWatch e il testo in chiaro delle sue sessioni TLS 1.3 viene decodificato nella scheda Packets. Stesso meccanismo di Wireshark, quindi funziona solo per il traffico di cui possiedi le chiavi. Decifratura TLS.

sudo netwatch                                              # apri Packets (4)
SSLKEYLOGFILE=/tmp/keys curl https://example.com           # qualsiasi client che esporta le chiavi
# filtra la scheda con:  decrypted:true

Deriva dell'egress. La scheda Egress (0) apprende quali host, sistemi autonomi e porte raggiunge ogni processo. Enter promuove quella baseline a regola; la prossima nuova destinazione arriva come drift con un avviso. Osserva e non blocca mai. I verdetti sono sni, ip, asn, ech, drift, no rule e undeclared con strict = true, perché "corrisponde per AS" ammette tutto ciò che esegue un hyperscaler e la tabella dovrebbe dirlo. Linguaggio delle regole e schema di esportazione.

Attribuzione dei processi. Polling dei socket della piattaforma, PKTAP su macOS e un kprobe eBPF opzionale su Linux (feature ebpf). L'attribuzione può essere assente o obsoleta, specialmente per flussi di breve durata; Windows usa i propri strumenti di rete/processi. Permessi.

Categorie