SNMP (lyhenne sanoista Simple Network Management Protocol) on TCP/IP-verkkojen hallinnassa käytettävä tietoliikenneprotokolla. Protokollan avulla voidaan kysellä verkossa olevan laitteen tilaa tai laite voi itsenäisesti antaa hälytyksiä. SNMP määriteltiin ensimmäisen kerran vuonna 1988.

Laitteen tiedot kuvataan MIB:ssä (Management Information Base).

Protokollan laajennuksia ovat AgentX ja SMUX.

Protokolla (versio 1) muokkaa

Protokollassa on neljänlaisia viestejä:

  1. GET, palautetaan nimetty tieto
  2. GETNEXT, palautetaan seuraava tieto (voidaan käydä kaikki tiedot läpi järjestyksessä)
  3. SET, muutetaan tietoa
  4. TRAP, raportoidaan muuttuneesta tilanteesta, esimerkiksi hälytys

Standardointi muokkaa

SNMP (versio 1) määritellään RFC-dokumenteissa:

  • RFC 1065 - Structure and identification of management information for TCP/IP-based internets
  • RFC 1066 - Management information base for network management of TCP/IP-based internets
  • RFC 1067 - A simple network management protocol

SNMP käyttää UDP-portteja 161 ja 162. Porttia 161 käytetään kyselyihin ja porttia 162 hälytyksiin.

SNMP-protokollasta määriteltiin myös versio 2, mutta se ei saanut suosiota. Nyt on määritelty myös kolmas versio SNMPv3, jossa on mm. salaukseen perustuva tietoturva sisäänrakennettuna. Tällä hetkellä (2004) SNMPv3 on yleistymässä, mutta alkuperäinen SNMP on yleisempi.

SNMPv3 määritellään RFC-dokumenteissa:

Esimerkki muokkaa

Seuraavassa komennolla snmpwalk listataan MIB:n osa system järjestelmästä punch:

 '''snmpwalk -c public punch system'''
 SNMPv2-MIB::sysDescr.0 = STRING: Cisco Internetwork Operating... 
 SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.9.1.187
 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (835747999) 96 days, 17:31:19.99
 SNMPv2-MIB::sysContact.0 = STRING: wikiuser
 SNMPv2-MIB::sysName.0 = STRING: punch
 SNMPv2-MIB::sysLocation.0 = STRING: test
 SNMPv2-MIB::sysServices.0 = INTEGER: 78
 SNMPv2-MIB::sysORLastChange.0 = Timeticks: (0) 0:00:00.00