Gerenciando redes com Perl e SNMP
Muitas empresas utilizam softwares de código aberto nas mais diversas atividades. Em minha carreira deparei-me com sistemas de gerência de rede que não atendiam as necessidades do cliente. Minha intenção aqui é demonstrar de forma prática como o SNMP funciona, como entender as MIBs e principalmente, como usar o Perl para melhorar os sistemas de gerência, ou mesmo, criar o seu próprio.
[ Hits: 51.707 ]
Por: Perfil removido em 23/03/2010
| Tipo de Dado | Descrição |
| OBJECT IDENTIFIER | Notação formada por uma sequência de números decimais separados por ponto que representa o objeto dentro da árvore de objetos. No nosso exemplo o objetct-type é 1.3.6.1.2.1.1.3 que é traduzido para sysUpTime. |
| INTEGER | Valor numérico inteiro que pode ser utilizado para representar estados (0 = "down", 1= "up", 3 = "dormant") ou valores quantitativos como número de bytes transmitidos. |
| OCTET STRING | String de bytes. Pode ser utilizada para representar, por exemplo, caracteres ASCII |
| IpAdress e NetworkAdresso | Representação de endereços IPv4. As versões 1 e 2 do SNMP não suportam o IPv6 |
| Counter e Gauge | São contadores. A diferença é que o Gauge aceita valores crescentes e decrescentes enquanto o Counter aceita apenas valores crescentes. |
| TimeTicks | Utilizado para medir tempo. |
| "Sequence" e "Sequence of" | Sequence é formado por uma sequência dos tipos de dados definidos pela ASN.1. E "Sequence of" representa uma sequência de objetos. |

SNMPv2-SMI DEFINITIONS ::= BEGIN
-- the path to the root
org OBJECT IDENTIFIER ::= { iso 3 } -- "iso" = 1
dod OBJECT IDENTIFIER ::= { org 6 }
internet OBJECT IDENTIFIER ::= { dod 1 }
directory OBJECT IDENTIFIER ::= { internet 1 }
mgmt OBJECT IDENTIFIER ::= { internet 2 }
mib-2 OBJECT IDENTIFIER ::= { mgmt 1 }
transmission OBJECT IDENTIFIER ::= { mib-2 10 }
experimental OBJECT IDENTIFIER ::= { internet 3 }
private OBJECT IDENTIFIER ::= { internet 4 }
enterprises OBJECT IDENTIFIER ::= { private 1 }
security OBJECT IDENTIFIER ::= { internet 5 }
snmpV2 OBJECT IDENTIFIER ::= { internet 6 }
Observando o arquivo e a imagem gerada por um software gráfico para leitura de MIBs vemos que "ISO" é a raiz da árvore. Seu OID é 1. ORG é definido como {iso 3}. Então ele é o terceiro elemento da árvore, dentro de "ISO". Seu OID é "1.3". Assim vão se formando os OIDs dentro da árvore. mib-2 é definida como {mgmt 1}. Então, mib-2 é "1.3.6.1.2.1".

Instalando Kylix 3 no Fedora Core
Fontes com filtros LCD no Arch Linux
Suporte TCP Wrapper - Serviços stand-alone no Debian 6
Sudo 1.8.12 - Parte II - Como sudo funciona
Manipulação de sockets em Perl usando o IO::Socket::INET
Instalação de MRTG em ambiente Windows
Enviando notificações do Nagios para o MSN
A forma correta de se instalar módulos Perl
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Script de montagem de chroot automatica
Instalar Dual Boot, Linux+Windows. (8)
Eaí? Já programou no windows? (2)
Erro ao enviar arquivos para o Storage Synology NAS (0)
Conky, alerta de temperatura alta (17)
De volta para o futuro - ou melhor, para o presente (parte 2) (3)









