ICMP Nedir ve Nasıl Çalışır

Nurettin Eraslan
4 min readDec 31, 2023

ICMP yani (Internet Control Message Protocol) kısa özetleyecek olursak bir ağdaki cihazların çalıştıklarını anlayabileceğimiz bir protokoldür.Hata mesajları üreterek bilgisayarların kullanabilirliğini doğrular.

ICMP’nin öncelikli hedefi ağdaki bilgisayarlara ping yollamaktır veya onları izleyebilmektir.Kullanılabilirliği seyahat süresini ve rotayı bilgisayarlar vasıtasıyla ölçmek için ECHO ICMP talep mesajları gönderir.Yani ICMP,ağ bilgisayarı detaylarını belirleyen Ping ve Trace özelliklerini çalıştırır.

ICMP, IP Protokolündeki RFC792 paketinde çalışır.Mesajlar IP hatalarına,bulgulara ve yönlendirlmelere cevap verir.Ve mesajlar bunları işleme yeteneğine de sahiptir

ICMP mesajları network layerda iki temel versiyon halinde olur;

1. IPv4 için ICMPv4

2. IPv6 için ICMPv6

Sistem mesajları bir IP başlığı ile sarmalayıp datagramlar halinde iletir. Ve her cihazın IP paketleri için bir TTL değeri olur.

TTL (Time To Live) değeri 0 olunca kaynak için verilen süre aşıldı anlamına gelir.Ve ICMP de bu paket ile bağlantıyı doğrular.

Local Ağlarda sorunların tespitinde önemli rol oynayan ICMP , hata ve kontrol mesajları oluşturabilir.Bunun yanında problemlerin tespiti ve çözülmesine yardımcı olur.Web uygulamalarının ve protokollerinin birçoğu ICMP mesajlarını kullanır.Örneğin HTTP ve HTTPS gibi.

Ping ve Traceroute kullanarak bilgisayar işletim sistemleri sorunlarını çözebiliriz.

Ping, bilgisayar ağlarında Echo Request(Yankı isteği) ve Reply(Yanıt) mesajlarıyla cihazları kontrol eder.Bunun yanında UDP’nin datagramlarını kullanarak TTL ve Ulaşılamayan hedefi kontrol eder.

Traceroute ise kaynak ve hedef arasındaki routerları ve host pcleri belirleyerek rota boyunca sorunlu cihazları algılar.Yani destination yolundaki atlama sayılarını ve paketin hangi ara cihazlardan geçtiğini kontrol eder.

Şunu belirtmek gerekir ki ICMP yalnızca rapor verir ve hataları düzeltmede rol oynamaz.

Peki ICMP Mesajları Nelerdir?

1.Echo Request/Echo Reply

Ağdaki cihazların çalışmada durumlarını öğrenmek için request mesajları kullanırız.Böylece,local bilgisayarlar hedef bilgisayarlara ICMP request isteği gönderirler.Ve daha sonra alıcı bilgisayarda reply ile cevap gönderir.

2.Destination Unreachable

Bu mesaj bir hedefe ulaşılamılayan hedef hakkında bilgi verir.Bu şekilde kullanılmama hakkında pcyi uyarır.

Bilgisayar teslim edilmeyen paketler için Unreachable mesajı gönderir.Ve sorunu gönderen pc ye bildirir.Böylelikle paketlerin iletilmemesi durumunu anlatmak için kod yapıları üretir.

Üretilen kodlardan bazıları şu şekilde olabilir;
1.”Destination Unreachable(Ulaşılamaz Hedef):0”

2.”Network Unreachable(Ağa Ulaşılmıyor):1”

3.” Host Unreachable (Sunucuya Ulaşılmıyor):2”

4. “Protocol Unreachable(Ulaşılmayan Protokol):3”

Network ve Host PC Unreachable mesajları,paketlerin iletimlerinin hatalarını gösteren router cevaplarıdır.Bu mesajlar,kayıp hakkında önemli bilgiler içerir.Bir router veya host rotası olmayan bir paket aldığında “Destination Unreachable” mesajıyla cevap vererek ağa erişilemez olduğu anlaşılır.

3.Time Exceeded

IP başlıklarındaki TTL değelerleri ile bir paketin hedefine ulaşmak için geçen routerların sayısını kısıtlar ve bu şekilde sonsuz döngüye girmesini engeller.Eğer TTL sınırlaması olmasaydı routerlar ağdaki sonsuz döngülerinden dolayı verimli paket erişimini kötü etkileyebilirlerdi.

Ve son olarak routerlar Süre Aşıldı mesajını kaynağa göndererek,süresi dolmuş TTL nedeniyle hata olduğunu bize gösterirler.

4.Redirect

ICMP Redirect mesajları,ağ yönetiminde ve performans optimizasyonunda kullanılabilir.

“1.Host’un Yanlış Yola Yönlendirilmesi”:Eğer host ağ üzerindeki bir hedefe ulaşmaya çalışırken olması gereken yol yerine başka yanlış bir yolu kullanırsa bu durumda ağ yönlendiricisi tarafından tespit edilir ve ICMP Redirect mesajı ile Host’u uyararak normal yoluna yönlendirebilir

2.”Host’un Daha İyi Bir Yolu Kullanması için Yönlendirme”:Eğer yönlendirici bir hostu için normal yoldan daha etkili bir yol belirlerse,ICMP Redirect mesajı ile hostu bu yola yönlendirebilir.

5.Source Quench

Bu mesaj türü bir bilgisayar veya yönlendirci diğerine paket gönderdiğinde ağ üzerindeki cihaz bu paketleri daha fazla kabul edemeyeceğini belirlediğinde gönderilir.Alıcı Source Quench mesajını aldığı vakit gönderdiği paketin hızını azaltmalıdır.

Ve Source Quench mesajları ağ trafiğini dengelemek ve performansını ayarlamak için kullanlır.

--

--