Pingi yabana atmayalım

( eniz.aksoy@surat.com.tr ), 20/02/2007

 


Bir network yöneticisinin en fazla kullandığı komut-protocol herhalde ping komutudur. Packet Inter-Network Groper  ‘ın baş harflerinden adını alır.Ping komutu ICMP-internet kontrol message Protokolü dediğimiz kontrol protokolünü kullanır.Aslında ICMP sadece ping komutu ile değil bunun dışında bir çok uygulama  ping protokolunu kullanır fakat  kendisi arka planda olmayı sevdiğinden biz onun çalıştığını çok fazla göremeyiz.Peki icmp protokolunu kullanan hizmetler nelerdir:


-ping
-path ping
-tracroute
-tos değerleri
-Qos  (tos vede precedence değerleri)
-Routing protokolleri
Yukarıda ICMP protokolünü kullanan ondan yardım alan bazı hizmetleri sıraladık. Ppeki bu hizmetler icmp protokünden nasıl yararlanır veya ping komutu arka planda ne sağlıyor. Bu konuyu daha iyi anlayabilmek için networkumuzde seyahat eden ping paketinin başlık-header bilgilerini inceleyelim.

 

Versiyon

Başlık uzunluğu

Servis şekli

Toplam uzunluk

Tanımlama bilgisi

Bayrak

   Sıra bitleri

TTL (aşma süresi)

Protokol

Sağlama Bilgisi

Kaynak Adresi (ip adresi)

Hedef Adresi

Opsiyonel

Ek

 

Bir ip paketi hedef networke ulaştığı zaman beraberinde ait olduğu networke ait bu bilgileri de yanında taşır ve diğer makineye ulaştırır. Bu bilgileri alan networkdeki cihazımız  bunları değerlendirerek o network hakkında bilgi edinir ve tabiri uygunsa artık adımını ona göre atar. Peki gönderilen bu bilgiler nedir, ne ifade eder.


TTL (time to live) başlık bilgisi=TTL değeri hedef network e ulaşırken koç hop atladığını yada kaç ip networku geçtiğini gösterir. Windows 2003 işletim sisteminde varsayılan değeri 128 dir. Her hop atladığında bu değer bir  azalır, sıfır olunca da paket drop edilir. TTL kullanımın asıl amaclarından biri de gönderdiğimiz paketin network içerisinde döngüye girdiğinde bu döngünün belli bir süre sonra sonlandırılmasıdır. Diğer kullanım yerleri de windows pc lerde kullandığımız yol tanımlarını, bilgilerini bizlere gösteren  tracert veya
pathping komutlarıdır. Tabii ki farklı sistemlerde bu komutlar farklılık gösterir. Bu protokollerin çalışma mantığı şu şekildedir:


C:\>tracert www.turkcell.com
Tracing route to www.turkcell.com [212.252.168.225]
over a maximum of 30 hops:
  1    <1 ms    <1 ms    <1 ms  172.20.33.1
  2    <1 ms    <1 ms    <1 ms  172.20.200.254
  3     1 ms     1 ms     2 ms  212.174.223.65
  4     2 ms     1 ms     2 ms  212.156.57.5
  5    51 ms     5 ms    92 ms  212.156.118.213
  6     1 ms     1 ms     2 ms  acb_t1_2-acb_t2_1.ttnet.net.tr [212.156.117.13]
  7    13 ms     2 ms     2 ms  212.156.120.54
  8     2 ms     1 ms     1 ms  212.156.117.42
  9     2 ms     2 ms     1 ms  getepem160-acim160.ttnet.net.tr [195.175.7.17]
 10     2 ms     2 ms     2 ms  gtepeM20-1--gtepeM160.ttnet.net.tr [195.175.10.5
4]
 11     3 ms     2 ms     2 ms  195.175.7.90
 12     *        *     *                     *
Tracert komutunu verdiğimiz zaman arka  planda ping  www.turkcell.com (ttl=0) olarak sistem çalışmaya başlar. TTL 0 olduğu için ilk kendi pc mizden çıkayamacak ve pc miz bize request time out mesajı gönderecekdir.Daha sonra ping www.turkcell.com (TTL=1) olarak tekrar atılır bu sefer ttl değeri bir sonraki hop da sonra sıfır olacağından sıfır değerine ulaştığı makineden request time out mesajı gelecektir.Tracert komutunu kullanan bu pc request time out mesajı gönderen kaynak ip adresi ile birlikte gönderdiğinden her bir hopda bulunan cihazların ip adreslerini öğrenmiş olacaktır. Bu şekile hedef networke ulaşana kadar ya da ttl değeri bir artırılarak devam edecektir.


Benzer bir komut da
pathping dir. Tracert komutundan farklı olarak cihazların host isimlerini de ekrana yansıtır.
0  S34ST4-eaksoy2.kaynakholding.one [172.20.33.235]
1  172.20.33.1
2  172.20.200.254
3  212.174.223.65
4  212.156.57.5
5  212.156.118.213
6  acb_t1_2-acb_t2_1.ttnet.net.tr [212.156.117.13]
7  212.156.120.54
8  212.156.117.42
9  getepem160-acim160.ttnet.net.tr [195.175.7.17]
0  gtepeM20-1--gtepeM160.ttnet.net.tr [195.175.10.54]
1  195.175.7.90


Tos(type of service-servis şekli)=Tos aslında QoS bilgilerini taşır fakat ping paketleri içerisinde kullanım yeri biraz daha farklıdır. Tos  icmp protokolu içerisinde  yönlendirme protokollerinin hedef network için en uygun yolu seçmeleri için kullandıkları metric hesaplamarını da kullanılır. Tos bilgisi içerisinde o networkler arasında ki sıkışıklık-networkler arası paket ulaşım süresi-hat güvenirliliği (throughput-delay-reliability) gibi bilgiler bulunur bu bilgiler IGRP-OSPF-BGP gibi dinamik routing protokolleri tarafından en uygun yol secimi için kullanılır.
Yukarıda açıklamaya çalıştığımız gibi icmp protokolü networkler arası erişimin kontrol edilmesi yanında yol bilgisinin hat durumunun kontrol edilmesi gibi ekstra bir çok yerde kullanılmaktadır. Ping komutu beraberinde bu şekil ekstra bilgiler taşıdığı için bazı  networklerde  icmp protokolunun çalışması kısıtlandırılmaktadır.