
netwatch v0.30.0
Diagnósticos de red en tiempo real en tu terminal. Un comando, cero configuración, visibilidad instantánea.
NetWatch
Diagnóstico de red en tu terminal.
netwatch --view dense. Cuatro cajas, sin cromo, cada atajo de teclado en un borde. La descarga crece hacia arriba desde el eje, la subida crece hacia abajo.
Un solo binario, sin configuración. sudo netwatch y tienes captura en vivo con decodificación L7, atribución de procesos cuando está disponible, y un motor de diagnóstico que abre una incidencia cuando una línea base aprendida se rompe y la cierra cuando la solución se mantiene.
Instalación
brew install netwatch # macOS / Linux
scoop install netwatch # Windows (necesita Npcap)
cargo binstall netwatch-tui # binario precompilado, en cualquier lugar con Rust
paru -S netwatch-tui # Arch (AUR)
nix-shell -p netwatch # NixOS / Nix
Debian / Ubuntu (repositorio apt):
curl -fsSL https://matthart1983.github.io/netwatch/apt/netwatch.gpg \
| sudo tee /usr/share/keyrings/netwatch.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/netwatch.gpg] \
https://matthart1983.github.io/netwatch/apt stable main" \
| sudo tee /etc/apt/sources.list.d/netwatch.list
sudo apt update && sudo apt install netwatch
Fedora: sudo dnf copr enable matthart1983/netwatch && sudo dnf install netwatch
Contenedor: docker run --rm -it --net=host --pid=host --cap-add=NET_RAW ghcr.io/matthart1983/netwatch
Binarios para macOS, Linux (x86_64, aarch64, armv5te) y Windows están en la
página de releases, con
.deb, .rpm, sumas de verificación y procedencia firmada. Las compilaciones de Linux son estáticas y
no necesitan nada instalado; Windows necesita Npcap.
Verificar una descarga ·
cada canal.
Ejecución
netwatch # interfaces, conexiones, configuración. Sin privilegios.
sudo netwatch # habilita la captura donde se requiere acceso elevado
netwatch --lite # una pantalla de 80x24
netwatch --view dense # cuatro cajas, 130x44 o más
1 a 9 y 0 cambian de pestaña, V alterna las tres vistas, ? muestra todas las teclas. Para ejecutar sin sudo en Linux, concede las capacidades una vez: sudo setcap 'cap_net_raw,cap_bpf,cap_perfmon+eip' "$(which netwatch)" (por qué y cuándo repetirlo).
Las pestañas
| # | Pestaña | Muestra |
|---|---|---|
| 1 | Dashboard | Mosaicos de latencia, rendimiento reflejado, el enlace que lo transporta, conexiones agrupadas por proceso |
| 2 | Connections | Cada socket con proceso, PID, estado, GeoIP, RTT, retransmisiones |
| 3 | Interfaces | Direcciones, MTU, tasas, errores, descartes |
| 4 | Packets | Decodificación en vivo, descifrado TLS 1.3, JA4, seguimiento de flujos, filtros de visualización, exportación PCAP |
| 5 | Stats | Desglose de protocolos e histograma de tiempos de handshake |
| 6 | Topology | Máquina, puerta de enlace, DNS, hosts principales, traceroute |
| 7 | Timeline | Conexiones por estado TCP, con alertas |
| 8 | Processes | Ancho de banda por proceso |
| 9 | Diagnose | Incidencia, causa, solución, cierre verificado. report.md a partir de los mismos objetos |
| 0 | Egress | Destinos aprendidos, política promovida, deriva |
Cada atajo de teclado, filtros de visualización, decodificadores, temas, configuración.
Vistas
V alterna las tres sin reiniciar; los recolectores siguen funcionando.
| Vista | Tamaño | Para |
|---|---|---|
| Full | cualquiera | Las diez pestañas anteriores |
Lite (--lite) | 80x24 | Una sesión SSH a una Pi, o una división de tmux |
Dense (--view dense) | 130x44+ | La imagen principal: cuatro cajas, rendimiento braille, detalle TCP del kernel |
Documentación
| Referencia | Teclas, filtros, decodificadores, configuración, permisos |
| Diagnose | Líneas base, las 30 reglas, causas clasificadas, cierres verificados |
| Descifrado TLS | Apunta SSLKEYLOGFILE a netwatch y lee tu propio tráfico |
| Linting de egreso | Observa destinos, promueve una política, alerta sobre lo que bloqueas |
| Seguridad y forense | Beaconing, escaneos, tunelización DNS, JA4, la grabadora de vuelo |
| Matriz de capacidades | Diferencias de plataforma, límites de diagnóstico y alcance de verificación |
| Evidencia de atribución | Identidad, frescura, denominadores de cobertura y resultados controlados |
| Comando doctor | Informe de configuración de solo lectura, capacidades JSON y comprobación de captura opcional |
| Diseño 0.30 | Por qué las pantallas se ven como se ven |
| Arquitectura | Runtime, mapa de fuentes, modelo de permisos, cómo compilar y verificar |
| AI Insights | Comentario LLM opcional dentro de Diagnose, desactivado por defecto |
| Exportación Prometheus | Métricas expuestas y configuración de scrape |
| Empaquetado | Cada canal, y qué lo actualiza |
| Changelog | Cada versión |
Relacionado
SysWatch y DiskWatch comparten el cromo. ESSH es un cliente SSH en Rust con el mismo aspecto. NetWatch Cloud es monitoreo de flotas alojado construido sobre el agente, el SDK y el dashboard con licencia MIT.
Agradecimientos
Gran parte del empaquetado es trabajo de otras personas. Dominiquini y kemelzaidan mantienen netwatch-tui y netwatch-tui-bin en el AUR, tomasrivera el paquete de nixpkgs, scillidan la entrada de Scoop, y los mantenedores de Homebrew llevaron la fórmula al núcleo. Reporta problemas de empaquetado a ellos y errores de netwatch aquí.
@lamchau, @fdncred y @PeteE enviaron parches. Todos los que abrieron una incidencia con una reproducción o discutieron una decisión de diseño son la razón por la que la salida es correcta en más terminales que la mía.
Contribuir
Discussions, issues, CONTRIBUTING.md.
Licencia
MIT