ICMP nedir? ping ve traceroute arka planda nasıl çalışır?
Cevap
ICMP, IP katmanında hata bildirme ve tanı amaçlı kullanılan bir protokoldür (IP protocol number 1). Port kavramı yoktur; mesajlar type/code ile ayrılır.
| Type | Anlam |
|---|---|
| 0 | Echo Reply |
| 3 | Destination Unreachable (code 3: port unreachable, code 4: fragmentation needed) |
| 5 | Redirect |
| 8 | Echo Request |
| 11 | Time Exceeded (TTL sıfırlandı) |
ping
Kaynak Echo Request (8) gönderir, hedef Echo Reply (0) döner. Çıktıdaki RTT gecikmeyi, kayıp oranı link kalitesini gösterir. Ping'e cevap gelmemesi hostun kapalı olduğu anlamına gelmez; ICMP firewall'da engellenmiş olabilir.
traceroute
TTL alanını kullanır. Her router paketi iletirken TTL'i 1 azaltır; 0 olursa paketi düşürüp Time Exceeded (11) gönderir.
- TTL=1 ile paket gönderilir → ilk router cevap verir.
- TTL=2 → ikinci router cevap verir.
- Hedefe ulaşılana kadar devam edilir. Hedef, UDP kullanılıyorsa Port Unreachable, ICMP kullanılıyorsa Echo Reply ile cevap verir.
| Araç | Varsayılan probe |
|---|---|
Linux/Cisco traceroute | UDP, yüksek portlar (33434+) |
Windows tracert | ICMP Echo |
traceroute -T / tcptraceroute | TCP SYN (firewall'ları aşmak için) |
traceroute -n 8.8.8.8
mtr 8.8.8.8 # ping + traceroute sürekliÇıktıda * * * görmek, o hop'un ICMP göndermediği veya rate-limit uyguladığı anlamına gelebilir; ardından gelen hop'lar cevap veriyorsa sorun değildir.
İlgili Ağ Temelleri soruları
- OSI modelinin katmanları nelerdir?
- TCP ile UDP arasındaki fark nedir?
- TCP üçlü el sıkışma (three-way handshake) nasıl çalışır?
- 192.168.10.0/26 ağında alt ağ maskesi nedir ve kaç kullanılabilir host vardır?
- Tarayıcıya bir adres yazdığınızda DNS çözümlemesi nasıl gerçekleşir?
- Bilinmesi gereken yaygın port numaraları nelerdir? HTTP ve HTTPS arasındaki fark nedir?
Bu konuda başka bir soru biliyor musun?
Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.