GERENCIAMENTO-OIDs

advertisement
GERENCIAMENTO DE
REDES
OIDs
Prof. Marcos Argachoy
OSI
Object
Identifier
Tree
Examine www.alvestrand.no/harald/objectid/top.html
Nomeação de Objetos
questão: como nomear cada possível objeto
padrão (protocolos, dados, outros..) em cada
possível padrão de rede??
resposta: ISO Object Identifier tree:
– nomeação hierarquica de todos os objetos
– cada ramificação tem um nome e um número
1.3.6.1.2.1.7.1
ISO
ISO-ident. Org.
US DoD
Internet
udpInDatagrams
UDP
MIB2
management
internet OBJECT IDENTIFIER ::= { iso org(3) dod(6) 1 }
directory OBJECT IDENTIFIER ::= { internet 1 }
mgmt OBJECT IDENTIFIER ::= { internet 2 }
experimental OBJECT IDENTIFIER ::= { internet 3 }
private OBJECT IDENTIFIER ::= { internet 4 }
MIB-II
MIB – RFC1213
-- groups in MIB-II
system
OBJECT IDENTIFIER ::= { mib-2 1 }
interfaces OBJECT IDENTIFIER ::= { mib-2 2 }
at
OBJECT IDENTIFIER ::= { mib-2 3 }
ip
OBJECT IDENTIFIER ::= { mib-2 4 }
icmp
OBJECT IDENTIFIER ::= { mib-2 5 }
tcp
OBJECT IDENTIFIER ::= { mib-2 6 }
udp
OBJECT IDENTIFIER ::= { mib-2 7 }
egp
OBJECT IDENTIFIER ::= { mib-2 8 }
-- historical
cmot
OBJECT IDENTIFIER ::= { mib-2 9 }
transmission OBJECT IDENTIFIER ::= { mib-2 10 }
snmp
OBJECT IDENTIFIER ::= { mib-2 11 }
MIBs - Exemplo
sysName OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"An administratively-assigned name for this
managed node. By convention, this is the node’s
fully-qualified domain name."
::= { system 5 }
MIBs - Nomenclatura
• Cláusula SYNTAX
INTEGER Um contador numérico de 32 bits. Pode representar, por exemplo, o
estado de uma interface de um orteador up (1), down (2) ou testing (3). O valor
zero (0) não deve ser usado de acordo com ao RFC 1155.
OCTET STRING Uma string de zero ou mais octetos geralmente usada para
representar strings de textos ou endereços físicos.
COUNTER Um contador com valor mínimo de 0 e máximo de 232 -1
(4.294.967.295). Quando um roteador é ligado ou reiniciado este valor começa
com 0, quando o valor máximo é alcançado a contagem é reiniciada com valor 0.
Pode ser usado para representar, por exemplo, octetos enviados e recebido em
uma interface.
OBJECT IDENTIFIER Uma string decimal separada por pontos que representa
um objeto gerenciado na árvore de objetos. Por exemplo, a Cisco é 1.3.6.1.4.1.9.
NULL Atualmente não utilizado pelo SNMP.
SEQUENCE Define listas que contém 0 ou mais tipos de dados ASN.1.
MIBs - Nomenclatura
• Cláusula SYNTAX
SEQUENCE OF Define um objeto gerenciado produzido de um tipo SEQUENCE
do ASN.1.
IPADDRESS Representa um endereço Ipv4 de 32 bits.
NETWORKADDRESS O mesmo do IpAddress, mas pode representar diferentes
endereços de redes.
GAUGE Um contador com valor mínimo de 0 e máximo de 232 -1
(4.294.967.295). Diferente do COUNTER ele pode incrementar ou decrementar,
mas nunca pode exceder o valor máximo. A velocidade de uma interface de um
roteador é medida pelo GAUGE.
TIMETICKS Um contador com valor mínimo de 0 e máximo de 232 -1
(4.294.967.295). Usado para medidas de tempo em centenas de segundos. O
tempo de UpTime de um roteador é medido com este valor.
OPAQUE Permite qualquer notação ASN.1 codificado como OCTET
STRING.
MIBs - Nomenclatura
• Cláusula SYNTAX SMIv2
INTEGER32 O mesmo do INTEGER.
COUNTER32 O mesmo de COUNTER;
GAUGE32 O mesmo de GAUGE.
UNSIGNED32 Representa valores decimais entre de 0 até 232 -1
(4.294.967.295).
COUNTER64 Similar ao COUNTER32, valor mínimo de 0 e máximo de
264 -1 (18.446.744.073.709.551.615). É ideal em situações onde COUNTER32
atinge seu valor máximo em um curto intervalo de tempo.
BITS Uma enumeração não negativa chamada bits.
MIBs - Nomenclatura
•
Cláusula ACCESS
– not-accessible: não permite nenhuma operação pelo
gerenciador
– accessible-for-notify: o objeto é acessível apenas através de
uma notificação
– read-only: acesso somente para leitura
– read-write: acesso de leitura e escrita
– read-create: acesso para leitura, escrita e criação de nova
instância
•
Cláusula STATUS
– Mandatory /current: objeto válido no padrão atual
– obsolete: objeto não deve ser implementado
– deprecated: objeto antigo, mas pode ser implementado para
interoperabilidade
MIBs - Exemplo
sysLocation OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The physical location of this node (e.g.,
‘telephone closet, 3rd floor’)."
::= { system 6 }
MIBs - Exemplo
sysUpTime OBJECT-TYPE
SYNTAX TimeTicks
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 }
MIBs - Exemplo
sysContact OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
ACCESS read-write STATUS mandatory
DESCRIPTION
"The textual identification of the contact person
for this managed node, together with information
on how to contact this person."
::= { system 4 }
MIBs - Exemplo
ipAddrTable OBJECT-TYPE
SYNTAX SEQUENCE OF IpAddrEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION
"The table of addressing information
relevant to this entity's IP addresses."
::= { ip 20 }
MIBs - Exemplo
ifDescr OBJECT-TYPE
SYNTAX DisplayString (SIZE (0..255))
ACCESS read-only
STATUS mandatory
DESCRIPTION
"A textual string containing information about the
interface. This string should include the name of
the manufacturer, the product name and the version
of the hardware interface."
::= { ifEntry 2 }
MIBs - Exemplo
ifSpeed OBJECT-TYPE
SYNTAX Gauge
ACCESS read-only
STATUS mandatory
DESCRIPTION
"An estimate of the interface's current bandwidth in bits per
second. For interfaces which do not vary in bandwidth
or for those where no accurate estimation can be made,
this object should contain the nominal bandwidth."
::= { ifEntry 5 }
MIBs - Exemplo
ifPhysAddress OBJECT-TYPE
SYNTAX PhysAddress
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The interface's address at the protocol layer
immediately `below' the network layer in the
protocol stack. For interfaces which do not have
such an address (e.g., a serial line), this object
should contain an octet string of zero length."
::= { ifEntry 6 }
MIBs - Exemplo
ifInErrors OBJECT-TYPE
SYNTAX Counter
ACCESS read-only
STATUS mandatory
DESCRIPTION
"The number of inbound packets that contained
errors preventing them from being deliverable to
a higher-layer protocol."
::= { ifEntry 14 }
Exemplo de Acesso a Tabelas
Tabela de Endereços IP de uma Máquina:
ipAddrTable::= SEQUENCE of IpAddrEntry
IpAddrEntry ::= SEQUENCE {
ipAdEntAddr
IpAddress,
ipAdEntIfIndex
INTEGER,
ipAdEntNetmask
IpAddress,
ipAdEntBcastAddr
IpAddress,
ipAdEntReasmMaxSize INTEGER (0..65535)
}
ipAddrTable = 1.3.6.1.2.1.4.20
ipAddrEntry = {ipAddrTable 1}
ipAdEntBcastAddr = {ipAddrEntry 4}
Para acessar o endereço de broadcast da interface com endereço IP 128.10.2.3, usa-se
o seguinte identificador de objeto na mensagem SNMP:
1.3.6.1.2.1.4.20.1.4.128.10.2.3
SNMP - Base de Informação
– TcpConnEntry ::= SEQUENCE {
tcpConnState INTEGER,
tcpConnLocalAddress IpAddress,
tcpConnLocalPort INTEGER (0..65535),
tcpConnRemAddress IpAddress,
tcpConnRemPort INTEGER (0..65535)}
MIBs - Exemplo
tcpConnTable OBJECT-TYPE
SYNTAX SEQUENCE OF TcpConnEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION “Contém informações sobre
conexões TCP”
::= { tcp 13 }
MIBs - Exemplo
tcpConnEntry OBJECT-TYPE
SYNTAX TcpConnEntry
ACCESS not-accessible
STATUS mandatory
DESCRIPTION “Contém informações sobre uma
conexão TCP”
INDEX
{tcpConnLocalAddress,
tcpConnLocalPort,
tcpConnRemAddress,
tcpConnRemPort}
::= {tcpConnTable 1}
Enterprise MIBs
• Fabricantes de equipamentos e sistemas podem
acrescentar informações de seu interesse específico
embaxio do ramo “private” da árvore de nomeação
iso (1)
org (3)
dod (6)
internet (1)
private (4)
enterprises (1)
ibm (2) acc (5) cisco (9) hp(11)
3com(43) at&t(74) .............
MIBs - Exemplo
ciscoDot11AssociationMIB MODULE-IDENTITY
LAST-UPDATED "200701050000Z"
ORGANIZATION "Cisco Systems Inc."
CONTACT-INFO
"
Cisco Systems
Customer Service
Postal: 170 West Tasman Drive,
San Jose CA 95134-1706.
USA
Tel: +1 800 553-NETS
E-mail: cs-dot11@cisco.com"
MIBs - Exemplo
cDot11ActiveDevicesEntry OBJECT-TYPE
SYNTAX CDot11ActiveDevicesEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry represents a currently active device
associated with this device. These active devices
include: wireless clients, repeaters, and bridges."
INDEX
{ ifIndex }
::= { cDot11ActiveDevicesTable 1 }
CDot11ActiveDevicesEntry ::=
SEQUENCE {
cDot11ActiveWirelessClients Gauge32,
cDot11ActiveBridges
Gauge32,
cDot11ActiveRepeaters
Gauge32
}
MIBs - Exemplo
cDot11ActiveWirelessClients OBJECT-TYPE
SYNTAX Gauge32 (0..2007)
UNITS
"Device"
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This is the number of wireless clients
currently associating with this device on this
interface."
::= { cDot11ActiveDevicesEntry 1 }
MIBs - Exemplo
assocAddress OBJECT-TYPE
SYNTAX
MacAddress
MAX-ACCESS read-only
STATUS
current
DESCRIPTION
"MAC address of a Client associated with the Access Point.
If the association is pending (that is, the Client is scanning,
authenticating or associating), assocAddress contains the
MAC address of that Client with the group bit set to indicate
that the Access Point is aware of the presence of that Client.
The other objects of the entry will be updated based on the
information extracted from the received Probe Requests."
::= { assocEntry 2 }
MIBs - Exemplo
Node definitions
-- 1.3.6.1.4.1.674
dell OBJECT IDENTIFIER ::= { enterprises 674 }
-- 1.3.6.1.4.1.674.10893
storage OBJECT IDENTIFIER ::= { dell 10893 }
-- 1.3.6.1.4.1.674.10893.1
software OBJECT IDENTIFIER ::= { storage 1 }
MIBs - Exemplo
Object identifiers--
a3Com
OBJECT IDENTIFIER ::= { enterprises 43
}switchingSystems-mib
OBJECT IDENTIFIER ::= { a3Com 29 }
switchingSystemsMibGroups
OBJECT IDENTIFIER ::= { switchingSystems-mib 4
}switchingSystemsFddiMibGroups
OBJECT IDENTIFIER ::= { switchingSystems-mib 10 }
Download