Traceroute'a giriş
Linux traceroute komutu, bir hedefe ulaşmak için gereken yoldaki atlama ve paket sayısını belirlememize yardımcı olan bir ağ sorun giderme yardımcı programıdır. Yerel makineden uzaktaki makineye verinin nasıl aktarıldığını görüntülemek için kullanılır. Bir web sayfasının yüklenmesi traceroute'un yaygın örneklerinden biridir. Bir web sayfası yüklemesi, verileri bir ağ ve yönlendiriciler aracılığıyla aktarır. Traceroute, bir ağ üzerindeki yönlendiricilerin rotalarını, IP adreslerini ve ana bilgisayar adlarını görüntüleyebilir. Ağ sorunlarını teşhis etmek için yararlı olabilir.
Bilgi işlemde tracert ve traceroute, IP ağı boyunca olası rotaları görüntülemek ve paket geçiş gecikmelerini ölçmek için bilgisayar ağı teşhisine yönelik komutlardır. Rota geçmişi, rotadaki tüm ardışık ana bilgisayarlardan gelen paket gidiş-dönüş süresi olarak kaydedilir; her atlamadaki ortalama süre toplamı, bağlantıyı oluşturmak için harcanan toplam süre ölçüsüdür.
diziler java
Traceroute komutu, gönderilen her paket iki kereden fazla kaybolmadıkça devam eder; bağlantı kesildi ve yol değerlendirilemiyor. Öte yandan, ping komutu yalnızca varış noktasından geçen son gidiş-dönüş sürelerini ölçer. Bazen araç IPv6 için tracert6 ve traceroute6 gibi benzer bir isme sahiptir.
Sözdizimi:
traceroute [OPTION...] HOST
Seçenekler:
Aşağıdaki komut satırı seçenekleri traceroute komutu tarafından desteklenir:
-f, --first-hop=SAYI: Başlangıç atlama mesafesini ayarlamak için kullanılır.
-g, --gateways=KAPILAR: Gevşek kaynak yönlendirmesi için ağ geçitlerinin listesini görüntülemek için kullanılır.
-I, --icmp: ICMP ECHO'nun prob olarak kullanılacağı belirtilmiştir.
-m, --max-hop=SAYI: Maksimum atlama sayısını ayarlamak için kullanılır, varsayılan değer 64'tür.
-M, --type=YÖNTEM: Traceroute işlemleri için YÖNTEMİ (icmp veya udp) belirtir, varsayılan yöntem udp'dir.
-p, --port=BAĞLANTI NOKTASI: Hedef PORT portunu kullanacak şekilde tanımlanmıştır, varsayılan PORT 33434'tür.
-q, --tries=SAYI: Atlama başına NUM araştırma paketini iletmek için kullanılır, varsayılan değer 3'tür.
--resolve-ana bilgisayar adları: Ana bilgisayar adlarını çözümlemek için kullanılır.
-t, --tos=SAYI: Hizmet türünü (TOS) NUM olarak ayarlamak için kullanılır.
-w, --wait=SAYI: Yanıt için saniye cinsinden beklemek için kullanılır, varsayılan değer 3'tür.
-?, --yardım: Desteklenen komut satırı seçenekleri ve kullanımına ilişkin kısa bir açıklama içeren yardım kılavuzunu görüntülemek için kullanılır.
--kullanım: Kısa bir kullanım mesajı görüntüler.
-V, --versiyon: Traceroute'un versiyon bilgisini görüntülemek için kullanılır.
Konunun hızlı indeksine bir göz atalım:
- Traceroute Komutunu yükleyin
- O nasıl çalışır?
- Ipv6 kullanarak rotayı izleyin
- Ipv4 kullanarak rotayı izleyin
- IP adresi ve ana bilgisayar adı eşlemesini devre dışı bırakın
- Atlama başına sorgu sayısını ayarlayın
- Yanıt bekleme süresini ayarlayın
- Kullanılacak arayüzü belirtin
- Başlangıç TTL Değerini Ayarlayın
- Maksimum atlama sayısını ayarlayın
- Yardım almak
Traceroute uygulamaları
Traceroute komutu birçok modern işletim sisteminde mevcuttur. Linux, macOS ve FreeBSD gibi Unix benzeri sistemlerde komut satırı için bir araç olarak mevcuttur. Ayrıca traceroute'a macOS'taki Ağ Yardımcı Programları paketinden grafiksel olarak erişilebilir; bu yardımcı programlar macOS Big Sur'un yayınlanmasından bu yana kullanımdan kaldırılmıştır.
ReactOS ve Microsoft Windows, benzer bir rota izleme işlevini uygulayan tracert adlı bir program sunar. Ayrıca Windows NT tabanlı işletim sistemleri, ping komutunun işlevselliğini tracert ile birleştirebilen PathPing'i sunar. ReactOS sürümü Get Murphy tarafından entegre edilmiştir ve GPL ile lisanslanmıştır.
Varsayılan olarak traceroute, Unix benzeri işletim sistemlerinde 33434 ila 33534 arasında değişen bağlantı noktası hedef numaralarına sahip bir UDP (Kullanıcı Datagram Protokolü) paketleri sırası gönderir. MacOS, DragonFly BSD, OpenBSD, NetBSD, FreeBSD ve Linux ile birlikte gönderilen traceroute uygulamaları, ICMP veya TCP SYN paketlerini kullanarak TCP ve UDP gibi ICMP Yankı İsteği paketlerini kullanma seçeneği. Varsayılan olarak tracert, Windows'ta UDP paketi traceroute aktarımları yerine ICMP Yankı İsteği paketlerini aktarır.
Traceroute'un kullanımı
Çoğu uygulamada, atlama başına aktarılacak sorgu sayısını, yanıt için bekleme süresini, atlama sınırını ve kullanılan bağlantı noktasını tanımlamak için en azından bazı seçenekler bulunur. Traceroute'u belirtilen seçeneklerle çağırmazsak, mevcut seçenekler listesini gösterirken, man traceroute komutu hata bayrakları gibi daha fazla ayrıntıyı temsil eder.
Traceroute'un kökenleri
Traceroute'un kılavuz sayfası, gerçek traceroute programının 1987'de Van Jacobson tarafından Steve Deering'in tavsiyesi üzerine, özellikle ikna edici düzeltmeler ve C. Philip Wood, Ken Adelman ve Tim Seaver'ın tavsiyeleriyle belirlendiğini belirtir. Ping programı yazarı Mike Muuss, ping programını ilk belirlerken traceroute'un ham ICMP soketlerini etkinleştirmek için daha önce kodladığı çekirdek ICMP desteğiyle belirlendiğini belirtiyor.
Traceroute sınırlamaları
Traceroute'un sınırlamaları kötü bir şöhrete sahiptir ve araç kullanılırken dikkate alınmalıdır. Örneğin, bir traceroute, arayüz seviyesindeki yolları tanır ancak rota seviyesindeki yolları tanımaz. Yönlendiriciler incelemeye yanıt vermediğinde veya yönlendiriciler ICMP yanıtları için bir kısıtlama içerdiğinde diğer sınırlamalar ortaya çıkar.
Traceroute, trafik yükü dengelemenin mevcut olmadığı bir yolu temsil edebilir. Bu sorunu en aza indirmek için, yük dengelemeyi göz ardı edecek şekilde inceleme akışı tanımlayıcısını yöneten, Paris-traceroute olarak bilinen bir traceroute modifikasyonu mevcuttur.
Traceroute Komutunu yükleyin
Traceroute, varsayılan bir yardımcı program değildir. Linux sistem. Traceroute'u kullanabilmek için manuel olarak kurmamız gerekiyor. Yüklemek için aşağıdaki komutlardan birini yürütün:
sudo apt install inetutils-traceroute sudo apt install traceroute
Yukarıdaki komutlar traceroute yardımcı programını sistemimize kuracaktır. Başarılı kurulumdan sonra çıktı aşağıdaki gibi görünecektir:
O nasıl çalışır?
Bağlı bir ağ ana bilgisayarının yolunu izlemek için bağlanmak istediğiniz sunucunun adını veya IP adresini iletin. Örneğin, 'javatpoint.com' sunucusunun yolunu izlemek için aşağıdaki komutu yürütün:
traceroute javatpoint.com
Yukarıdaki komut, verilen rotadaki atlamaları, paketleri ve diğer birçok bilgiyi görüntüleyecektir. Aşağıdaki çıktıyı göz önünde bulundurun:
Yukarıdaki çıktıdan birkaç şey görebiliriz. çıktının her bölümünü anlayalım:
- İlk satırda ulaşılacak ana bilgisayar adı ve IP adresi, traceroute komutu tarafından denenecek atlamalar ve gönderilecek paketlerin boyutu görüntülenir.
- İkinci satırdan itibaren her satır hedefe bir atlama gösteriyor. Ve ana bilgisayar adı ve ardından ana bilgisayarın IP adresi, gidiş dönüş süresi. Gidiş dönüş süresi, bir sinyalin gönderilmesi için gereken süre ile ana bilgisayara yanıt vermek için gereken sürenin toplamıdır.
- Varsayılan olarak her ana bilgisayar için üç paket gönderir, dolayısıyla üç yanıt süresi listelenir.
- '*' sembolü paket kaybını temsil eder. Paket kaybı, ağ kesintisi, ağdaki yoğun trafik nedeniyle veya güvenlik duvarının trafiği düşürmesi nedeniyle meydana gelir. Çok fazla paket kaybı durumunda, traceroute hatayı 'hedefe ulaşılamadı' şeklinde gösterecektir.
IPv6 Kullanarak Rotayı Takip Edin
'6' seçeneği, Ipv6 protokolünü kullanarak bir ana bilgisayar ağına giden yolu izlemek için kullanılır. Aşağıdaki komutu göz önünde bulundurun:
traceroute6 google.com
Yukarıdaki komut, Ipv6 protokolünü kullanarak 'google.com'a giden rotayı izleyecektir. Aşağıdaki çıktıyı göz önünde bulundurun:
IPv4 Kullanarak Rotayı Takip Edin
'4' seçeneği, Ipv6 protokolünü kullanarak bir ana bilgisayar ağına giden yolu izlemek için kullanılır. Aşağıdaki komutu göz önünde bulundurun:
işaretleme resmi
traceroute 4 google.com
Yukarıdaki komut, Ipv6 protokolünü kullanarak 'google.com'a giden rotayı izleyecektir. Aşağıdaki çıktıyı göz önünde bulundurun:
IP Adresi ve Ana Bilgisayar Adı Eşlemesini Devre Dışı Bırak
'n' seçeneği IP adresi ve ana bilgisayar adı eşlemesini devre dışı bırakmak için kullanılır. Aşağıdaki komutu göz önünde bulundurun:
traceroute n google.com
Yukarıdaki komut çıktıyı aşağıdaki gibi üretecektir:
Atlama başına Sorgu Sayısını Ayarla
'-q' seçeneği atlama başına sorgu sayısını ayarlamak için kullanılır. Aşağıdaki komutu göz önünde bulundurun:
traceroute -q 2 google.com
Yukarıdaki komut çıktıyı aşağıdaki gibi üretecektir:
Yanıt bekleme süresini ayarlayın
Traceroute'ta yanıt bekleme süresini ayarlamak için '-w' seçeneği kullanılır. Bir araştırmaya yanıt vermek için bekleme süresini saniye cinsinden belirtecektir. Aşağıdaki komutu göz önünde bulundurun:
traceroute -w 1 google.com
Yukarıdaki komuttan yanıt bekleme süresi 1 saniyedir. Çıktıyı aşağıdaki gibi üretecektir:
Kullanılacak arayüzü belirtin
'i' seçeneği traceroute'un kullanması gereken ağ arayüzünü ayarlamak için kullanılır. Ayarlanmazsa arayüzü yönlendirme tablosuna göre ayarlayacaktır. Aşağıdaki komutu göz önünde bulundurun:
traceroute i wlp3s0b1 google.com
Yukarıdaki komut çıktıyı aşağıdaki gibi üretecektir:
Başlangıç TTL Değerini Ayarlayın
Başlangıçtaki TTL (yaşam süresi) değerini varsayılan değerden farklı olarak ayarlayabiliriz. Bazı atlamaları atlayacaktır. Genellikle ilgili test seti için bir, iki, üç vb. olarak ayarlanır. Yani eğer bunu yediye ayarlarsak, ilk test yedi atlamayı deneyecek ve birden altıya kadar olan atlamaları atlayacaktır. Aşağıdaki komutu göz önünde bulundurun:
traceroute -f 7 google.com
Yukarıdaki komut doğrudan yedinci atlamaya gidecektir. Aşağıdaki çıktıyı göz önünde bulundurun:
Maksimum Atlama Sayısını Ayarlayın
'-m' seçeneği, paketin hedefe ulaşması için maksimum atlama sayısını ayarlamak için kullanılır. Maksimum atlama sayısı için varsayılan değer 30'dur. Aşağıdaki komutu göz önünde bulundurun:
traceroute -m 7 google.com
Yukarıdaki komut, paketin hedefe ulaşması için maksimum 7 atlama noktası ayarlayacaktır. Aşağıdaki çıktıyı göz önünde bulundurun:
Yardım almak
Kullanımın ve desteklenen seçeneklerin bir özetini içeren yardım kılavuzunu görüntülemek için aşağıdaki komutu yürütün:
traceroute --help
Yukarıdaki komut yardımı gösterecektir. Çıktıyı aşağıdaki gibi üretecektir:
Man komutunu aşağıdaki gibi çalıştırarak da kılavuz sayfalarına erişebiliriz:
man traceroute
Yukarıdaki komut traceroute komutunun manuel sayfasını görüntüleyecektir. Aşağıdaki gibi görünecek:
Daha fazlasını okumak için sayfayı kaydırın ve kılavuz sayfasından çıkmak için 'q' tuşuna basın.