Pular para conteúdo

Receber traps das OLTs

Com traps, a ONU pedindo autorização aparece no Provisionar em segundos, em vez de esperar a leitura de cada minuto. O serviço traps (container próprio) escuta a porta 162/udp do servidor e, a cada trap vindo do IP de uma OLT cadastrada e ativa, lê na hora as pendentes daquela OLT.

Ele não depende do tipo de trap: qualquer um serve de "aviso" (no máximo uma leitura a cada 10 segundos por OLT). Traps de outros IPs são ignorados. O conteúdo dos traps fica registrado no log (nível DEBUG) para os alertas da F4 (falta de energia, perda de sinal).

Sem trap também funciona

Se a OLT não mandar trap quando uma ONU pede autorização (depende do modelo e do firmware), a rotina de 1 minuto continua achando a pendente. Traps só deixam mais rápido.

1. Na OLT

Na interface web da OLT, em SNMP → Trap (o nome varia com o firmware), cadastre:

Campo Valor
Destino (host) IP do servidor do NOC FTTH
Porta 162
Versão v2c
Community qualquer (o sistema identifica a OLT pelo IP)

Se a OLT tiver lista de acesso de saída/gerência, permita o envio para esse IP.

2. No servidor

O serviço sobe junto com os outros (./scripts/atualizar.sh). Para conferir:

docker compose ps traps
docker compose logs -f traps      # cada trap de OLT aparece como "leitura das pendentes disparada"

Teste sem a OLT (de outro computador, com o pacote snmp), trocando o IP pelo do servidor:

snmptrap -v2c -c teste IP_DO_SERVIDOR:162 '' 1.3.6.1.4.1.37950.1.1.5.0.1

Esse teste aparece como "Trap ignorado" (não veio de uma OLT): é o esperado.

Firewall

O Docker publica a porta 162/udp por conta própria, por fora do ufw. Por isso o serviço só aceita traps de IPs de OLTs cadastradas. Se quiser fechar a porta para o resto da rede, faça no firewall do Proxmox/roteador (liberando só os IPs das OLTs).