Engenharia reversa do protocolo inform da UniFi para roteamento multi-inquilino

✍️ OpenClawRadar📅 Publicado: March 9, 2026🔗 Source
Engenharia reversa do protocolo inform da UniFi para roteamento multi-inquilino
Ad

Estrutura do protocolo inform UniFi

Cada dispositivo UniFi (pontos de acesso, switches, gateways) se comunica com seu controlador via HTTP POST na porta 8080 a cada 10 segundos. Isso lida com estatísticas do dispositivo, sincronização de configuração, versões de firmware e contagens de clientes. Embora a carga útil seja criptografada com AES-128-CBC, o cabeçalho contém a identificação do dispositivo em texto simples.

Detalhes do cabeçalho do pacote

Os primeiros 40 bytes de cada pacote inform não são criptografados:

Deslocamento Tamanho Campo
────── ───── ──────────────────────────
0      4B    Mágico: "TNBU" (0x544E4255)
4      4B    Versão do pacote (atualmente 0)
8      6B    Endereço MAC do dispositivo
14     2B    Flags (criptografado, compactado, etc.)
16     2B    Comprimento do IV AES
18     16B   IV AES
34     4B    Versão dos dados
38     4B    Comprimento da carga útil
42+    var   Carga útil criptografada (AES-128-CBC)

O endereço MAC no deslocamento de byte 8 está completamente não criptografado. "TNBU" é "UBNT" ao contrário (símbolo de ticker da Ubiquiti e credenciais SSH padrão).

Ad

Extração de MAC e roteamento

A extração do MAC requer código mínimo:

header := make([]byte, 40)
if _, err := io.ReadFull(conn, header); err != nil {
    return err
}
if string(header[0:4]) != "TNBU" {
    return fmt.Errorf("não é um pacote inform")
}
mac := fmt.Sprintf("%02x:%02x:%02x:%02x:%02x:%02x", 
    header[8], header[9], header[10], 
    header[11], header[12], header[13])

Com o MAC em mãos, o roteamento se torna simples: mantenha uma tabela mapeando endereços MAC para inquilinos e, em seguida, encaminhe todo o pacote (cabeçalho e carga útil criptografada inalterados) para o backend correto. O proxy pode ser implementado em cerca de 200 linhas de Go com uma tabela de pesquisa MAC-para-inquilino na memória.

Visão geral das portas do controlador

Outras portas do controlador incluem:

  • 8443 TCP/HTTPS: Interface web e API
  • 3478 UDP: STUN
  • 6789 TCP: Teste de velocidade (interno)
  • 27117 TCP: MongoDB (interno)
  • 10001 UDP: Descoberta L2 (apenas local)

O roteamento baseado em MAC serve principalmente como um fallback para casos extremos, como dispositivos que ainda não foram reconfigurados ou dispositivos com reset de fábrica sendo readotados. Uma vez adotados, os dispositivos podem ser direcionados para subdomínios específicos do inquilino usando roteamento de cabeçalho Host padrão.

📖 Leia a fonte completa: HN AI Agents

Ad

👀 See Also

Cavernícola: Uma Habilidade de Código do Claude que Corta 75% dos Tokens Usando Fala Estilo Caverna
Tools

Cavernícola: Uma Habilidade de Código do Claude que Corta 75% dos Tokens Usando Fala Estilo Caverna

Caveman é uma habilidade do Claude Code que reduz o uso de tokens em aproximadamente 75% ao fazer o Claude responder em um estilo conciso, como um homem das cavernas, mantendo total precisão técnica. É instalado via npx ou pela loja de plugins do Claude.

OpenClawRadar
Confronto de Agentes: Uma Arena de MMA para Testar o Comportamento de Agentes de IA Autônomos
Tools

Confronto de Agentes: Uma Arena de MMA para Testar o Comportamento de Agentes de IA Autônomos

Clash of Agents é um experimento onde agentes de IA autônomos competem em uma arena de luta MMA com combate baseado em turnos, análise pós-luta e interações sociais. Os agentes se registram, escolhem disciplinas de luta, treinam estatísticas e lutam com 21 movimentos reais de MMA e um sistema de combos.

OpenClawRadar
Resultados do PinchBench: Primeiro Benchmark Específico para Agentes de IA de Codificação OpenClaw
Tools

Resultados do PinchBench: Primeiro Benchmark Específico para Agentes de IA de Codificação OpenClaw

O primeiro benchmark específico do OpenClaw, PinchBench, classifica 32 modelos de IA por taxa de sucesso, custo e velocidade, com o Google Gemini-3-Flash-Preview liderando com 95,1% de sucesso por US$ 0,72.

OpenClawRadar
Uma arquitetura de base de conhecimento de 4 níveis para melhorar a precisão de agentes de IA
Tools

Uma arquitetura de base de conhecimento de 4 níveis para melhorar a precisão de agentes de IA

Um desenvolvedor construiu uma base de conhecimento estruturada com mais de 200 artigos para fornecer contexto específico de domínio a agentes de IA, implementando um pipeline de 4 níveis com classificação de consultas que reduziu os custos de tokens em aproximadamente 40%.

OpenClawRadar