SNMPV2c
_______




SNMPv1 ve V2c arasindaki tek fark SNMP MESAJLARIDIR !

Üstelik bir iki tane farkli mesaj !


Manager ve Agent arasi gelip giden SNMPv2c mesajlar sunlardir :


GetRequest
GetNextRequest
GetResponse
SetRequest
GetBulkRequest
InformRequest
SNMPv2-Trap



Burda su asagidaki 3 tanesini açiklamamiz gerekir.



-> GetBulkRequest

-> InformRequest ve SNMPv2-Trap



V1 deki Get-Next-Request mesajini hatirliyor musunuz ?

Hali hazirda bir sorgu yapmissak,
ve hemen sonra Get-Next-Request tusuna basmissak
bir sonraki OID yi sorguluyorduk.

GetBulkRequest ile TOPLU sorgulama yapilir.
Yani Get-Next-Request gibi bir tane degil,
bizim belirledigimiz kadar OID sorgusu yapilir.



Mesela Fa0/0 ile ilgili

Up/Down Olma durumu
IP adresi
NetMask i
vb bilgilerin


bir çogunun toplu olarak sorulmasi gibi.


Ama V1 ile V2c arasindaki en önemli fark ise InformRequest mesajidir.


InformRequest ise V1 de ki TRAP in aynisidir.

Tek farki Manager bu bilgiyi alinca bunu teyid eder.


SNMPv2-Trap ise V1 deki TRAP in aynisidir.

Sadece V2c packeti içinde gelir.

Yani SNMPV2c kullaniyoruz diye illaki Inform kullanmak zorunda degiliz.

Istersek V2c içinde TRAP kullanabiliriz.


Burda sunu bilmekde yarar var :

TRAP ler V1,V2c ve V3 de kullanilabilirler.

Ancak Inform lar ise V1 de kullanilamazlar.


En belirgin iki fark bunlardir.

Önce GetBulkRequest ile ilgili bir örnek yapalim :

Yine topolojimiz ayni olsun.


R1 ---- Switch --- Win7


Kod:
R1#
conf t
int g0/0
ip add 10.0.0.1 255.0.0.0
no sh

exit

conf t
snmp-server community ciscotr rw


Yaptim ve zaten bu komut ile hem V1 hemde V2c enable oldu.

Simdi ise Win7 üzderindeki SNMP yazilima gidip V2c için ayarlari yaptim.

Burda sadece V2c seçtim.

Ve GET-BULK-REQUEST tusuna basarsam

üzerindeki bulundugum OID den sonra

kaç tanesini istedigimi belirledim.

MAX-REPETITIONS = 4 yaptim.


Sonra

MIB Sözlügüm içindeki

sysDEscr
SysObjectID
sysUpTime
SysContact
SysName
SysLocation
sysServices


yazan yere geldim.


sysDescr üzerindeyken GET-BULK-REQUEST tusuna bastim.

Ve MAX-REPETITIONS = 4 olarak belirledigim için


sysDEscr
SysObjectID
sysUpTime
SysContact


Bu 4 OID için sorguda bulundu ve cevaplari geldi !


***


Simdide TRAPS/INFORMS olayina bakalim :

Bunu R1 de ayarlamamiz gerekir.


R1 üzerinde neler yaptigimizi hatirlayalim Version 1 için :

Önce TRAP gönderme islemini Enable etmistik.

Yine aynisini yapalim.


Kod:
CONF T 
SNMP-SERVER ENABLE TRAP


Bu komut R1 in hem TRAP hemde INFORMS göndermesini AKTIF HALE getirir!


Önceden söyle bir komut varmis :

Kod:

CONF T
SNMP-SERVER ENABLE INFORMS

bUNUNla INFORMS göndermesi aktif edilirmis.

Artik bu komut çalismiyor.

V1 de kullanilan

SNMP-SERVER ENABLE TRAP

komutu ikisinide aktif ediyor.

Ancak yinede bu komut yeterli degildi !


Simdi Hem kime gönderecegimize karar vericez,

hemde TRAP mi INFORM u göndericez onu belirticez :


Kod:
CONF T
snmp-server host 10.0.0.10 traps version 2c ciscotr

ile MANAGER a Version 1 deki TRAP lerin aynisini göndeririz.

Tek farki V2c paketi içinde gider.

Istersek :

Kod:

conf t
snmp-server host 10.0.0.10 informs version 2c ciscotr
ile ise INFORMS göndeririz.

Burda version belirtmemiz gerekir.

Çünkü Win7 üzerindeki Manager ona göre ayarlandi.

Yani Manager ve AGENT ayni VErsion u kullanmak zorundalar.

SNMPv1 makalesinde yazmamiza gerek yoktu.
Çünkü version belirtmezsek default olan Version 1 dir.





Kisaca :


Kod:
conf t
snmp-server enable traps
snmp-server host 10.0.0.10 informs version 2c ciscotr



yaptim ve Win7 deki SNMP Yazilimina gidip TRAP leri bekledim.


R1 den INFORM-REQUEST mesajlari geldi ( Syslog açik ya )

Win7 ise GET-RESPONSE ile ALDIM anlaminda teyid etti.





SNMPv2c bitirmeden önce

CPU ve MEMORY ile ilgili birer tane örnek yapalim :
__________________________________________________ ________________




Hatirlayacak olursak

Cisco cihazlarimizidada CPU ve MEMORY vardi.


Su komutlar ile

SHOW PROCESSES -> Suan aktif islemler
SHOW PROCESSES CPU -> Hangi islem ne kadar CPU kullaniyor
SHOW PROCESES MEMORY -> Memory durumu

Hakkinda bilgiler alabiliyorduk.




MEsela ben evde internete baglanmak için

kullandigim Cisco Router üzerinde :


Kod:
MCyagli#sh proc cpu | inc CPU
CPU utilization for five seconds: 8%/3%; one minute: 8%; five minutes: 11%

Komutu ile CPU nun ne kadarinin kullanildigina bakiyorum arasira.


Istersek CPU kullanimi ile ilgili bilgilerin
SNMP ile Manager a gelmesini saglayaibliriz.
( Agent bize TRAP ile bildirsin )


CPU KUllanimi ile ilgili bir örnek yapalim



Mesela CPU muzun %77 sinde fazlasi kullanilirsa,
ve bu durum 7 saniyeden fazla sürerse,
Agent bize bunu bildirsin !

Ayni sekilde CPU kullanimi %66 nin altina düserse,
ve 6 saniye kadar böyle kalirsa,
Agent yine bize bilgi versin.




Kod:
CONF T

PROCESS CPU THRESHOLD TYPE TOTAL RISING 77 INTERVAL 7 FALLING 66 INTERVAL 6

SNMP-SERVER ENABLE TRAPS
SNMP-SERVER ENABLE TRAPS CPU THRESHOLD
SNMP-SERVER HOST 1.1.1.1 TRAPS CISCOTR




Memory ile ilgi örnek yapalim :




RAM in ne kadari kullaniliyor diye su komutu kullaniyorum :


Kod:
MCyagli#sh proc memory | inc Total
Total: 26564588, Used: 8587784, Free: 17976804
                                  8584984 Total
Total: 26564588
Used: 8587784
Free: 17976804

Bilgileri ile kullanilan RAM miktarini gördüm.


Total: 26564588 aslinda fiziksel yüklü RAM miktari degildir.

Allocated RAM disinda bize kalan kisimdir.



Kisaca burdan RAM in durumunu takip edebilirim.


Su iki seyi yapabiliriz :



1 - Zor durumlarda kullanilmak üzere MEMORY nin bir kismini rezerve edelim.
( Mesela Syslog Mesajlar için lazim olur bu alan )

2 - Bir de mevcut memory bizim belirledigimiz bir seviyenin altina düserse
Router bize SNMP TRAP göndersin.




1- Zor Durumlar için kenara Memory ayiralim :


Kod:
CONF T
MEMORY RESERVE CRITICAL 3000    

MEmory nin 3000 Kbyte lik bir kismi ayrilmis oldu zor günler için.


2- Belirli bir seviyenin altina düserse TRAP gelsin bize.


Kod:

CONF T
MEMORY FREE LOW-WATERMARK PROCESSOR 20000
MEMORY FREE LOW-WATERMARK IO 20000

Mesela ben bu evimde kullandigim Router üzerinde yaptim

hemen

*Mar 1 10:47:23: %SYS-4-FREEMEMLOW: Free Memory has dropped below low watermark
Pool: Processor Free: 13659764 freemem_lwm: 20480000



mesajini aldim


Sonra istersek bu syslog mesajlarini SNMP TRAP ile alabiliriz.


Kod:

CONF T
SNMP-SERVER ENABLE TRAPS
SNMP-SERVER ENABLE TRAPS SYSLOG
SNMP-SERVER HOST 1.1.1.1 TRAPS CISCOTR





Bundan sonraki konumuz SNMPV3 !