quarta-feira, 10 de janeiro de 2018

O que é SNMP (Simple Network Management Protocol)

O que é SNMP?

Como o próprio nome diz, o SNMP é um protocolo muito, muito simples. Ele recebeu alguns upgrades na sua vida (por isso existem algumas versões, como v2c e v3) mas mantém características de um protocolo básico, quase inocente (vou explicar mais abaixo o que eu quero dizer). Existem diversos textos e vídeos na Internet explicando em detalhes esse protocolo, o meu objetivo aqui é fazer um resumo fácil de entender desse protocolo.

O SNMP é um protocolo de gerenciamento. Isso quer dizer que ele tem pouca utilidade para os usuários convencionais. Ele é um aliado dos gestores, administradores de redes e qualquer pessoa que precisa manter. Ele funciona assim: um equipamento A faz uma pergunta para o equipamento B, o equipamento B responde. Simples assim!

Perguntas e Respostas

Vamos ver alguns exemplos:
  • equipamento A pergunta ao equipamento B: "Quanto está a ocupação da sua CPU agora?" o equipamento B responde "83%".
  • equipamento A pergunta ao equipamento B: "Qual a a temperatura de cada processador?" o equipamento B responde "Processado 1 está em 45C, processador 2 está em 48C"
  • equipamento A pergunta ao equipamento B: "Que horas são no seu relógio?" o equipamento B responde "22:30"
  • e assim vai
O SNMP é um protocolo de "Pergunta/Resposta" (para quem já ouviu falar de traps, vamos falar deles daqui a pouco).

De onde vem as perguntas?

Qualquer equipamento na rede pode mandar uma pergunta para outro. Existem diversos programas grátis na Internet que permitem você, do seu computador, enviar perguntas para qualquer equipamento na rede, e obter as informações disponíveis via SNMP. Procure por "MIB Browser" e veja.

Ai você deve estar se perguntando: como assim qualquer equipamento na rede pode enviar uma pergunta e receber uma resposta? Eu preciso de uma senha! Você está quase correto.

Lembra que eu disse acima que o SNMP era um protocolo um pouco "inocente"? Ele foi criado em uma época onde não existiam hackers e não se preocupava muito com segurança (faz tempo). Então a grande maioria dos equipamentos vem com uma senha padrão: "private". Isso mesmo, p-r-i-v-a-t-e. Simples assim. Se você tentar nos equipamentos na sua rede vai funcionar a maioria das vezes porque ninguém muda. Mas qual é o usuário? Não existe! Existe apenas senha, que na verdade é chamado de community (como eu disse, na época segurança não era prioridade).

E mesmo se você mudar a community (mudar a senha), ainda assim ela vai ter trafegada na rede aberta, sem criptografia, e qualquer pessoa que capturar o pacote vai ter acesso a senha.

Na versão v3 do SNMP já existe o conceito de usuário e senha, na versão v2c a coisa já é um pouco melhor, mas na versão v1, é tudo muito simples.

Uma das opções é simplesmente não habilitar o SNMP (hoje em dia a maioria dos equipamentos vem com SNMP desabilitado de fabrica), mas se você habilitar, procure ter certeza que apenas a versão mais segura (v3 ou v2c) está habilitada. 

Outra opção de segurança é só reponder as requisições de SNMP vindas de IP cadastrados. Não é uma das formas mais seguras de se proteger um sistemas. Mas eu avisei que SNMP era das antigas!

História

O SNMP foi criado pelo departamento de defesa dos EUA (DARPA) para gerenciar "coisas". Que tipo de coisas? Qualquer coisa que estivesse conectado na rede. Dentro de um tanque de guerra existem diversos equipamentos eletrônicos conectados em rede, dentro de uma base de lançamento de misseis existem diversos equipamento conectados em rede.

Então o SNMP é um protocolo genérico, mas por isso mesmo rapidamente perceberam que ele poderia ser usado para gerenciar qualquer coisa, roteadores, switches, cafeteiras, máquinas de lavar roupa. Está em rede? Dá para usar SNMP. 

Obviamente o equipamento gerenciado precisa suportar SNMP, mas por ser um protocolo bem simples, qualquer fabricante de equipamentos (mesmo com pouca memória e processador) pode implementar SNMP, essa é uma das razões dele se tornar tão popular.

Padrão Aberto

Outra razão do SNMP ser popular é que ele não é de ninguém. Qualquer fabricante pode adicionar ao seu equipamento e, imediatamente, ele vai estar compatível com centenas de softwares de gerenciamento que estão hoje disponíveis no mercado.

Como fazer a pergunta?

Então você tem o seu programa de SNMP (para fazer perguntas) e um equipamento para acessar (para responder as perguntas), como é feita é pergunta? Você lembra que eu disse que o SNMP era muito simples? Pois até nisso ele é bem simples. Para fazer uma pergunta, você manda um número, simples assim!

Por exemplo, para saber quantos pacotes IP a porta número 2 de um roteador recebeu até agora, você manda a seguinte pergunta: "1.3.6.1.2.1.4.3.2" e ele reponde com um número, por exemplo "23488910", indicando que foram 23.488.910 pacotes até agora (desde que o roteador foi ligado).

Agora você deve estar se perguntando: como eu vou saber que eu tenho que perguntar 1.3.6.1.2.1.4.3.2 para saber isso? Ai entram as MIBs. MIB é um nome complicado para algo simples: é uma tabela com todas perguntas que você pode fazer para um equipamento.

Existem algumas MIB padrão, como MIB II, que indicam algumas perguntas padrões (como essa que eu passei acima) que um equipamento pode responder. Se um fabricante diz que seu equipamento suporta MIB II, é porque esse equipamento responde a qualquer pergunta que esteja nessa lista.

Mas os fabricantes também podem inventar novas perguntas, e ai eles publicam as MIBs do seus equipamento. Você tem um switch que suporta SNMP? Veja com o fabricante porque ele provavelmente fornece um arquivo de MIB para esse roteador. Você pega esse arquivo, joga no seu programa de SNMP (lembra do MIB Browser que eu falei acima?) e pronto? O seu programa de SNMP já tem uma nova lista de perguntas que ele pode fazer.

O que acontece se você pegar uma pergunta de um fabricante e jogar para o equipamento de outro? Nada! Se você enviar para um equipamento uma pergunta que ele não sabe responder, ele não responde!

Traps

Todo equipamento de SNMP trabalha com o conceito de "pooling", que é como se fosse um censo. Chega alguém, pergunta, você responde, e acabou. O SNMP é assim. O software de SNMP manda uma pergunta, o equipamento responde (se a community/senha estiver correta). Mas e se acontecer uma tragédia?

Por exemplo, eu tenho um programa de gerenciamento de SNMP, ele programo ele para a cada 5 minutos perguntar para o roteador se o link Internet está no ar. O gerenciado de SNMP manda "1.3.6.1.2.1.31.1.1.1.14" e o roteador reponde 1 para link no ar, e 0 para link down (a MIB informa isso tudo). Mas se o link cair, posso demorar 5 minutos para ficar sabendo (tempo que o gerenciador demora para perguntar novamente). Eu posso diminuir esse tempo (uma pergunta a cada 5 segundos), mas ai eu vou lotar a rede de pacotes. O que fazer?

Ai entra o TRAP, que é que o equipamento gerenciado informa ao gerenciador SNMP que algo aconteceu. Então no roteador você informa o endereço IP do servidor de SNMP, se o link cair, o roteador imediatamente envia o aviso. Muito melhor!

Como eu consigo saber quais TRAPS o meu equipamento suporta? Adivinaha só? Na MIB! Lá também está descrito quais TRAPS o equipamento suporta. Então quando você importa (alias, os programas de MIB chamam esse processo de importar de "compilar a MIB", coisa das antigas) a MIB no programa de SNMP, ele tem mostra quais traps são suportados (link up, link down, excesso de erros, etc, etc.)

Resumo

A ideia deste texto foi dar um resumo rápido e simplificado do que é o SNMP. Se você tiver dúvidas, pode deixar nos comentários que a gente responde mais rápido possível. Obviamente se você precisar de informações mais detalhadas sobre o protocolo, o Google também é seu amigo.

Fonte: http://tecnologiaerede.blogspot.com.br/2017/01/o-que-e-snmp-simple-network-management.html

Qual a diferença entre um switch L2 e L3?

Um switch Ethernet realiza várias tarefas, entre elas criar VLANs. No entanto existem dois tipos de switches: os Layer 2 (L2) e Layer 3 (L3). Qual a diferença entre eles?

Antes, um pequeno resumo sobre VLANs (para quem quiser um artigo mais completo sobre VLANs. As VLANs são como ilhas dentro de uma rede. Os equipamentos que estão  em uma "ilha" não tem acesso direto aos equipamentos de outra. Assim as VLANs criam isolação entre partes da rede, mesmo que os equipamentos estejam conectados no mesmo switch.

No entanto algumas vezes é necessário ter alguma comunicação entre VLANs diferentes. Seja para acessar um servidor (comunicação  entre as VLANs dos usuários e a VLAN dos servidores), seja para acessar a Internet (comunicação entre as VLANs dos usuários e o roteador de saída para a Internet). E esses são apenas alguns exemplos de aplicações onde podemos precisar "interconectar" essas "ilhas".

Um switch L2 gerenciável permite a criação de VLANs, mas não faz a interconexão entre elas. Assim, se eu tenho uma rede feita totalmente de switches L2, eu até posso criar VLANs, mas não consigo fazer elas se comunicarem. Eu até posso usar um roteador (que também é um equipamento Layer 3) para interconectar as VLANs, mas normalmente um roteador é um equipamento que tem uma baixa capacidade de comutação de pacotes, ou - traduzindo para o português - um roteador pode se tornar um gargalo na comunicação entre as VLANs.

Um switch L3, por outro  lado, é um switch igual a um switch L2 (tem portas, cria VLANs, gerenciável, etc) mas ele tem uma funcionalidade que os switches L2 não tem: permite interconectar as VLANs.

Um comentário antes de continuarmos: um switch L3 é um roteador. Muita gente pensa que roteador é apenas o equipamento que conectar com a Internet. Não é verdade. Um roteador é qualquer equipamento que liga redes diversas. Assim um switch L3 é também um roteador. Então quando falei acima que  "..mas normalmente um roteador é um equipamento que tem uma baixa capacidade de comutação de pacotes..."  eu não estava sendo 100% honesto com você leitor. Um roteador (do tipo que conecta rede com Internet) é sim normalmente um equipamento de menor capacidade de comutação. Porém um switch L3 é um roteador, que está "dentro" de swich L2 (ou seja, faz tudo que um switch L2 faz) e tem  uma maior capacidade. Vamos agora voltar ao nosso assunto.

Então com um switch L3 o administrador da rede consegue - de maneira organizada - fazer a comunicação entre as VLANs. É importante que eu posso ter vários switches L3 ou apenas um L3 na minha rede, mesmo tendo vários switches L2.

Se eu tenho um switch L3 e vários L2, esse switch L3 normalmente é o switch central. Todo o tráfego entre VLANs passa por ele.

Se eu tenho vários switches L3, o custo do meu projeto é maior e também a complexidade de configuração é maior. Porém com vários L3 eu divido a minha carga, então posso ter uma performance melhor na interconexão entre as VLANs.

Hoje em dia a maior parte dos projetos tem como objetivo ligar as VLANs dos usuários com a VLAN dos servidores e com a Internet, e mais nada. Ou seja, hoje em dia a maioria dos projetos não precisa de grandes arranjos de switches L3: vários switches L2 conectados a um switch L3 central (ou se eu quiser redundâncias, conectados a dois switches L3 centrais) já é o suficiente para a grande maioria dos projetos.

Fontehttp://tecnologiaerede.blogspot.com.br/2017/10/qual-diferenca-entre-um-switch-l2-e-l3.html