SlideShare a Scribd company logo
1 of 36
Sumário ,[object Object],[object Object]
Formatos
Acesso a MIBs ,[object Object],[object Object]
Alterações na SMI ,[object Object]
Introdução - SNMP ,[object Object]
Padrão de mercado – TCP/IP
Simples
SMI SNMP (RFC 1155) sysUptime OBJECT-TYPE SYNTAX Time-Ticks ACCESS read-only STATUS mandatory DESCRIPTION “ The time (in hundredths of a second) since the network management portion of the system was last re-initialized.” ::= { system 3 }
Tipos de Dados SNMP ,[object Object]
OCTET STRING
OBJECT IDENTIFIER (OID)
NULL (valor Null)
IpAddress (OCTET STRING de tamanho 4)
Counter (unsigned 32-bit integer)
Gauge (unsigned 32-bit integer)
TimeTicks (unsigned 32-bit integer)
Opaque (tipos não uados em SNMPv1)
Outros:  DateAndTime, DisplayString, MacAddress, PhysAddress, TimeInterval, TimeStamp, TruthValue, VariablePointer  – todos são textual conventions usados como tipos de dados
Arquitetura SNMP
Comunicação SNMPv1
Operações SNMP
Encapsulamento do Protocolo SNMPv1 PDU da tecnologia de rede (Ethernet por exemplo) Pacote IP Datagrama UDP Mensagem SNMP
Mensagem SNMPv1 Número inteiro indicando a versão do SNMP sendo usada (0 para SNMPv1) Este campo carrega o nome de comunidade que o originador da mensagem está usando. Dados efetivos de gerência a serem analisados e processados Versão Comunidade PDU (Protocol Data Unit)
Formato do PDU SNMPv1
O que pode dar errado numa operação SNMPv1? ,[object Object],0 - noError  (não houve erro) 1 - tooBig  (a resposta é muito grande para a implementação) 2 - noSuchName  (uma das variáveis não consta na MIB do agente requisitado) 3 - badValue  (erro no pedido de  set ) 4 - readOnly  (uma mensagem  Set  tenta alterar uma variável  read-only ) 5 - genError   (erro desconhecido)
Obtenção de Valores de uma MIB ,[object Object]
1.3.6.1.2.12.2.1.2. 2
1.3.6.1.2.12.2.1.2. 3
Obtenção de Valores em Tabelas ,[object Object]
Uso do objeto do tipo  entryStatus
Formato do PDU para a  trap  SNMPv1 ,[object Object]
1 – warmStart : reinicialização do dispositivo com possível alteração da configuração do agente
2 – linkDown: falha num dos links do agente
3 – linkUp: volta de um link do agente
4 – authenticationFailure: falha na autenticação de uma mensagem recebida
5 – egpNeighborLoss: perda da comunicação com um vizinho EGP

More Related Content

What's hot

Linux4all#2
Linux4all#2Linux4all#2
Linux4all#2Daniel
 
Ferramentas hack wifi aircrack
Ferramentas hack wifi aircrackFerramentas hack wifi aircrack
Ferramentas hack wifi aircrackPedro Verissimo
 
Instalando e configurando o serviço snmpd no red hat 5.3 cent_os
Instalando e configurando o serviço snmpd no red hat 5.3   cent_osInstalando e configurando o serviço snmpd no red hat 5.3   cent_os
Instalando e configurando o serviço snmpd no red hat 5.3 cent_osCarlos Eduardo
 
Zabbix + SNMP: Compartilhando experiências sobre SNMP
Zabbix + SNMP: Compartilhando experiências sobre SNMPZabbix + SNMP: Compartilhando experiências sobre SNMP
Zabbix + SNMP: Compartilhando experiências sobre SNMPAndré Déo
 
Ferramentas GPL para segurança de redes - Vanderlei Pollon
Ferramentas GPL para segurança de redes - Vanderlei PollonFerramentas GPL para segurança de redes - Vanderlei Pollon
Ferramentas GPL para segurança de redes - Vanderlei PollonTchelinux
 
Ferramentas GPL para a segurança de Redes de Computadores - Vanderlei Pollon
Ferramentas GPL para a segurança de Redes de Computadores - Vanderlei PollonFerramentas GPL para a segurança de Redes de Computadores - Vanderlei Pollon
Ferramentas GPL para a segurança de Redes de Computadores - Vanderlei PollonTchelinux
 
Threads 03: Ciclo de vida, aplicações e boas práticas
Threads 03: Ciclo de vida, aplicações e boas práticasThreads 03: Ciclo de vida, aplicações e boas práticas
Threads 03: Ciclo de vida, aplicações e boas práticasHelder da Rocha
 
Threads 05: Travas de Exclusão Mútua
Threads 05: Travas de Exclusão MútuaThreads 05: Travas de Exclusão Mútua
Threads 05: Travas de Exclusão MútuaHelder da Rocha
 
Funcionamento interno do node.js e boas práticas
Funcionamento interno do node.js e boas práticasFuncionamento interno do node.js e boas práticas
Funcionamento interno do node.js e boas práticasKirmayr tomaz
 
Introdução a Redes de Computadores - 9 - Nível de Rede - IP (p1)
Introdução a Redes de Computadores - 9 - Nível de Rede - IP (p1)Introdução a Redes de Computadores - 9 - Nível de Rede - IP (p1)
Introdução a Redes de Computadores - 9 - Nível de Rede - IP (p1)Andre Peres
 
Threads 02: Acesso exclusivo e comunicação entre threads
Threads 02: Acesso exclusivo e comunicação entre threadsThreads 02: Acesso exclusivo e comunicação entre threads
Threads 02: Acesso exclusivo e comunicação entre threadsHelder da Rocha
 
Alta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores LinuxAlta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores Linuxelliando dias
 
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...Marlon Willrich
 
Implatação de Sistemas de Segurança com Linux
Implatação de Sistemas de Segurança com LinuxImplatação de Sistemas de Segurança com Linux
Implatação de Sistemas de Segurança com LinuxAlvaro Gomes
 
Cluster de Alta Disponibilidade em Linux
Cluster de Alta Disponibilidade em LinuxCluster de Alta Disponibilidade em Linux
Cluster de Alta Disponibilidade em LinuxFrederico Madeira
 

What's hot (20)

Linux4all#2
Linux4all#2Linux4all#2
Linux4all#2
 
Ferramentas hack wifi aircrack
Ferramentas hack wifi aircrackFerramentas hack wifi aircrack
Ferramentas hack wifi aircrack
 
Mrtg
MrtgMrtg
Mrtg
 
Net - Threads
Net - ThreadsNet - Threads
Net - Threads
 
Instalando e configurando o serviço snmpd no red hat 5.3 cent_os
Instalando e configurando o serviço snmpd no red hat 5.3   cent_osInstalando e configurando o serviço snmpd no red hat 5.3   cent_os
Instalando e configurando o serviço snmpd no red hat 5.3 cent_os
 
Zabbix + SNMP: Compartilhando experiências sobre SNMP
Zabbix + SNMP: Compartilhando experiências sobre SNMPZabbix + SNMP: Compartilhando experiências sobre SNMP
Zabbix + SNMP: Compartilhando experiências sobre SNMP
 
Ferramentas GPL para segurança de redes - Vanderlei Pollon
Ferramentas GPL para segurança de redes - Vanderlei PollonFerramentas GPL para segurança de redes - Vanderlei Pollon
Ferramentas GPL para segurança de redes - Vanderlei Pollon
 
Ferramentas GPL para a segurança de Redes de Computadores - Vanderlei Pollon
Ferramentas GPL para a segurança de Redes de Computadores - Vanderlei PollonFerramentas GPL para a segurança de Redes de Computadores - Vanderlei Pollon
Ferramentas GPL para a segurança de Redes de Computadores - Vanderlei Pollon
 
Threads 03: Ciclo de vida, aplicações e boas práticas
Threads 03: Ciclo de vida, aplicações e boas práticasThreads 03: Ciclo de vida, aplicações e boas práticas
Threads 03: Ciclo de vida, aplicações e boas práticas
 
Threads 05: Travas de Exclusão Mútua
Threads 05: Travas de Exclusão MútuaThreads 05: Travas de Exclusão Mútua
Threads 05: Travas de Exclusão Mútua
 
Funcionamento interno do node.js e boas práticas
Funcionamento interno do node.js e boas práticasFuncionamento interno do node.js e boas práticas
Funcionamento interno do node.js e boas práticas
 
Introdução a Redes de Computadores - 9 - Nível de Rede - IP (p1)
Introdução a Redes de Computadores - 9 - Nível de Rede - IP (p1)Introdução a Redes de Computadores - 9 - Nível de Rede - IP (p1)
Introdução a Redes de Computadores - 9 - Nível de Rede - IP (p1)
 
Threads e sockets java
Threads e sockets javaThreads e sockets java
Threads e sockets java
 
Threads 02: Acesso exclusivo e comunicação entre threads
Threads 02: Acesso exclusivo e comunicação entre threadsThreads 02: Acesso exclusivo e comunicação entre threads
Threads 02: Acesso exclusivo e comunicação entre threads
 
Alta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores LinuxAlta Disponibilidade na Prática utilizando servidores Linux
Alta Disponibilidade na Prática utilizando servidores Linux
 
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
Minicurso GNU/Linux básico - Aula2 - Semana Sistemas de Informação 2015 - UNI...
 
Threads
ThreadsThreads
Threads
 
Implatação de Sistemas de Segurança com Linux
Implatação de Sistemas de Segurança com LinuxImplatação de Sistemas de Segurança com Linux
Implatação de Sistemas de Segurança com Linux
 
Cluster de Alta Disponibilidade em Linux
Cluster de Alta Disponibilidade em LinuxCluster de Alta Disponibilidade em Linux
Cluster de Alta Disponibilidade em Linux
 
Trabalho sistemas operacionais
Trabalho sistemas operacionaisTrabalho sistemas operacionais
Trabalho sistemas operacionais
 

Similar to Gerência de Redes - 2.Modelo SNMP

SNMP - UFRJ Redes de Computadores curso
SNMP - UFRJ  Redes de Computadores cursoSNMP - UFRJ  Redes de Computadores curso
SNMP - UFRJ Redes de Computadores cursoAristeneSilva
 
Gerência - Aula 02
Gerência - Aula 02Gerência - Aula 02
Gerência - Aula 02Marcus Lucas
 
Zabbix e SNMP - Zabbix Conference LatAM 2016
Zabbix e SNMP - Zabbix Conference LatAM 2016Zabbix e SNMP - Zabbix Conference LatAM 2016
Zabbix e SNMP - Zabbix Conference LatAM 2016André Déo
 
Gerência de Redes - 4.RMON
Gerência de Redes - 4.RMONGerência de Redes - 4.RMON
Gerência de Redes - 4.RMONMauro Tapajós
 
Zabbix Conference LatAm 2016 - Andre Deo - SNMP and Zabbix
Zabbix Conference LatAm 2016 - Andre Deo - SNMP and ZabbixZabbix Conference LatAm 2016 - Andre Deo - SNMP and Zabbix
Zabbix Conference LatAm 2016 - Andre Deo - SNMP and ZabbixZabbix
 
Disciplina_Redes e Segurança de Sistemas - Mapeamento de Redes
Disciplina_Redes e Segurança de Sistemas - Mapeamento de RedesDisciplina_Redes e Segurança de Sistemas - Mapeamento de Redes
Disciplina_Redes e Segurança de Sistemas - Mapeamento de RedesRogério Almeida
 
FISL8 - Aplicações Livres para Gerenciamento de Redes e Serviços
FISL8 - Aplicações Livres para Gerenciamento de Redes e ServiçosFISL8 - Aplicações Livres para Gerenciamento de Redes e Serviços
FISL8 - Aplicações Livres para Gerenciamento de Redes e ServiçosMauro Tapajós
 
Node.js para desenvolvedores .NET
Node.js para desenvolvedores .NETNode.js para desenvolvedores .NET
Node.js para desenvolvedores .NETMVP Microsoft
 
(08)inicializacao e gerencia_de_processos
(08)inicializacao e gerencia_de_processos(08)inicializacao e gerencia_de_processos
(08)inicializacao e gerencia_de_processosAnderson Lago
 
Desenvolvendo interfaces ricas em java fx para ultrabook final
Desenvolvendo interfaces ricas em java fx para ultrabook   finalDesenvolvendo interfaces ricas em java fx para ultrabook   final
Desenvolvendo interfaces ricas em java fx para ultrabook finalFelipe Pedroso
 
Utilitários para Programação Concorrente em Java (2005)
Utilitários para Programação Concorrente em Java (2005)Utilitários para Programação Concorrente em Java (2005)
Utilitários para Programação Concorrente em Java (2005)Helder da Rocha
 
Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007Rafael Benevides
 

Similar to Gerência de Redes - 2.Modelo SNMP (20)

Agr aula3
Agr aula3Agr aula3
Agr aula3
 
Snmp
SnmpSnmp
Snmp
 
Aula 009 de Gerenciamento de Redes - SNMP
Aula 009 de Gerenciamento de Redes - SNMPAula 009 de Gerenciamento de Redes - SNMP
Aula 009 de Gerenciamento de Redes - SNMP
 
SNMP - UFRJ Redes de Computadores curso
SNMP - UFRJ  Redes de Computadores cursoSNMP - UFRJ  Redes de Computadores curso
SNMP - UFRJ Redes de Computadores curso
 
Protocolo SNMP
Protocolo SNMPProtocolo SNMP
Protocolo SNMP
 
Gerência - Aula 02
Gerência - Aula 02Gerência - Aula 02
Gerência - Aula 02
 
Zabbix e SNMP - Zabbix Conference LatAM 2016
Zabbix e SNMP - Zabbix Conference LatAM 2016Zabbix e SNMP - Zabbix Conference LatAM 2016
Zabbix e SNMP - Zabbix Conference LatAM 2016
 
Gerência de Redes - 4.RMON
Gerência de Redes - 4.RMONGerência de Redes - 4.RMON
Gerência de Redes - 4.RMON
 
Zabbix Conference LatAm 2016 - Andre Deo - SNMP and Zabbix
Zabbix Conference LatAm 2016 - Andre Deo - SNMP and ZabbixZabbix Conference LatAm 2016 - Andre Deo - SNMP and Zabbix
Zabbix Conference LatAm 2016 - Andre Deo - SNMP and Zabbix
 
Disciplina_Redes e Segurança de Sistemas - Mapeamento de Redes
Disciplina_Redes e Segurança de Sistemas - Mapeamento de RedesDisciplina_Redes e Segurança de Sistemas - Mapeamento de Redes
Disciplina_Redes e Segurança de Sistemas - Mapeamento de Redes
 
Canais Assíncronos I
Canais Assíncronos ICanais Assíncronos I
Canais Assíncronos I
 
FISL8 - Aplicações Livres para Gerenciamento de Redes e Serviços
FISL8 - Aplicações Livres para Gerenciamento de Redes e ServiçosFISL8 - Aplicações Livres para Gerenciamento de Redes e Serviços
FISL8 - Aplicações Livres para Gerenciamento de Redes e Serviços
 
Node.js para desenvolvedores .NET
Node.js para desenvolvedores .NETNode.js para desenvolvedores .NET
Node.js para desenvolvedores .NET
 
(08)inicializacao e gerencia_de_processos
(08)inicializacao e gerencia_de_processos(08)inicializacao e gerencia_de_processos
(08)inicializacao e gerencia_de_processos
 
Palestra2009
Palestra2009Palestra2009
Palestra2009
 
Desenvolvendo interfaces ricas em java fx para ultrabook final
Desenvolvendo interfaces ricas em java fx para ultrabook   finalDesenvolvendo interfaces ricas em java fx para ultrabook   final
Desenvolvendo interfaces ricas em java fx para ultrabook final
 
R&C 0201 07 1
R&C 0201 07 1R&C 0201 07 1
R&C 0201 07 1
 
Gerana
GeranaGerana
Gerana
 
Utilitários para Programação Concorrente em Java (2005)
Utilitários para Programação Concorrente em Java (2005)Utilitários para Programação Concorrente em Java (2005)
Utilitários para Programação Concorrente em Java (2005)
 
Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007
 

More from Mauro Tapajós

Proyecto liberació SIGATI
Proyecto liberació SIGATIProyecto liberació SIGATI
Proyecto liberació SIGATIMauro Tapajós
 
Propostas de Autenticação para SNMP
Propostas de Autenticação para SNMPPropostas de Autenticação para SNMP
Propostas de Autenticação para SNMPMauro Tapajós
 
Integração de Serviços em Plataforma Livre
Integração de Serviços em Plataforma LivreIntegração de Serviços em Plataforma Livre
Integração de Serviços em Plataforma LivreMauro Tapajós
 
Instalação e Atualização Automática de Aplicações para Ambientes Corporativos
Instalação e Atualização Automática de Aplicações para Ambientes CorporativosInstalação e Atualização Automática de Aplicações para Ambientes Corporativos
Instalação e Atualização Automática de Aplicações para Ambientes CorporativosMauro Tapajós
 
Serviço de Distribuição de SW em Plataforma Livre
Serviço de Distribuição de SW em Plataforma LivreServiço de Distribuição de SW em Plataforma Livre
Serviço de Distribuição de SW em Plataforma LivreMauro Tapajós
 
Migração para Software Livre nas Universidades
Migração para Software Livre nas UniversidadesMigração para Software Livre nas Universidades
Migração para Software Livre nas UniversidadesMauro Tapajós
 
Códigos Convolucionais (sequenciais)
Códigos Convolucionais (sequenciais)Códigos Convolucionais (sequenciais)
Códigos Convolucionais (sequenciais)Mauro Tapajós
 
Posso rodar minhas aplicações corporativas sobre linux?
Posso rodar minhas aplicações corporativas sobre linux?Posso rodar minhas aplicações corporativas sobre linux?
Posso rodar minhas aplicações corporativas sobre linux?Mauro Tapajós
 
integração de Serviços no Processo de Migração para uma Plataforma Livre
integração de Serviços no Processo de Migração para uma Plataforma Livreintegração de Serviços no Processo de Migração para uma Plataforma Livre
integração de Serviços no Processo de Migração para uma Plataforma LivreMauro Tapajós
 
Atualização Automática de Aplicações em plataforma livre
Atualização Automática de Aplicações em plataforma livreAtualização Automática de Aplicações em plataforma livre
Atualização Automática de Aplicações em plataforma livreMauro Tapajós
 
Integração de Serviços como requisito fundamental no processo de migração par...
Integração de Serviços como requisito fundamental no processo de migração par...Integração de Serviços como requisito fundamental no processo de migração par...
Integração de Serviços como requisito fundamental no processo de migração par...Mauro Tapajós
 
Instalação e Atualização Automática de Aplicações em Plataforma Livre para Am...
Instalação e Atualização Automática de Aplicações em Plataforma Livre para Am...Instalação e Atualização Automática de Aplicações em Plataforma Livre para Am...
Instalação e Atualização Automática de Aplicações em Plataforma Livre para Am...Mauro Tapajós
 
Processo de Startup do Linux
Processo de Startup do LinuxProcesso de Startup do Linux
Processo de Startup do LinuxMauro Tapajós
 
Aspectos do kernel Linux e Instalação
Aspectos do kernel Linux e InstalaçãoAspectos do kernel Linux e Instalação
Aspectos do kernel Linux e InstalaçãoMauro Tapajós
 
Avaliação das distribuições Linux
Avaliação das distribuições LinuxAvaliação das distribuições Linux
Avaliação das distribuições LinuxMauro Tapajós
 
FISL7 - Padrões Abertos e Software Livre para Vídeoconferência
FISL7 - Padrões Abertos e Software Livre para VídeoconferênciaFISL7 - Padrões Abertos e Software Livre para Vídeoconferência
FISL7 - Padrões Abertos e Software Livre para VídeoconferênciaMauro Tapajós
 
Suporte e Disponibilidade no Linux
Suporte e Disponibilidade no LinuxSuporte e Disponibilidade no Linux
Suporte e Disponibilidade no LinuxMauro Tapajós
 
Pequena Apostila sobre Software Livre
Pequena Apostila sobre Software LivrePequena Apostila sobre Software Livre
Pequena Apostila sobre Software LivreMauro Tapajós
 

More from Mauro Tapajós (20)

Proyecto liberació SIGATI
Proyecto liberació SIGATIProyecto liberació SIGATI
Proyecto liberació SIGATI
 
Propostas de Autenticação para SNMP
Propostas de Autenticação para SNMPPropostas de Autenticação para SNMP
Propostas de Autenticação para SNMP
 
Integração de Serviços em Plataforma Livre
Integração de Serviços em Plataforma LivreIntegração de Serviços em Plataforma Livre
Integração de Serviços em Plataforma Livre
 
Instalação e Atualização Automática de Aplicações para Ambientes Corporativos
Instalação e Atualização Automática de Aplicações para Ambientes CorporativosInstalação e Atualização Automática de Aplicações para Ambientes Corporativos
Instalação e Atualização Automática de Aplicações para Ambientes Corporativos
 
Asterisk
AsteriskAsterisk
Asterisk
 
Serviço de Distribuição de SW em Plataforma Livre
Serviço de Distribuição de SW em Plataforma LivreServiço de Distribuição de SW em Plataforma Livre
Serviço de Distribuição de SW em Plataforma Livre
 
Migração para Software Livre nas Universidades
Migração para Software Livre nas UniversidadesMigração para Software Livre nas Universidades
Migração para Software Livre nas Universidades
 
Códigos Convolucionais (sequenciais)
Códigos Convolucionais (sequenciais)Códigos Convolucionais (sequenciais)
Códigos Convolucionais (sequenciais)
 
Posso rodar minhas aplicações corporativas sobre linux?
Posso rodar minhas aplicações corporativas sobre linux?Posso rodar minhas aplicações corporativas sobre linux?
Posso rodar minhas aplicações corporativas sobre linux?
 
Software Winrad
Software WinradSoftware Winrad
Software Winrad
 
integração de Serviços no Processo de Migração para uma Plataforma Livre
integração de Serviços no Processo de Migração para uma Plataforma Livreintegração de Serviços no Processo de Migração para uma Plataforma Livre
integração de Serviços no Processo de Migração para uma Plataforma Livre
 
Atualização Automática de Aplicações em plataforma livre
Atualização Automática de Aplicações em plataforma livreAtualização Automática de Aplicações em plataforma livre
Atualização Automática de Aplicações em plataforma livre
 
Integração de Serviços como requisito fundamental no processo de migração par...
Integração de Serviços como requisito fundamental no processo de migração par...Integração de Serviços como requisito fundamental no processo de migração par...
Integração de Serviços como requisito fundamental no processo de migração par...
 
Instalação e Atualização Automática de Aplicações em Plataforma Livre para Am...
Instalação e Atualização Automática de Aplicações em Plataforma Livre para Am...Instalação e Atualização Automática de Aplicações em Plataforma Livre para Am...
Instalação e Atualização Automática de Aplicações em Plataforma Livre para Am...
 
Processo de Startup do Linux
Processo de Startup do LinuxProcesso de Startup do Linux
Processo de Startup do Linux
 
Aspectos do kernel Linux e Instalação
Aspectos do kernel Linux e InstalaçãoAspectos do kernel Linux e Instalação
Aspectos do kernel Linux e Instalação
 
Avaliação das distribuições Linux
Avaliação das distribuições LinuxAvaliação das distribuições Linux
Avaliação das distribuições Linux
 
FISL7 - Padrões Abertos e Software Livre para Vídeoconferência
FISL7 - Padrões Abertos e Software Livre para VídeoconferênciaFISL7 - Padrões Abertos e Software Livre para Vídeoconferência
FISL7 - Padrões Abertos e Software Livre para Vídeoconferência
 
Suporte e Disponibilidade no Linux
Suporte e Disponibilidade no LinuxSuporte e Disponibilidade no Linux
Suporte e Disponibilidade no Linux
 
Pequena Apostila sobre Software Livre
Pequena Apostila sobre Software LivrePequena Apostila sobre Software Livre
Pequena Apostila sobre Software Livre
 

Gerência de Redes - 2.Modelo SNMP

Editor's Notes

  1. SNMP é o padrão para protocolo de gerência mais popular. Foi o padrão adotado por vários fabricantes e operadoras. Define como funciona a arquitetura de gerenciamento de redes TCP/IP. É simples para ser implementado em todo tipo de equipamentos e flexível o bastante para aceitar futuras modificações. É o protocolo de gerenciamento da arquitetura TCP/IP. Define como funciona a arquitetura de gerenciamento Internet. Está intimamente ligado à forma como as informações de gerenciamento estão organizadas. Apresenta uma SMI própria. Versão 1, 1990, RFC 1157.
  2. Este é um exemplo de declaração de objeto, para SNMP. As variáveis e seus valores estão diretamente relacionadas com a realidade do equipamento. Um objeto é definido segundo a macro ASN.1 OBJECT-TYPE. As operações sobre objetos da MIB são restritas a leituras e escritas.
  3. Nem todas as opções de tipos de dados oferecidos pela linguagem ASN.1 são usados com SNMP. O conjunto acima é, na verdade, um subconjunto dos tipos ASN.1 possíveis.
  4. A arquitetura SNMP prevê o papel de gerentes e agentes. Um gerente mantém o monitoramento e controle de vários itens dentro de uma rede. Estes equipamentos contém um agente SNMP que responde às mensagens do gerente SNMP.
  5. Nesta figura se vê as operações básicas para SNMPv1. Algumas características do protocolo: Não necessita de um serviço de transporte confiável (normalmente roda sobre UDP) Pode usar outras pilhas de transporte Baseado em arquitetura cliente-servidor (pedidos-respostas), daí não necessitar de serviço de transporte confiável. Utiliza as portas UDP 161 (agente) e 162 (gerente, para as traps).
  6. Na sua versão 1, o SNMP possui apenas 5 mensagens. getRequest : coletam dados da MIB do agente sem alterá-los, para isso, especifica os objetos desejados por meio de uma lista de pares (ID das variáveis - Valor da variável). Trata-se de uma operação atômica: se ocorre um erros em algum dos objetos pedidos, toda a mensagem é perdida getNextRequest : coletam dados da MIB do agente de maneira semelhante à mensagem de get a diferença é que getNext pede um objeto que é o objeto com identificador imediatamente seguinte numericamente ao que está na mensagem. Isso permite que um gerente possa pedir novos objetos, mesmo sem conhecê-los. setRequest : alteram os dados na MIB do agente. Para isso, especifica os objetos desejados por meio de uma lista de pares (ID das variáveis - Valor desejado da variável). A mensagem de Set segue com os campos de valor das variáveis contendo os valores a serem inseridos. Sua resposta em caso de sucesso conterá os mesmos pares ID-Valor. getResponse : resposta do agente a qualquer uma das mensagens acima. trap : mensagem assíncrona enviada pelos agentes. Será vista en detalhes adiante.
  7. Este é um exempo comum de encapsulamento do protocolo SNMP usando UDP como protocolo de transporte.
  8. A mensagem SNMPv1 composta dos seguintes campos: Versão: versão do protocolo Comunidade: string que identifica um grupo de entidades SNMP PDU: específico do tipo de mensagem utilizada Uma comunidade é um nomes textual que especifica o nível de acesso às facilidades oferecidas pelos agentes. Trata-se de um mecanismo trival de autenticação (e uma falha de segurança no protocolo) para controlar quais dispositivos são controlados por qual gerente, pois uma comunidade casa um agente com um conjunto de entidades de aplicação. A idéia é prevenir que gerentes desautorizados escrevam na MIB de um determinado agente, restringindo, assim, a informação vista por determinado gerente. Este fraco esquema de autenticação inibe a utilização da operação de set (operações de escrita) pela inerente falta de segurança.
  9. Os campos de um PDU SNMPv1 básico são: Tipo de PDU : especifica a operação SNMPv1 dentre as 5 apresentadas. Request ID : número sequencial para associar pedidos com respostas. Error Status : código de retorno da operação. Error Index : em caso de erro, aponta para o objeto onde houve o problema. Lista de pares objeto-valor : identifica objetos e valores a serem utilizados na operação.
  10. Numa mensagem SNMPv1 response: O campo error status indica o que ocorreu O campo error index aponta para o primeiro objeto que apresentou falha
  11. Uma variável SNMP é identificada pelo identificador de objeto (OID) e pelo identificador de instância. Por exemplo, para o objeto sysDescr, seu OID é: iso.org.dod.internet.mgmt.mib-2.system.sysDescr = 1.3.6.1.2.1.1.1 para obter o valor da variável (de instância única) efetua-se o get sobre 1.3.6.1.2.1.1.1.0 que é a varável que contém o valor na MIB. Para o caso de variáveis de múltiplas instâncias, utiliza-se os identificadores de cada instância, por exemplo, para o objeto ifDescr (1.3.6.1.2.12.2.1.2): 1.3.6.1.2.12.2.1.2. 1 (primeira instância) 1.3.6.1.2.12.2.1.2. 2 (segunda instância) 1.3.6.1.2.12.2.1.2. 3 (terceira instância) 1.3.6.1.2.12.2.1.2. 4 (quarta instância) ... Note que nem sempre os identificadores de instâncias são números sequenciais (1, 2, 3, ...). O padrão permite que se use qualquer valor. Por exemplo, usar números IP numa tabela de rotas.
  12. Duas operações podem ser feitas numa tabela: cração e deleção de uma linha. Para manipular as linhas das tabelas em SNMP, é usado um objeto de status na tabela (de tipo entryStatus ). Este objeto possui dois valores possíveis: valid ou invalid . Ao se criar uma linha, uma operação de setRequest conterá valores para os objetos que compõem a tabela, Caso não se tenha todos os valores necessários, é possível que valores default sejam usados para inicializar os demais. A linha é criada realmente quando o valor do objeto de status for alterado para valid . Para se deletar uma linha, altera-se o valor do objeto de status para invalid . O uso de tabelas também é um aspecto de protocolo. Haja visto o uso da operação de getNextRequest. Esta varre a tabela, coluna por coluna, de cima a baixo, de forma que, ao se chear ao final da tabela se obtém o próximo objeto da MIB e com isso otimizando a troca de informações sendo feita pelas mensagens.
  13. A mensagem de trap reporta ao gerente eventos, problemas e condições anormais. Correlação de alarmes : inteligência que realiza um primeiro diagnóstico da situação. Manipulação e diagnóstico a partir das várias traps que chegam. Uma boa razão para o uso de traps é definir outras política de monitoramento: se existem muitos dispositivos na rede fica inviável se fazer pollings periodicos. Uma solução é se fazer pollings menos frequentes e responder somente se uma trap foi recebida alertando algo. Campos da trap SNMPv1: Enterprise : OBJID que indica o tipo de dispositivo que enviou a trap Tipo da trap genérica : um dos 6 tipos de trap genérica Código específico da trap : identifica uma trap específica de uma determinada “Enterprise” Timestamp : Tempo passado entre o momento em que foi gerada a trap e a última reinicialização Lista de pares objeto-valor : específica da trap
  14. Traps específicas são definidas pelo valor do enterprise OBJID e o número specific-trap. Existe uma macro (TRAP-TYPE) para definição de traps.
  15. Uma MIB view é um subconjunto de objetos de uma MIB de um dispositivo, relacionados por grau de acesso. O controle de acesso SNMP define que uma determinada comunidade está restrita às variáveis de uma determinada MIB view. Um perfil de comunidade = MIB view + modo de acesso da view para aquela comunidade
  16. Cada agente controla sua MIB e o seu uso por estações gerentes, segundo o nome de comunidade apresentado na mensagem SNMPv1. Este é o chamado “esquema de autenticação trivial” que torna SNMPv1 tão inseguro. O valor de not-acessible pode não fazer sentido à primeira vista, mas ele pode ser (usado, por exemplo, para evitar que se peça uma tabela inteira numa operação de get. Isto acontece por que a declaração de uma tabela, na verdade, é a declaração de uma sequência de linhas. Esta sequência tem um identificador como qualquer outro item de dado ASN.1 e poderia ser pedido via uma operação de get, o que não é possível. Assim, declara-se esta sequência como not-acessible para evitar pedidos diretos a ela, mas continua sendo possível se pedir os objetos que a compõem.
  17. Limitações do protocolo SNMPv1: Não é adequado para gerenciar redes muito grandes Não é adequado para coletar grandes volumes de dados Traps não são confirmadas (não se sabe se chegaram ou não!) Autenticação trivial. Mais adequado a monitoramento (gets) do que controle (sets), falta de segurança Não permite comandos diretos no agente. Apenas alterações chaveadas por mudanças nos valores de objetos Não permite comunicação entre gerentes Pouca funcionalidade comparativamente ao CMIP/CMIS (protocolo/serviço de gerenciamento da arquitetura OSI) A característica atômica das mensagens, ou seja, o fato de uma mensagem obter total sucesso ou total fracasso nas operações (não há a possibilidade de sucesso parcial num request) Impossibilidade de configuração remota dos agentes Todos estes argumentos causaram a evolução para SNMPv2
  18. A abrangente proposta SNMPv2 “Clássica” (SNMPv2p) baseada em parties foi um fracasso. Em 1995 foi feita mais uma revisão do protocolo em resposta à baixa aceitação da versão SNMPv2p. Tal revisão se deu principalmente no que diz respeito ao contexto baseado em parties, à configuração dos agentes, à dificuldade de descoberta automática da rede e à implementação do modelo administrativo e de segurança. O único consenso então obtido foi aceitar as novidades no protocolo, porém permanecendo o contexto de operação sob a antiga forma de comunidades. Assim, foi apresentada mais uma versão de SNMP, agora chamada de SNMPv2c (baseado em comunidades). Nesta, o modelo administrativo apresentado na versão “clássica” e baseado em parties, foi completamente descartado. Apesar do fracasso, pode-se considerar que há aspectos positivos apresentados na versão SNMPv2p como a criação de extensões da linguagem (que facilitam a declaração de novos objetos) e a melhoria da performance do protocolo na troca de informações com um melhor tratamento de erros. Uma útil experiência prática foi obtida nas implementações e testes com SNMPv2p. Em resumo, SNMPv2cassimilou somente as novas mensagens, correções e SMIv2, esperando ainda melhorias em: Segurança (o grande problema) Configuração Remota Infra-estrutura Administrativa
  19. A SMIv2 é um superconjunto da primeira SMIv1 - RFCs 1442, 1443, 1444. Agora existem novos (e mais adequados) tipos de dados: Counter32, Counter64, BIT STRING, .. A SMIv2 é uma evolução totalmente compatível com a SMIv1 (a exceção é o novo tipo de dado Counter64).
  20. Cláusula MAX-ACCESS (define agora o nível MÁXIMO de acesso): not-acessible, acessible-for-notify, read-only, read-write e read-create. Cláusula STATUS: current, obsolet e deprecated.
  21. Uma nova macro para convenções de texto (TEXTUAL CONVENTIONS) que descreve melhor e com detalhes um tipo de dado específico definido pelo usuário. Várias novas textual conventions foram definidas para SNMPv2.
  22. A nova convenção de texto rowStatus substituiu a antiga coluna entryStatus. O tratamento das operações com linhas de tabelas ficou mais clara. Às vezes não é possível se preencher uma linha da tabela num único set, por isso se deve mandar “esperar” pelo resto dos dados (createAndWait)
  23. A pilha de transporte necessária para rodar SNMP sempre foi UDP. Esta característica ficou mais flexível em SNMPv2, onde outras pilhas de protocolos podem ser usadas. Entre as possibilidades de configuração para SNMPv2 estão: protocolos de transporte OSI, Appletalk (protocolo usado por máquinas macintosh), DDP e SPX, usado pelas redes Novell. getRequest / getNextRequest : não existe mais a perda da resposta toda em caso de problema numa das variáveis. Se num pedido de get/getNext ocorrer algum os seguintes erros, o valor da variável será preenchido com o código correspondente e o status de erro da mensagem (errorstatus) será sucesso (zero) noSuchObject noSuchInstance endOfMibView response : é o novo nome da operação getResponse setRequest : a operação de set é executada em duas fases: na primeira, as variáveis são testadas e na segunda elas são propriamente alteradas. Esta operação permanece atômica (tudo ou nada). A lista de códigos de erros aumentou defindo outras situações
  24. Com a não aceitação do modelo de segurança proposto em SNMPv2p, a mensagem SNMPv2c possui os mesmos delimitadores e cabeçalhos da versão SNMPv1 (com exceção do campo versão que agora tem valor 1 indicando a versao 2) Foi mantido o mesmo esquema de comunidades da versão 1.
  25. A nova mensagem informRequest permite a um gerente enviar uma notificação à outro gerente quando for necessário. É uma operação análoga à da mensagem trap, porém com confirmação explícita (através de uma mensagem response). Um gerente envia um informRequest a outro em resposta a eventos complexos como a ultrapassagem de um limite máximo de erros ou muitas falhas em operações. Esta nova possibilidade permite a hierarquização da estrutura gerencial do SNMPv2
  26. Em SNMPv1 quando se desejava grandes quantidades de dados de uma MIB, a limitação do tamanho das respostas era função da implementação no agente distante. Se era pedido um volume muito grande de informações para um único get, a resposta era vazia com o campo error status com valor “tooBig”. Se era pedido um volume muito pequeno de informações para um único get, a coleta de dados não é eficiente A nova operação getBulkRequest otimiza a recuperação de um volume considerável de variáveis, pedindo eficientemente o máximo de dados que um agente pode enviar por meio de uma mensagem response . O pedido de um getBulkRequest pode ser tanto de variáveis individuais ou de linhas de uma tabela. A diferença entre as operações getBulkRequest e getNextRequest está na capacidade da primeira enviar linhas inteiras de uma tabela, além de “navegar” na MIB de forma sequencial exatamente como um getNext.
  27. Non-repeaters – especifica o número de objetos escalares máximo a ser enviado no response Max-repetitions – define o máximo número de vezes que deve se seguir pelas variáveis de várias estâncias Note que o formato do PDU é o mesmo para as outras operações, simplesmente são usados os campos error status e error index
  28. Houve uma uniformização do formato da PDU, de forma a evitar o processamento extra para lidar com dois diferentes tipos de PDU como na versão 1. Sobre as traps (agora chamada snmpv2-trap): A definição de uma trap pode ser feita pela nova macro NOTIFICATION-TYPE e apresenta basicamente seu nome e sua lista de variáveis. Todos os campos específicos da trap versão 1 estão agora dentro da lista de variáveis (no lugar do antigo campo timestamp agora é colocado o objeto sysUptime).
  29. Agentes SNMP basicamente podem ser construídos de duas formas: Agentes extensíveis: são desenvolvidos com arquitetura aberta com design modular permitindo adaptações para novos requisitos de dados de gerenciamento e extensões operacionais Agentes Monolíticos: não são extensíveis. São construídos com otimizações para determinadas plataformas de hardware ou SO, visando melhor performance
  30. É um agente SNMP que não está no mesmo sistema sendo gerenciado. Isto permite o acesso indireto a dispositivos: sem suporte SNMP sem suporte TCP/IP ou da rede sendo usada Além das vantagens acima, o uso de proxy pode ter aspectos de segurança num determinado ambiente de rede. Para maiores informações: http://www.snmplink.org/
  31. O pacote NET_SNMP ( http://net-snmp.sourceforge.net/ ) é o pacote SNMP padrão no mundo Linux. Ele é composto de um agente, várias aplicações em linha de comando e uma biblioteca SNMP, desenvolvidos em C + PERL. Licença BSD (permissiva). Seu agente, o snmpd, pode ser configurado para qualquer versão SNMP (1, 2c e 3) sobre IPv4 ou IPv6. Além disso, o agente suporta várias MIBs sendo extensível (SMUX e AgentX). Os arquivos de configuração do pacote se localizam no diretório /etc/snmp/. Para o agente, os arquivos relevantes são: - snmp.conf – configurações padrões para o agente e as aplicações - snmpd.conf – configurações específicas para o agente O arquivo snmpd.conf possui inúmeras opções. Para maiores detalhes veja a man page relacionada com: “ man snmpd.conf” O diretório /usr/share/snmp/mibs/, disponibilizado na instalação do pacote, contém as definições de várias MIBs.
  32. Dentre as aplicações disponíveis no pacote estão aplicações para: - Obter informação de dispositivos SNMP com requests ( snmpget , snmpgetnext ). - Obter informação de dispositivos SNMP com requests múltiplos: snmpwalk – obtém toda a MIB implementada no agente snmptable – obtém uma tabela SNMP completa snmpdelta – monitora as alterações em variáveis de uma MIB - Obter informações específicas de dispositivos SNMP snmpdf – obtém informações de espaço em disco na máquina remota snmpnetstat – obtém informações de rede (status e configuração) snmpstatus – obtém informações de estado do dispositivo remoto - Alterar a configuração de dispositivos SNMP ( snmpset ). - Mostrar o conteúdo de MIBs em formato numérico ou textual ( snmptranslate ). - Um MIB browser gráfico ( tkmib ) desenvolvido em Tk/perl. - Enviar traps SNMP ( snmptrap ). - Receber notificações SNMP ( snmptrapd ) e dar destino a elas (log, repasse para outro gerente SNMP ou outra aplicação). Ele possui um arquivo de configuração próprio (/etc/snmp/snmptrapd.conf)
  33. Cada um dos comandos snmp deles possui sintaxes com vários opções. O comando snmpconf auxilia na configuração destes arquivos. Este comando, inclusive, pode comentar um arquivo de configuração existente, visando torna-lo mais legível. O comando snmptest inicia um diálogo interativo com um agente SNMP. Através deste se pode enviar vários comandos SNMP e obter respostas.
  34. 1. Configure o agente SNMP do pacote net-snmp (snmpd). Use configurações para SNMPv2 (baseado em comunidades somente). Use as configurações abaixo: - comunidade de leitura em todos os objetos: ucb - comunidade de escrita em todos os objetos: computacao - sysContact para o sistema: <nome_do_aluno> Note que a configuração do agente pode ser feita através da edição direta do arquivo de configuração ou usando o comando “snmpconf”. Inicie o agente. 2. Use snmpget para testar o agente usando SNMPv2c. Obtenha: sysContact sysName Se necessário, use o comando man <nome do comando SNMP> para saber mais detalhes da sintaxe do comando.
  35. 3. Use os comandos snmpgetbulk e snmptable para obter a tabela de interfaces do sistema do agente. 4. Configure o recebedor de traps (snmptrapd) para receber as traps e coloca-las num arquivo de texto. 5. Envie traps com o comando snmptrap. Verifique seu registro na estação onde foi configurado o recebedor. 6. Existem alguns agentes de teste na Internet. Use-os para obter informações: MG-Soft (somente SNMPv3): obter em http://www.mg-soft.com/snmpv3.html#SNMPv3ACCESS NET-SNMP: test.net-snmp.org