Zarządzanie sieciami komputerowymi - wprowadzenie
Model zarządzania SNMP SNMP standardowy protokół zarządzania w sieci Internet stosowany w dużych sieciach IP (alternatywa logowanie i praca zdalna w każdej stacji z osobna ) aplikacja zarządzania odpytywanie SNMP SNMP urządzenie agent urządzenie agent
SNMP (Simple Network Management Protocol) protokół zarządzania siecią MIB (ang. Management Information Base) zbiór obiektów zarządzania Stopień, w jakim można zarządzać urządzeniem lub je monitorować, zależy od zawartości bazy MIB jego agenta. ASN.1 (ang. Abstract Syntax Notation One) notacja do definiowania typów danych, wykorzystywana przy tworzeniu bazy MIB BER (ang. Basic Encoding Rules) sposób kodowania informacji, używany przez SNMP Architektura zarządzania SNMP Zarządca w. aplikacji w. transportowa-udp w. sieciowa w. dostępu do sieci SNMP Agent SNMP w. aplikacji w. transportowa-udp w. sieciowa w. dostępu do sieci MIB
Szkielet bazy MIB <nazwa MIB> DEFINITIONS ::= BEGIN IMPORTS <definicje importowanych makr i typów> <definicje obiektów> END
Drzewo identyfikatorów obiektów OID (ang. Object Identifier) identyfikator obiektu zarządzania; określa lokalizację obiektu w drzewie root ccitt (0) iso (1) joint-iso-ccitt (2)... stnd (0) org (3) dod (6) internet (1) OID=1.3.6.1.2.100 mgmt (2)... fridge (100)
Przykład - baza MIB lodówki (SMIv1) FRIDGE-MIB DEFINITIONS ::= BEGIN IMPORTS OBJECT-TYPE FROM RFC-1212 mgmt FROM RFC1155-SMI; fridge OBJECT IDENTIFIER ::= {mgmt 100} onoff OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory "Status of the fridge (on or off)" ::= {fridge 1} shelftable OBJECT-TYPE SYNTAX SEQUENCE OF ShelfEntry ACCESS not-accessible STATUS mandatory "Fridge contents " ::= {fridge 2} shelfentry OBJECT-TYPE SYNTAX ShelfEntry ACCESS not-accessible STATUS mandatory "Represents a single shelf" INDEX {index} ::= {shelftable 1} typ ASN.1 obiekt prosty ShelfEntry ::= SEQUENCE { index INTEGER, content OCTET STRING } index OBJECT-TYPE SYNTAX INTEGER (1..5) ACCESS read-only STATUS mandatory "Shelf number; each value is unique" ::= {shelfentry 1} obiekt kolumnowy (tablica) content OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..20)) ACCESS read-only STATUS mandatory "shelf content" ::= {shelfentry 2} END
Przykład - SMIv2 FRIDGE-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, mgmt, Integer32 FROM SNMPv2-SMI OBJECT-GROUP, MODULE-COMPLIANCE FROM SNMPv2-CONF; fridgemib MODULE-IDENTITY LAST-UPDATED "200410041259Z" ORGANIZATION "IIPP" CONTACT-INFO "MIB designer" "Example MIB" ::= {fridge 4} fridgegroup OBJECT-GROUP OBJECTS {onoff, content} "A group of fridge management variables" ::= {fridge 1} fridgecompliance MODULE-COMPLIANCE "Object groups that an agent must implement to be compliant with this MIB" MODULE MANDATORY-GROUPS {fridgegroup} ::= {fridge 5} fridge OBJECT IDENTIFIER ::= {mgmt 100} onoff OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-write "Status of the fridge (on or off)" ::= {fridge 2} shelftable OBJECT-TYPE SYNTAX SEQUENCE OF ShelfEntry MAX-ACCESS not-accessible "Fridge contents" ::= {fridge 3} shelfentry OBJECT-TYPE SYNTAX ShelfEntry MAX-ACCESS not-accessible "Represents a single shelf" INDEX {index} ::= {shelftable 1} ShelfEntry ::= SEQUENCE { index Integer32, content OCTET STRING } index OBJECT-TYPE SYNTAX Integer32 (1..5) MAX-ACCESS not-accessible "Shelf number; each value is unique" ::= {shelfentry 1} content OBJECT-TYPE SYNTAX OCTET STRING (SIZE (0..20)) MAX-ACCESS read-only "shelf content" ::= {shelfentry 2} END
Przykład różnice makro OBJECT-GROUP definiuje grupy powiązanych ze sobą obiektów; makro MODULE-COMPLIANCE określa grupy obiektów, które agent musi implementować, aby pozostać w zgodzie ze specyfikacją danej bazy MIB. Odpowiada to wartościom mandatory i optional klauzuli STATUS w SMIv1; zmiany w definicji makra OBJECT-TYPE klauzula MAX-ACCESS wszystkie poziomy dostępu, od najniższego do określonego w klauzuli STATUS current (aktualny), deprecated (przestarzały, ale jeszcze istnieje w bazie MIB), obsolete (przestarzały, już nie istnieje w bazie MIB)
żaden z powyższych obiektów nie posiada wartości - są to definicje zmiennych zarządzania wartości nadawane są instancjom obiektów instancja powstaje przez złożenie identyfikatora obiektu z właściwym przyrostkiem (0 dla obiektów skalarnych, wartość z kolumny indeksującej dla obiektów) Przykład identyfikatory obiektów mgmt... fridge (100) OID = 1.3.6.1.2.100 lub iso.org.dod.internet.mgmt.fridge 1.3.6.1.2.100.1 onoff (1) shelftable (2) 1.3.6.1.2.100.2 1.3.6.1.2.100.2.1.1 shelfentry (1)... index (1) content (2) 1.3.6.1.2.100.2.1 1.3.6.1.2.100.2.1.2
Przykład zawartość a baza MIB jej agenta Lodówka włączona (obiekt onoff = 1) index 1 2 3 content milk butter milk OID 1.3.6.1.2.100.1.0 1.3.6.1.2.100.2.1.1.1 1.3.6.1.2.100.2.1.2.1 1.3.6.1.2.100.2.1.1.2... value 1 1 milk???... sufiks = 0 dla obiektów prostych sufiks = wartość z kolumny indeksującej dla obiektów będących elementami tablic
MIB-2 standardowa baza MIB protokołu SNMPv1 dla urządzeń sieciowych zdefiniowana w dokumencie RFC1213 prefiks 1.3.6.1.2.1 (iso.org.dod.internet.mgmt.mib-2) obejmuje następujące grupy: 1 system (opis lokalnego systemu) 2 interfaces (opis portów sprzętowych urządzenia) 3 at (tablica odwzorowań protokołu ARP) 4 ip (informacje warstwy sieciowej, w tym tablica tras) 5 icmp (statystyki protokołu ICMP) 6 tcp (parametry i statystyki protokołu TCP) 7 udp (parametry i statystyki protokołu UDP, ) 8 egp (parametry i statystyki protokołu EGP-3) 11 snmp (statystyki protokołu SNMP) baza podlegała aktualizacjom dla wersji 2c i 3 protokołu SNMP
Porządek leksykograficzny porządek leksykograficzny definiuje w zbiorze identyfikatorów obiektów relację całkowitego porządku Przykłady: 1.2 > 1.1 2.100 > 2.99 (OID, którego podidentyfikator na jednej z pozycji ma wartość większą niż podidentyfikator drugego OID na tej samej pozycji, jest większy) 1.1.0 > 1.1 (identyfikator z większą liczbą podidentyfikatorów jest większy)