Desvendando o Zabbix e SNMP: Monitorar Dispositivos de Rede

Desvendando o Zabbix e SNMP: Monitorar Dispositivos de Rede

Já se deparou com um switch, roteador, impressora ou qualquer outro dispositivo de rede e pensou nele como uma “caixa preta”? Sabemos que ele está funcionando, mas não temos ideia do que está acontecendo lá dentro: Qual o volume de tráfego em cada porta? A temperatura está normal? Quantas páginas foram impressas hoje?

Esses dispositivos são vitais para nossa infraestrutura, mas muitas vezes não podemos instalar um agente de monitoramento neles, como faríamos em um servidor Linux ou Windows. E então, como conseguimos a visibilidade necessária?

A resposta é um protocolo poderoso e universal que funciona como uma linguagem comum para esses equipamentos: o SNMP (Simple Network Management Protocol). Neste guia, vamos desmistificar o SNMP e mostrar, passo a passo, como usá-lo com o Zabbix para transformar suas caixas pretas em livros abertos.

A Analogia do Painel de Controle: Entendendo o SNMP

Para simplificar, imagine que seu roteador de rede é um carro. O Zabbix, nosso sistema de monitoramento, é o motorista que precisa saber o que está acontecendo com o veículo. O SNMP é o painel do carro.

  • Gerente (Manager): É o nosso Zabbix Server. Ele é o “motorista” que olha para o painel.
  • Agente (Agent): É o próprio dispositivo de rede (roteador, switch, etc.). Ele possui um “painel” embutido com todos os seus indicadores.
  • MIB (Management Information Base): Pense na MIB como o manual do proprietário do carro. Ele descreve o que cada medidor no painel significa. Por exemplo, ele diz que um certo medidor é o “velocímetro” e mede km/h, enquanto outro é o “medidor de combustível”.
  • OID (Object Identifier): É o identificador único de cada medidor no painel. É uma sequência de números, como um código, que aponta exatamente para uma informação. Por exemplo, 1.3.6.1.2.1.2.2.1.10.1 pode ser o OID para “bytes de entrada na porta 1”.

Em resumo: O Zabbix (motorista) usa um OID (código do medidor) para perguntar ao dispositivo (carro) sobre uma métrica específica. Para saber o que aquele código significa, o Zabbix consulta a MIB (manual do proprietário).

A Ferramenta-Chave para o Diagnóstico: snmpwalk

Antes de configurar qualquer coisa no Zabbix, precisamos conversar diretamente com o dispositivo para ver se ele “fala” SNMP e o que ele tem a nos dizer. A ferramenta para isso é o snmpwalk. É como ter um leitor de diagnóstico universal que se conecta ao carro.

O comando snmpwalk “caminha” pela árvore de OIDs de um dispositivo e nos mostra todos os valores que ele consegue ler.

Sintaxe básica:

snmpwalk -v [versão] -c [comunidade] [IP_do_dispositivo] [OID_opcional]
  • -v [versão]: Geralmente 2c (a mais comum) ou 3 (mais segura).
  • -c [comunidade]: A “senha” de leitura do SNMP. É uma string de texto. A mais comum por padrão é public.
  • [IP_do_dispositivo]: O endereço IP do seu switch, roteador, etc.
  • [OID_opcional]: Se você quiser ver apenas uma “seção do manual” (ex: apenas informações das interfaces), você pode especificar um OID inicial.

Passo a Passo: Validando um Equipamento para Monitoramento

Vamos simular a validação de um novo switch na nossa rede.

1. A Primeira Caminhada (Discovery)

Primeiro, vamos fazer uma “caminhada” geral para ver se o dispositivo responde. Para isso, precisamos ter o pacote snmpwalk instalado em nosso Linux (sudo apt install snmp ou sudo yum install net-snmp-utils).

snmpwalk -v 2c -c public 192.168.1.1

Se você receber uma longa lista de OIDs numéricos e seus valores, parabéns! O dispositivo responde ao SNMP com a comunidade public. Se receber um “Timeout”, verifique se o SNMP está habilitado no dispositivo e se a “community string” está correta.

A saída será algo assim, pouco amigável:

iso.3.6.1.2.1.1.1.0 = STRING: "My Awesome Router Model XYZ"
iso.3.6.1.2.1.1.3.0 = Timeticks: (12345678) 1 day, 10:17:36.78
iso.3.6.1.2.1.2.2.1.1.1 = INTEGER: 1
iso.3.6.1.2.1.2.2.1.1.2 = INTEGER: 2
...

2. Traduzindo os Códigos: Carregando as MIBs

Essa saída numérica não é útil. Precisamos do “manual do proprietário” (a MIB) para traduzir isso. Cada fabricante (Cisco, HP, Mikrotik, etc.) possui MIBs específicas para seus equipamentos.

  • Como encontrar a MIB? Vá ao site de suporte do fabricante e procure por “MIB download for [modelo do seu equipamento]”.
  • Como usar a MIB? Em sistemas Linux, você pode instalar um conjunto padrão de MIBs (sudo apt install snmp-mibs-downloader) e adicionar as MIBs do fabricante em diretórios como /usr/share/snmp/mibs.

Agora, vamos repetir o snmpwalk, mas pedindo para ele usar todas as MIBs que encontrar:

snmpwalk -v 2c -c public -m ALL 192.168.1.1

A saída agora será mágica!

SNMPv2-MIB::sysDescr.0 = STRING: "My Awesome Router Model XYZ"
SNMPv2-MIB::sysUpTime.0 = Timeticks: (12345678) 1 day, 10:17:36.78
IF-MIB::ifIndex.1 = INTEGER: 1
IF-MIB::ifIndex.2 = INTEGER: 2
...

Veja como os números foram traduzidos para nomes compreensíveis! Agora sabemos que SNMPv2-MIB::sysUpTime.0 é o tempo que o equipamento está ligado.

3. Encontrando Exatamente o Que Você Precisa

Digamos que queremos monitorar o tráfego de entrada na interface “GigabitEthernet0/1”. Sabemos que o nome legível é ifInOctets. Podemos usar o grep para filtrar a saída:

snmpwalk -v 2c -c public -m ALL 192.168.1.1 | grep ifInOctets

A saída pode ser:

IF-MIB::ifInOctets.1 = Counter32: 11223344
IF-MIB::ifInOctets.2 = Counter32: 55667788
...

Agora sabemos que a interface com índice .1 teve 11223344 octetos (bytes) de entrada. Com o OID numérico correspondente (que o snmpwalk também pode fornecer), estamos prontos para ir ao Zabbix.

4. Configurando o Item no Zabbix

Com o OID em mãos, a configuração no Zabbix é direta:

  1. Vá em Configuration > Hosts e crie ou edite seu host.
  2. Na aba Interfaces, adicione uma interface do tipo SNMP.
  3. Vá para Items e clique em Create item.
    • Name: Tráfego de Entrada – Porta 1
    • Type: SNMP agent
    • Key: ifInOctets.1 (uma chave descritiva)
    • SNMP OID: Cole aqui o OID numérico que você descobriu. Ex: .1.3.6.1.2.1.2.2.1.10.1
    • SNMP community: Use a macro {$SNMP_COMMUNITY}. Isso é uma boa prática que permite definir a community string no nível do host ou template.
    • Type of information: Numeric (unsigned)
    • Units: bps
    • Store value: Delta (speed per second) – Isso é crucial para tráfego! O Zabbix irá calcular a taxa de variação (bits por segundo) em vez de apenas armazenar o contador crescente.

Pronto! Seu Zabbix agora está coletando dados de tráfego do seu switch.

Vantagens e Desvantagens do Monitoramento SNMP

Vantagens:

  • Padrão Universal: É “agentless” do ponto de vista do Zabbix. Praticamente todo equipamento de rede profissional suporta SNMP.
  • Baixo Custo de Recurso: O serviço SNMP nos dispositivos é extremamente leve e consome poucos recursos de CPU ou memória.
  • Riqueza de Dados: Dispositivos expõem uma quantidade massiva de informações via SNMP, desde estatísticas de tráfego até temperatura, status de fontes de energia e níveis de toner de impressora.

Desvantagens:

  • Segurança: As versões 1 e 2c do SNMP usam uma “community string” em texto puro, o que é uma falha de segurança se exposto à internet. O SNMPv3 resolve isso com autenticação e criptografia, mas é mais complexo de configurar.
  • Complexidade das MIBs: Encontrar a MIB correta e o OID exato para uma métrica não-padrão pode ser um desafio, um verdadeiro “caça ao tesouro”.
  • Baseado em UDP: O SNMP geralmente usa o protocolo UDP, que não garante a entrega de pacotes. Em redes congestionadas, coletas podem ser perdidas.

Conclusão

Dominar o monitoramento SNMP é como aprender o idioma universal dos equipamentos de rede. Abre um novo mundo de visibilidade onde antes só havia incerteza. Embora possa parecer intimidador no início com suas MIBs e OIDs, o processo é lógico e, com a ajuda do snmpwalk, totalmente factível.

Lembre-se do processo: Descubra com o snmpwalk, Traduza com as MIBs, Encontre o OID específico e Configure no Zabbix. Ao fazer isso, você transforma o Zabbix em uma central de controle completa, não apenas para seus servidores, mas para toda a sua infraestrutura de rede.

Agora, que tal pegar aquele switch esquecido no canto do rack e descobrir o que ele tem a dizer?

Anterior IA no Universo Kubernetes: detecte e resolva incidentes com inteligência artificial

About author

Deborah Melo
Deborah Melo 15 posts

Analista de Infraestrutura | Construtora na 4Linux | LPIC 1 | Graduada em Eng. Elétrica | Apaixonada por tecnologia e ideologias Open Source.

View all posts by this author →

Você pode gostar também