Home Index Search Links About Us
[LinuxFocus Image]
[Navegation Bar]
  News   Archives   Companies   Tips  

Linux'la İletişimağı İşletimi ve Gözlemlenimi: Günümüz'ün her yere yaygın iletişimağlarının işletimi için bazı kotarıcı elaygıtları

Yazar David Guerrero

Çeviri: Arzu Semra Baltacı


Giriş

SNMP nedir?

Güvenlikle İlgilenim

MIB nedir?

SNMP'nin Geleceği Nedir?

Linux'la SNMP

MRTG: Çoklu Yolverici Trafik Çizicisi

Diğer Programlar

Sonuçlar

Bu yazı ilk olarak Linux Jornal'da yayınlanmıştır. Yazarın izniyle, çevrilerek, buraya da alınmaktadır.

Giriş

Tüm hesaplama olaylarinin iletişim ağı kavramı çevresinde dolaşır olduğu günümüzde, sistem yönetmenlerinin işi gittikçe altından kalkılmaz hale gelmektedir. Router, hub, sunumcu gibi kaynakların ve iletişimağındaki her kritik aygıtın kullanıma hazır tutulması yönetmenin temel görevi olarak ortaya çıkmaktadır.

İşletmenlerin iletişimağı aygıtlarını denetim altında tutmaları için çok sayıda neden bulunmaktadır. Bunlar arasında, bangenişliği kullanımı, bağlantıların yöneylem durumu, şişeboyunları, kablolama ya da aygıtlar arası bilgi aktarımındaki sorunlar gibi sıralanabilirler. İletişimağı etkinliğinin denetim altında tutulması da güvenlik sorunlarının ve olumsuz davranışların saptanması için iyi bir başlangış noktası oluştururlar.

Birçpk durumda, bir kuruluşa ait iletişimağında uzaktaki iletişimağlarına (WAN: Geniş Alan İletişimağı) ya da Internet'e bağlantılar bulunur ve bu bağlantıların parasal götürülerinin belirlenmesinde bütünüyle trafik hacmı taban alınabilir. Dolayısıilya bu bağlantılar üzerinden yapılan iletişimin istatistiğinin tutulması büyük önem kazanİr. Bu X.25 bağlantılarının hala yaygın olduğu Avrupa'da çok yaygın olarak karşılaşılan bir görevdir. Bu bağlantılar, gönderilen ve alınan paketler tabanında faturalandırılırlar.

Noktadan Noktaya veya Çerãeve Gecikmeli türden bağlantılar genellikle düz bir tutar üzerinden faturalandırılırlar. Bunlarda telco denetim altında tutulması önemli olan bir bandgenişliği güvencesi ister.

Bu yazının son bölümünde, yönlendirici (router) arayüzlerindeki tafiğin denetim altında tutulmasına odaklanarak, bu bilginin büyük bir grafiksel gösterilimiyle birlikte sunacağız. Bu, diğer tür bilgilerin denetim altında tutulmasında kullanılmak üzere de kolayca değiştirilebilir bir yapıdadır.

SNMP nedir?

Bu gereksinimlerin tümüne yanıt olarak Basit İletişimağı İşletim Antlaşması (SNMP) adlı bir protokol verilebilir. 80'lerde tasarlanan SNMP'nün ilkbaştaki amacı farklı türden iletişimağlarının işletiminin, ıletişimağı'nda çok küçük gerilmelere neden olabilecek basit bir tasarımla işletilmesiydi.

SNMP, TCP/IP aktarım düzey protokollerini kullanarak uygulama düzeyinde çalışır. Dolayısıyla, altta yatan iletişimağı donanımı güzardı edebilir. Bu, işletim yazılımının IP'yi kullandığı ve bu yüzden de, yalnızca kendi fiziksel iletişimağına bağlı olanları değil, herhangi bir bağlı iletişimağındaki aygıtları denetleyebileceği anlamına gelir. Bunun sakıncalı yanları da vardır. Sözgelimi, IP yönlendiriminin iki aygıt arasınmda doğru çalışmaması durumunda erekteki aygıta ulaşıp onu denetlemek ya da yeniden biçimlendirmek olanaksızdır.

SNMP mimarisinde iki ana öge bulunmaktadır: ajan ve yönetici. O bir sunumcu - istemci mimarisi olup ajan sunumcuya yönetici de istemciye karşılık gelmektedir.

Ajan denetim altında tutulan ya da yönetilen iletişimağı düğümlerinden her birinde çalışan bir programdır. O, biçimlendirilmiş yapı içindeki ögelerin tümüne bir arayüz sağlar. Bu ögeler, İşletim Bilgi Tabanı (MIB: Management Information Base) adını taşıiyan ve daha sonra açİklanacak olan bir veri yapısı içinde depolanırlar. Bu, yönetilecek bilgiyi alıkoyduğu sürece sunumcu tarafı olup istemciden güdüm bekler.

Yönetici iletişimağının denetlenen istasyonunda ãalışan bir yazılım olup rolü farklı iletişimağında çalışmakta olan ajanlarla iletişim kurup iç verisi için statistik veri toplamaktır. O, iletişimin istemci yanıdır.

SNMP güdüm takımı içinde trap adlı özel bir güdüm bulunmaktadır. Bu güdüm ajanlara, yöneticiye, hata, kapatım gibi olaylardan haberdar olması için davetsiz veri gönederebilme yetkisi sağlar.

Temelde, SNMP, gerçekleştirdiği tüm işlemler getir-depola ilkesi çerçevesi içinde kaldığı sürece çok basit bir protokoldür ve bu durum az sayıda güdüm içeren bir yağıyla çalışma olanağı vermektedir. Bir işletmen bir ajan üzerinde yalnızca iki farklı işlem gerçekleştirebilir: ajanın MIB'indeki bir değişkenin değerini ister ya da onu ayarlar. Bu iki işlem al istemi ve ayarla istemi olarak bilinir. Yalnızca ajan tarafından kullanılabilen ve al-yanıtı olarak bilinen ve al-istemine yanıt olan bir güdüm de bulunmaktadır.

Protokolün genişletilebilirliği bütünüyle MIB'in yeni şeyler depolayabilme sığasıyla ilişkilidir. Eğer bir üretici router gibi bir aygıta yeni güdümler eklemek isterse, onun veritabanına (MIB) uygun değişkenler eklemelidir.

Hemen hemen tüm üreticiler kendilerinin, router, hub, işletim sistemi aygıtlarında SNMP ajanlarının sürümlerini devreye sokarlar. Linux da bunun dışında değildir. Linux için özgürce erişilebilen SNMP ajanları Internet'te bulunabilir.

Güvenlikle İlgilenim

SNMP kökenlileştirme çizemleri (authentication schemes) için çok az şey sunar. O yalnızca bir iki geçişsözcüklü çizemi destekler. public, işletmenin değişken değerleri için istemde bulunmasına izin verir. private ise bu değerlerin atanmasına izin verir. SNMP'deki bu geçişsözcükleri communities olarak adlandırılır. Bir SNMP-işletimli iletişimağına bağlı olan her bir aygıt bu büyüklüklerin biçimlendirilmiş olmasını gerektirir.

Çok alışılmış olanı public community'nin "public"e private comunity'nin de "private"e ayarlanmasıdır. Ancak, bu değerlerin değiştirilmesi kuruluşunuzun güvenlik politikasını yansıtması açısından çok önemlidir

MIB Nedir?

SNMP, protokol tarafından yönetilen bilgiye farklı bir ölçüt tanımlar.Bu ölçüt bilgiyi networkteki bir aygıt içinde korunan ve buradaki işlemlere izin verilmiş olarak tanımlar.Bilgi, bir ağaç yapısında inşa edilmiştir.Ve her değişkene ulaşmak için tek bir yol vardır.Yapılandırılmış bu ağaç Yönetim Bilgi Tabanı (Management Informatıon Base) (MIB) olarak adlandırılır.Ve birçok RFC'de belgelendirilmiştir.

TCP/ IP 'in son sürümü MIB-II 'dır ve RFC-1213 olarak tanımlanır.Bilgiyi TCP/ IP aygıtları 8 katagoride sahip olabilecek şekilde böler.(1.tabloda görüldüğü gibi)Bu bilgide olan her değişken bu gruplardan birine girer.

Bilgileri
Çizelge 1. TCP/IP Bilgileri
Kategori
sistem Konak ya da yolverici işletim sistem bilgileri
arayüzler İletişimağı arayüzleri bilgileri
adres-çevirisi Adres çeviri bilgileri
ip IP Antlaşma Bilgileri
icmp ICMP Antlaşma Bilgileri
tcp TCP Antlaşma Bilgileri
udp UDP Antlaşma Bilgileri
egp Dış Geçityolu Antlaşma Bilgileri

MIB'in belirli bir müfredat hakkındaki tanımı müfredatın sahip olduğu bilgiyi de özelleştirir.Genelde MIB'in müfredatı yalnız sayıları depolar fakat onlar dizileri veya tablolar gibi daha karışık yapılarıda ihtiva eder.MIB'deki müfredat nesne(object) olarak da adlandırılır.Nesneler MIB ağacının yaprak boğumlarıdır, fakat bir nesne birden çok örneğe sahiptir.Mesela; bir tablo nesnesi.Bir object'in sahip olduğu değeri (value) bulmak için örnek sayısına sayı eklenir.Ne zaman ki bir object için bir örnek var olursa bu 0 örnek demektir.

Örneğin,interface kategorisindeki ifnumber nesnesi bir sayı içerir.Bu sayı bu aygıtta olan ve ayrıca  interface numaralarını içeren bir sayıdır.Fakat IP kategorisinden ipRoutingTable nesnesi aygıtın takip edilecek çizelgesini içerir.

Bir nesnenin değerini (value) yeniden elde etmek için örneğin numarasını kullanmayı unutmatın.Bu halde ,bir takip edici (Router) içindeki interfaces sayısı ifNumber.0 adlı örnekle görülebilir.

Bir tablo nesnesi halinde; tablonun indeksi özel bir örneği belirtmek için son sayı gibi kullanılır.(Tablonun sırası).

MIB değişkenini tanımlamak ve belirtmek için kullanılan bir başka ölçüte de yönetim bilgisinin yapısı denir. (Structure of management Information) (SIM). ISO dillerinden birinde yazılmış olan MIB değikenlerini ASN.1 diye adlandırır.Bu değişkenlerin formunu ve içeriğini şüpheden uzak , açıklayıcı yapar.

ISO isim boşluğu diğer ölçüt kurumları için olan diğer ağaçlarla birlikte global isim boşluğu içerisindedir.ISO isim boşluğuyla birlikte MIB bilgisi için özel bir ağaç vardır.Ağacın bu MIB tarafında bütün protokollerden ve uygulamalardan olan nesneler(object) için alan  vardır.Böylece onların bütün bilgileri açıklayıcı bir şekilde temsil edilir.

Şekil 1.'de TCP/ IP isim boşluğu IAB.'ın mgnt  isim boşluğunun hemen altındadır.Ayrıca bu yapı her seviye için bir sayı da belirtir.

Şekil 1. TCP/IP Düzenleme Ağacı

Nesnenin MIB'de olması için hemen hemen bütün yazılımın temsili noktaya (leading dot(root)) ihtiyaç duyduğunun bilinmesi önemlidirEğer leading dot 'ınız yoksa size  .iso.org.dod.internet.mgmt.mib-2. 'den farklı bir yol sunacaktır.

Bu halde "Interfaces" kategorisinden ifnumber nesnesi şöyle adlandırılır:

.iso.org.dod.internet.mgmt.mib-2.interfaces.ifnumber
veya sayısal eşdeğeri şöyledir:
.1.3.6.1.2.1.2.1
ve örnek olarak:
.iso.org.dod.internet.mgmt.mib-2.interfaces.ifnumber.0
ya da onun sayısal eşdeğeri şu şekildedir:
.1.3.6.1.2.1.2.1.0

Satıcılar yarattıkça eklenebilen MIB'ler bu ağaca eklenebilir ve uygun RFC'ler kurulabilir

SNMP'nin Geleceği Nedir?

SNMPv2 denilen yeni bir tür geliştirildi.Bu; gerçek protokolun güvenlik eksiğine hitap ediyor ve gizlilik ,doğruluk üzerine odaklanıp kontrolü sağlıyor.Ayrıca daha karışık değişken belirtimlerine izin veriyor ve farklı güdümleri ihtiva ediyor.SNMPv2'nin sorunu ise SNMPv1'in aksine hala kabul edilmiş bir ölçüt olmayışıdır.Ayrıca yazılımın ve ajentanın SNMPv2 sürümünü bulmak yani yeni güdümlerinden yararlanmak oldukça zor.Gelecekte neler olacağı bilinmez...

Linux'la SNMP

En popüler SNMP paketi CMU-SNMP 'dir. Carnegie Mellon Üniversitesi tarafından şekillendirilmiş ;  Juergen Schoenwaelder ve Erik Schoenfelder tarafında Linux 'a kazandırılmıştır. SNMPv1 ölçütü ile tamamen uygun olup  SNMPv2'nin bazı yeni fonksiyonlarını içerir.

Dağıtım bazı yönetici aygıtlara (tool) sahiptir Ve bunlar komut satırı şeklinde SNMP ajentasını çalıştıran aletlere emirler gönderirler.Linux altında çalıştırmak üzere şekillendirilmiş bir SNMP ajenta programı da vardır.Bu, yöneticiye networküzerinde interface'ler , routing table gibi konuların statülerinin bilgilerini sunar.

CMU-SNMP 'nin getirdiği en önemli yeniliklerden biri de  SNMP C-API 'dir.Programcının dağıtımın network yeteneği hakkında daha karışık yönetici elaygıt (tool) yapmasına izin verir.

Linux sistem üzerine kurulum kolay fakat orjinal CMU dağıtımından biraz farklıdır.Dağııtm derlenmiş yönetici aygıtın (  the daemon, ve the API lıbrary) binary versiyonu ile gelir.

Öncelikle binary mi yoksa kaynak dağıtıcı mı alınacağına karar verilmelidir .Paketi internet üzerine kurmak kolaydır (Yandaki kaynaklara bakınız) Binary dağıtımı 2.0 Kernel serisini kullanır ve ELF tabanlıdır.Binary dağıtıcısının nasıl kullanılacağını anlatacağız.Binary dağıtıcısının sadece güvenilen bölümlerden alınması virüsleri, Truva atı türünden saldırıları önlemede bir çözüm olabilir.

cmu-snmp-linux-3.2-bin.tar.gz dosyasını linux sistemdeki root dizini (/) içine koyun.Ve şu komutla sıkıştırın:

gunzip cmu-snmp-linux-3.2-bin.tar.gz

Sonra ; dağıtımı son durumuna getirmek için şu komutu kullanın:

tar xvf cmu-snmp-linux-3.2-bin.tar

Şu anda bütün kitaplıklar ve diğer yararlı elemanlar sisteminize yüklenmiş bulunmaktadır.the SNMP ajentası dosyasını(  /etc/snmpd.conf.) almak için şu komutun çalışırılması gerekir:

/tmp/cmu-snmp-linux-3.2/etc/installconf

bu seçeneklerle birlikte:

/tmp/cmu-snmp-linux-3.2/etc/installconf -mini

Kullanacağınız password kamu toplumu olmalıdır.Şimdi yeni kurulmuş /etc/snmpd.conf biçimlendirim dosayasını yükleyebilirsiniz. Bu dosyadaki, ajan tarafından UDP portları için kullanılan değeri değiştirebilirsiniz. Ayrıca systemContact, systemLocation ve systemName değişkenlerini; network kartı ve PPP portunuz için interface hız parametresini de değiştirme imkanı var. En önemli işletim elaygıtları şöyledir:

Aldığınız en önemli yönetici aygıtlar şunlardır:

  • /usr/bin/snmpget MIB'nin networkteki (router veya hub gibi) bir ajentası için belirli bir değeri bulmak üzere tasarlanmıştır.
  • /usr/bin/snmpgetnext Bir MIB ağacı üzerinde ismini bilmeksizin bir sonraki nesneyi almayı sağlar.
  • /usr/bin/snmpset Uzaktaki bir ajentada değişkenleri kurmayı sağlar.
  • /usr/bin/snmpwalk Örneği özelleştirmeden bir bütün nesneyi veya nesneler serilerini çağırmayı sağlar.Table object'ler için kullanışlıdır.
  • /usr/bin/snmpnetstat
  • /usr/bin/snmptrapd Ajenta tarafından gönderilen tuzaklar (trap) içindir.
  • usr/bin/snmptest API sığasını ölçmek için kullanılan etkili bir aygıttır.

Ajan /usr/sbin/snmpd dizininin içindedir.

CMU-SNMP ayrıca /usr/lib/mib.txt.içindeki MIB dosyasını da yükler.Bu herhangi bir aygıttan isteyeceğimiz bilgiyi aramada da avantajlıdır.

Ajenta başlangıç zamanında başlamalıdır.Herhangi bir boot dosyanızın (/etc/rc.d/rc.local, örneğin) içindeki şu satırla kurulmalıdır:

/usr/sbin/snmpd -f ; echo 'starting snmpd'

Bir kere linux kutusunda çalışan SNMP ajentasını aldıktan sonra herhangi bir yönetici aygıtla onu deneyebilirsiniz.Öncelikle şunu girmeniz gerekir:

/usr/bin/snmpget -v 1 localhost public interfaces.ifNumber.0

Bu size bu sistemdeki iletişimağı arayüzleri sayısını verir ve:

/usr/bin/snmpwalk -v 1 localhost public system

MIB 'in alt kollarındaki bütün değerleri verir.. (Bu komutun ne yaptığını görmek için şekil 2 ye bakın.)

Figure 2
dragon:~$ /usr/bin/snmpwalk

usage: snmpwalk [-p ] host community [object-id]

dragon:~$ /usr/bin/snmpwalk  localhost public system

system.sysDescr.0 = "Linux version 2.0.24 (root@dragon) 
                     (gcc version 2.7.2) #6 Mon Nov 25 15:08:40 MET 1996"
system.sysObjectID.0 = OID: enterprises.tubs.ibr.linuxMIB
system.sysUpTime.0 = Timeticks: (39748002) 4 days, 14:24:40
system.sysContact.0 = "David Guerrero"
system.sysName.0 = "dragon "
system.sysLocation.0 = "Madrid (SPAIN)"
system.sysServices.0 = 72
system.sysORLastChange.0 = Timeticks: (39748006) 4 days, 14:24:40
system.sysORTable.sysOREntry.sysORID.1 = OID: enterprises.tubs.ibr.linuxMIB.linuxAgents.1
system.sysORTable.sysOREntry.sysORDescr.1 = "LINUX agent"
system.sysORTable.sysOREntry.sysORUpTime.1 = Timeticks: (39748007) 4 days, 14:24:40

dragon:~$

 
   

C-API ; /lib/libsnmp.so.3.1.'in içindedir.

En üst dosyaları şekildeki gibi kontrol edebilirsiniz:

  • /usr/include/snmp/snmp.h
  • /usr/include/snmp/snmp_impl.h
  • /usr/include/snmp/asn1.h
  • /usr/include/snmp/snmp_api.h

Daha fazla bilgiyi snmp_api(3) ve variables(5) elyordam sayfalarından bulabilirsiniz:

CMU C-API için bir Perl modeli de vardır.Ve kolaylıkla çağırıları Perl script içindeki kitaplıkta tamamlar.

MRTG: Çoklu Yolverici Trafik Çizicisi

MRTG ,Tobias Oetiker ve Dave Rand tarafından yazılmış avantajlı bir aygıttır. Grafiksel olarak SNMP ajentasının SNMP yönetimine getirdiği bilgidir. Gündelik hayatta iletişim arabirimlerindeki inbound ve outbound trafik hakkında GIF garfiklerini de içeren güzel HTML sayfaları hazırlar. Bu MIB 'nin bir nesnesine dırek olarak CMU-SNMP gibi komut satırı aygıtıyla ulaşma fikrini özetler.Routerları görüntülemek amacıyla internette bulduğum en kolay ve güçlü aygıt budur.

MRTG Perl 'de SNMP aygıt kodlusunu kullanır;böylece başka paketlere ihtiyaç kalmaz.Ana program GIF resimleri ve log işleminin daha hızlı olması için C'de yazlımıştır.Grafikler Thomas Boutell 'in (WWW FAD'nin yazarı)  GD kütüphanelerinin yardımıyla yapılmıştır.

MRTG'nin bir özelliği de güçlü şekillendirmesidir.Trafık,hata paketi,sistem yükü gibi olayları görüntülemektense SNMP değişkenini görüntülemek daha kolaydır.Başka bir programdan bilgi alıp buradaki bilgiyi desteklemekte olasıdır.Böylece SNMP'de olmayan monitör login bölümü ve diğer bazı bilgilerde kullanılabilir olur.

Ayrıca router'ınızın parçalarını izlemek için bazı aygıtlar sunar.Karakteristik özelliklerini açıp;taban biçiminde şekillendirilmiş dosya (base configuration file) oluşturur.Böylece ihtiyaçlarınızı karşılamış olur.

MRTG 'nin diğer ilginç yanıda sahip olduğu bilgi kapasitesidir.Bir bütünün detayları için 4 seviyede veri sunar.Bunlar: son 24 saatin,son haftanın,son ayın, trafiği ve yıllık grafiksel açıklamasıdır.Böylece statik olarak da bilgiye ulaşmış oluruz.Yığın halinde bilgi tabanı (database) sunmakla birlikte sağlamlaştırılmış bir algorıtm sunar; bu da disk alanını boşa harcamayı önlemiş olur.

Bu ayrıca bir ana sayfa oluşturup burada bir router'ın günlük detaylarını içeren GIF resimleri sunar.Böylece routerınzda neler olup biitiğini kısaca görebilirsiniz.Ana sayfayı ve detaylı sayfayı MRTG'deki 3. ve 4. şekillerde görebilirsiniz.


 
Şekil 3. Arayüz Ana Sayfası Şekil 4.Arayüz Ayrıntı Sayfası
Daha büyük olarak görmek için resimleri tıklayın
Şimdi de bir temel kurulum prosedürü görelim.Herşeyden önce MRTG dağıtıcısına ihtiyaç duyulur.En son sürümünün 2.1 olduğunu hatırlatmak yerinde  olur.(sayfa kenarında yeni sürümle ilgili URL'ye bakabilirsiniz)  
MRTG'yi derlemeden önce yüklemeniz gereken kütüphane GD grafik kütüphanesidir.( URL'si sayfa kenarında ayrıca mevcut) GD'nin en yeni sürümü olan 1.2 'yi derleme ve yüklemede bir sorun yaşamazsınız.Basitçe ;dağıtıcısını paketlemediğiniz dizinde "make" i çalıştırmanız yeterlidir,libgd.a adlı bir dosya gelir. olur.  Dosyayı  /usr/local/lib 'a yükleyin ve Bütün  .h dosyalarını /usr/local/include/gd. dizinine yükleyin. 

Şu anda GD'ye çalışır durumda sahip olmalısınız.MRTG paketini kuralım.Dağıtımı açın;../../common/January1998/Makefile 'ı yazın.GD kütüphanesini ,en üst dosyayı (header file) ve Perl 5.003 ü nerede bulacağını belirtin(genelde /usr/bin/perl veya /usr/local/bin/perl de bulabilirsiniz ).Değişkenler  GD_LIB,GD_INCLUDE ve perl üzerinden yapılır. 

Ana programı "make rateup" yazarak kurun.Derleme bittikten sonra make substitute' ye Perl yorumlayıcısına doğru yol vermek üzere girin.Perl yorumlayıcısı MRTG 'nin kullandığı perl yazılımındadır. 

İkilik sistemin en son varacağı yere bir sonraki dosyayı kopyalayın (mesela: /usr/local/mrtg) BER.pm; SNMP_Session.pm,mrtg ve rateup.Ayrıca bu bölgeye indexmaker ve cfgmaker gibi iki programda kopyalayabilirsiniz. 

Bütün programların çalıştırılabilir bit düzeni olduğunu varsayalım.Şu anda şekillendirilmiş basit bir dosya  kurabiliriz.bu dakikada routerınızda SNMPokuyucu girişine sahip olmanız gerekir.Cisco routerında buna izin veren şekillendirilmiş satırlar şunlardır. 

access-list 99 permit 193.147.0.8 
access-list 99 permit 193.147.0.9 
access-list 99 permit 193.147.0.130 
snmp-server community public RO 99
Bu sadece 99 giriş  listesindeki okunabilir isteklere izin verir.Parola olarak "public"(community) kullanılmalıdır.Eğer routerın  networkteki Read only  girişlerindeki bütün düğümlere izin vermek istiyorsanız şu şekilde bir satıra sahip olmanız gerekiyor 
snmp-server community public RO
Eğer başka bir marka routerınız varsa; SNMP girişine nasıl izin vereceğini bulmalısınız. 

Düzen sağlayıcı küçük parçalar şekillendirilmiş dosya taslaklarını hazırlar.Sizin yapacagınız sadece şu olayı işleve getirmek: 

cfgmaker <community>@<router-host-name or IP>
Örneğin: 
cfgmaker public@mec-router.rediris.es > mrtg.cfg
Böylece routerınızdaki bütün arayüzleri keşfetmiş oluyorsunuz.Dosyaya arayüzlerin özelleştirilmiş sayılarını, en yüksek hızlarını,ve tanımlamaları vs.  detaylı  sayfa içerisinde ihtiva edilmek üzere HTML tagları ile yazmalısınızHTML layoutunu uygun bir dille kopyalamak elinizde.Şimdi size benim routerdan bir arayüz çıktısını sunacağım. 
 
Şekil 5
Target[mec-router.1]: 1:public@mec-router MaxBytes[mec-router.1]: 1250000 Title[mec-router.1]: mec-router.rediris.es (mec-router.mec.es): Ethernet0 PageTop[mec-router.1]: <H1>Estadisticas del puerto Ethernet0<BR> Red del MEC (MECNET)</H1> <TABLE> <TR><TD>System:</TD><TD>mec-router.rediris.es en RedIRIS </TD></TR> <TR><TD>Maintainer:</TD><TD>david@mec.es</TD></TR> <TR><TD>Interface:</TD><TD>Ethernet0 (1)</TD></TR> <TR><TD>IP:</TD><TD>mec-router.mec.es (193.147.0.1)</TD></TR> <TR><TD>Max Speed:</TD> <TD>1250.0 kBytes/s (ethernetCsmacd)</TD></TR> </TABLE> 
 
                 Şimdi, ilk defa mrtg programını çalıştırabilirsiniz. Basit bir uygulama: 
./mrtg mrtg.cfg 
Eğer işler yolunda giderse,bazı değerler ister, şimdiki rehberde  log dosyaları ve birtakım GIF'ler oluşturur. Logların ve grafiklerin bulunamamasından dolayı şikayetler olabilir.Endişelenmeyin, bunlar sadece ilk seferde olur.Programı tekrar çalıştırmak için grafiklerin yerlerini değiştirin.Oluşturulmuş grafik, programın en son çalışmasından bu zamana kadar olan süre içerisindeki iletişimi gösterir ve hatta herbir karşılaşma için bir HTML sayfası hazırlar. 
MRTG'nin sizin sisteminizde düzenli bir şekilde çalışmasını nasıl sağlayacaksınız? Şimdi sıra,  bunu öğretmeye geldi. Önce, (aynı sistemde bir web surverı çalıştırdığımızı farzederek ) sayfalarınıza ve MTRG'nin, program her çalıştıtığında oluşturduğu grafiklere yer sağlamak için web surverının temel dokümanında bir rehber meydana getirin.Bu rehberi, Workdır directivi (temel dokümanımızın /usr/local/web de olduğunu varsayarak ) ile düzenlenmiş dosyanın başına ekleyin.Daha sonra MRTG çalışacak ve rehber içinde loglar,  grafikler yaratacak .Ayrıca sizin  http://your_host.domain/mrtg. üzerinden bilgi elde etmenize izin verecek.
Şimdi Figure 3'te gösterilen tüm iletişimler için bir ana sayfa hazırlamak isteyeceksiniz.Fakat bu,  indexmaker aracı ile yapılamaz.Şunu çalıştırın: 
indexmaker mrtg.cfg <router-name regexp> > /usr/local/web/mrtg/index.html
Önceki düzenli ifadelerle karşılaştırılmış ve tek detaylı sayfalara eklenmiş rooter isimlerinin iletişimlerinin günlük grafikleri ile bir HTML sayfası oluşturacak. 

Sizin de hayal edeceğiniz gibi MRTG programı, her süre içerisinde veriler toplamak ve gerçek görünümdeki yanılgıları görmek için, düzenli bir temel üzerinde çalışır.Bu aşağıdaki dizelerde yapılmıştır.  ( /usr/local/mrtg-bin 'in mrtg programının son işlemi olduğunu varsayarak ): 

0,5,10,15,20,25,30,35,40,45,50,55 * * * * \  
/usr/local/mrtg-bin/mrtg \  
/usr/local/mrtg-bin/mrtg.cfg > \  
/dev/null 2>&1 
 Red Hat dağıtımında,  /etc/crontab doyalarına eklemek için doğru dizeler şunlardır: 
0,5,10,15,20,25,30,35,40,45,50,55 * * * * root \  
/usr/local/mrtg-bin/mrtg \  
/usr/local/mrtg-bin/mrtg.cfg > \  
/dev/null 2>&1 
Eğer herşey iyi çalışırsa, düzenlemelerini ve HTML içerik sayfasını çevirmek için zaman harcayabilirsiniz.İyi bir arttırma, içerik sayfasının HEAD kısmını kapsar. Bir  <META .....> tarayıcıyı, son bilginin ekranda görünmesi için her 300 saniyeyi geri yüklemeye zorlar. 
Düzenlediğiniz dosyalarınızda başka bir arttırma,  WriteExpire directividir.Bu, her GIF ve HTML sayfası için MRTG'in meta uzantılı dosyalar oluşturmasını sağlar,tarayıcıların ve serverların gereksiz gizlemelerini engeller eliminating .Bunun için, Apache serverınızı,  meta uzantılı dosyaları okuması ve Metadir directivi ile  XXXX dosyasına uygun "Expire" başlıklarını göndermesi için düzenlemelisiniz. 
Dağıtımdan düzenlenmiş ek directivlere bakabilirsiniz;çok iyi doküme edilmişlerdir. MRTG tarafından oluşturulmuş tüm sayfaları ve layout imajlarını değiştirmek mümkündür. 

Umarım programdan hoşnut kalmışsınızdır.Eğer öyleyse ,yazarlarımıza kart gönderin; adreslerini MRTG home sayfalarından bulabilirsiniz. 

Diğer Programlar 

 Ünlü tin news readerın yazarı Iain Lea tarafından yazılmış Router-Stats adında bir program bulunmakta.Router stats, grafiklerini günde bir kez güncelleştiren, saatlik kullanım ve diğer konular hakkında çok ilginç istatistikler veren bir program.Router-Stats programının işini yapabilmek için birçok dış programa gerek duyması sorun yaratabilir (SNMP işleri için  CMU-SNMP, grafik çizmek için GNUPLOT, bazı grafik dönüşümlerini yapmak için NetPBM, bunları son olarak GIFdosyalarına dönüştürmek için GIFTOOL programları). Router -Stats hakkında daha fazla bilgi için referans kutusundan URL'ye göz atabilirsiniz. 

İletişim ağı yönetim işlerinde bir adım önde giden ve bütün iletişim ağının kontrol ve bakımı için tam bir çözüm öneren başka bir yazılım çeşidi bulunmakta.Bu tür bir çözüm , iletişim ağımızın karmaşık bir çizimini yapmamıza ve dağılımın özgün bölümleri ve diğer ilginç özelliklerine göz atarak düğümleri arasında dolaşmamıza olanak sağlıyor. 

Burada geniş bir kesimce kullanılan iki ticari çözümden sözedebiliriz:Hewlett-Packard'dan HP-OpenView ve Sun firmasından SunNet Manager.Bu programlar iletişim ağının bütün kaynaklarını büyük grafik interfacelerden yönetmek için mükemmel bir zemin sağlamakta.Programlar ayrıca istatistik amaçlar için iletişim ağında toplanan tüm verileri depolayan SNMP araçları ve veri tabanlarını işleten tüm iletişim ağı elemanlarını bulmaya yarayan iletişim ağı keşif araçlarıyla da ilgileniyorlar.Bu ortamların önemli bir özelliği de diğer satıcıların daha özgün ürünleriyle; örneğin, bir iletişim ağı yöneticisinin, bütün router dağılımıyla birlikte bir veri tabanına bakmasına ve hatta routerleri ve tüm bağlantılarıyla arka panellerini grafik aracılığıyla kontrol edebilmesine olanak veren Cisco's Cisco Works ile bütünleşebilme yetenekleri. 

Bu ürünlerin iki eksikliğinden söz edebiliriz:Bunlar ticari ürünler ve Linux'a portları yok.Tabii ki bu işler için public domain çözümleri bulunmakta.Bunun için bulduğum en iyi paketlerden biri Scotty.Scotty yüksek seviyeli, dizi tabanlı API'lar kullanan site-specific iletişim ağı yönetim yazılımlarını yerine getirmeye izin veren TCL tabanlı bir paket.Onun benzer ürünü, Tkinned, IP iletişim ağlarını keşfetmek, iletişim ağı layout işlemine destek vermek veya diğer olağan araçlarla birleşim halinde olan SNMP'yi kullanan IP iletişim ağlarını onarmak için tasarlanmış bazı araçlarla bütünleşen bir iskelet oluşturmak için olanak sağlayan bir iletişim ağı editörü.(e.g. traceroute).Scotty ayrıca MIB bilgilerini keşfetmeye izin veren bir grafik MIB arayıcısı da içeriyor. 

You can check the references listing for both commercial and public domain network management software pointers. 

Sonuçlar

SNMP is a simple but powerful protocol that can help us monitor our resources with little stress to the network. It's possible the extensions being developed now will increase the complexity and capabilities of this tool but they will also increase the resources needed to implement them.

In this article, we have explored a couple of tools found on the Net. There are a lot of tools being developed each day. You can check the Usenet newsgroup comp.protocols.snmp for announcements of new software and MIBS.




Kaynaklar
Linux için CMU-SNMP
ftp://sunsite.unc.edu/pub/Linux/system/network/admin/cmu-snmp-linux-3.2-bin.tar.gz
CMU-SNMP PERL 5 modül genişletimi:
ftp:/ftp.wellfleet.com/netman/snmp/perl5/SNMP.tar.gz
Çoklu Yolverici Trafik Çizicisi (MRTG):
http://www.ee.ethz.ch/~oetiker/webtools/mrtg/mrtg.html
GD Grafik Kitaplığı: (MRTG bunu gerektirmektedir)
http://www.boutell.com/gd/
Perl 5.003: (MRTG bunu gerektirmektedir.)
http://www.perl.com/perl/info/software.html
MRTG gönderim dizelgesi:
Tartışma Dizlegesi

mrtg-announce-request@list.ee.ethz.ch adresine "subscribe" içerikli bir ileti yollayın.
Duyurum Dizelgesi (listesi)

mrtg-announce-request@list.ee.ethz.ch adresine "subscribe" içerikli bir ileti yollayın.

Yolgösterici Durumları:

http://www.scn.de/~iain/router-stats/
SNMP İletişimağı İşletim Yazılımı:
http://wwwsnmp.cs.utwente.nl/software/
Scotty:
http://wwwsnmp.cs.utwente.nl/~schoenw/scotty/
Linux için Scotty:
ftp://sunsite.unc.edu/pub/Linux/system/network/admin/tkined-1.3.4+scotty-ELF.tar.gz

Daha Çok Bilgi İçin:
  • İletişimağı Yönetim Yolgösterenini (Network Administration Guide) okuyunuz.


© 1997 David Guerrero
Bu sanalyörenin bakımı Miguel A Sepulveda tarafından yapılmaktadır.