Uma lista completa do que a app monitoriza, e o raciocínio por trás das escolhas técnicas.
O NetPulse lê dados dos teus routers e mostra-os num único ecrã. A sondagem é somente de leitura; o que escreve é sempre explícito e coberto por reversão.
Uma pontuação de 0 a 100 que condensa latência, perdas, uptime e temperatura. Ao lado, o caudal WAN em direto face ao teu plano contratado, latência média e dispositivos ligados.
Mapa semântico construído a partir do FDB da bridge e LLDP quando disponível. Desenha routers, switches, hipervisores, contentores aninhados, clientes com e sem fios e túneis WireGuard. E quando a inferência não consegue saber onde algo está ligado, fixa o dispositivo ao seu router e porta exatos à mão.
Cada cliente classificado automaticamente por padrões de hostname e OUI, com banda, sinal em dBm, primeira aparição e o router ou porta com que fala.
Vista de conjunto de todos os teus routers com CPU, memória, temperatura, uptime, clientes ligados e um mini sparkline de carga das últimas 24 h. Os switches geridos sondados por SNMP também são cidadãos de primeira, com o seu histórico de tráfego e os seus clientes.
O agente é um pacote nativo de OpenWrt (.ipk e .apk, de mips a x86/64) com init procd, config UCI e watchdog. O servidor instala e atualiza a frota inteira a partir da UI, e roda os tokens a quente sem reinstalar.
Matriz de sinal entre APs e clientes, eventos de roaming guardados durante 30 dias, e ferramentas para reancorar clientes sticky ou expulsá-los de um AP para que escolham um melhor.
Um espectro real por rádio: cada rede desenhada como um sino no eixo de frequências, com as zonas DFS sombreadas e uma faixa contínua de ocupação. A sua rede, vista como o ar a vê.
Vista por porta dos switches: velocidade negociada, tráfego, erros, estado da ligação e alertas específicos como porta fantasma, flapping ou velocidade degradada.
Lista de peers, últimos handshakes, transferência por peer e desenho do túnel no mapa de topologia, com cada peer etiquetado pelo seu nome real da configuração UCI.
Estatísticas de consultas DNS, percentagem bloqueada, domínios mais bloqueados e que clientes usam o filtro, tudo ao lado do resto da rede.
Seis categorias com urgência por categoria: temperatura, firmware disponível, dispositivo novo, handshake WireGuard, porta de rede e eventos de roaming. Feed na campainha e notificações Web Push.
Relatórios de disponibilidade diários, semanais e mensais por router e por dispositivo. Em desenvolvimento: tráfego, atividade, resumo de alertas e exportação.
Uma só coluna com um índice fixo que te acompanha ao fazer scroll: utilizadores e papéis, idioma por utilizador, aparência com pré-visualizações reais, limiares de dados, routers, serviços e integrações, orquestração e atualização automática.
DEMO_MODE=1 levanta uma rede de exemplo completa com 67 dispositivos, sem routers reais. Útil para testar a interface antes de instalar.
luci-app-netpulse integra o estado do agente na interface web do OpenWrt: procd, UCI, logs, reinício e uma ligação à app principal.
Se não tens uma caixa à parte, o servidor pode correr no próprio router OpenWrt, com config UCI, pinning TLS e emparelhamento local.
Servidor MCP integrado em /mcp: o seu assistente de IA consulta o estado da frota, os dispositivos, os alertas e a topologia por HTTP com um token de API. Ferramentas de só leitura sobre a última sondagem.
Desenhe o seu rack de 19 polegadas, coloque routers, switches e servidores por unidade U, e deixe o NetPulse propor a cablagem a partir da topologia detectada, incluindo os uplinks entre routers. Pré-visualização inicial.
O NetPulse publica o estado da frota num broker MQTT e o Home Assistant descobre-o sozinho: cria os dispositivos e as suas entidades sem definires nada à mão. Tudo acontece na tua rede local.
O NetPulse não é um produto de marketing: é uma ferramenta pessoal construída para resolver problemas reais. Estas são as decisões que mais perguntas recebem.
O NetPulse nasceu de uma rede doméstica com quatro routers: um GL.iNet Flint 2 como gateway e três Xiaomi AX6 em segunda mão. O OpenWrt permite flashar, inspecionar e controlar o hardware. Sem isso não haveria forma de ler o FDB, o iwinfo ou os eventos iw que alimentam a app.
Um único binário estático com CGO desativado. Não precisa de toolchain C no destino, atualiza-se com uma troca atómica e guarda utilizadores, sessões e séries temporais numa SQLite local com WAL. O modernc.org/sqlite torna-o totalmente estático.
O servidor gera o seu próprio par de chaves ed25519 e tu autorizas a chave pública em cada router. A partir daí a sondagem só lê: ubus, /proc, iwinfo, bridge fdb, wg show. As ações que escrevem (reservar um IP, bloquear um dispositivo, orquestrar serviços, atualizar firmware) são sempre explícitas, acionadas por um admin e aplicadas com snapshot e reversão automática.
O NetPulse monitoriza uma rede; não precisa de um contentor para isso. Um serviço systemd em sandbox com um ficheiro de serviço simples, logs em journald e reinício automático é mais leve e mais fácil de operar num LXC ou VM pequena.
A interface é uma SPA React com Vite e Tailwind que se instala como PWA. O backend envia eventos em direto por SSE a cada ~5 s. Sem polling constante nem WebSocket: o SSE é unidirecional, reconecta-se sozinho e funciona bem atrás de proxies caseiros.
Começámos com DAWN para o steering WiFi porque era a opção mais visível na comunidade OpenWrt. Em redes reais vimos que podia negar autenticações em cadeia, expulsar clientes de forma inesperada e manter bugs por resolver no modelo peer-to-peer. O usteer é o daemon oficial do OpenWrt, com funcionalidades equivalentes e um modelo mais estável. A migração para usteer está em curso e mantém a mesma visibilidade de roaming.
É importante ser honesto quanto ao âmbito. O NetPulse não pretende ser: