Ağ Sorunlarını Teşhis Etmek İçin Traceroute ve MTR Nasıl Kullanılır
Giriş
Sunucuları yönetmenin önemli bir parçası, ağ bağlantısını izlemektir.
Kullanımı basit, ancak bilinmesi değerli birkaç araç var. Bu kılavuzda, traceroute
bir ağ sorununun nerede meydana gelebileceğini teşhis etmek için çağrılan bir aracın nasıl kullanılacağını tartışacağız .
Ayrıca mtr
ping ve traceroute işlevlerinin çoğunu tek bir arayüzde birleştiren adlı bir yardımcı programa da bakacağız .
Traceroute Nasıl Kullanılır
traceroute
uzaktaki bir sunucuya giden yolu gösteren basit bir araçtır. Bu, ziyaret etmeye çalıştığınız bir web sitesinden yerel ağınızdaki bir yazıcıya kadar her şey olabilir.
traceroute
Bunu yüklemek gerekmez böylece programı, hemen her Linux dağıtımı üzerine varsayılan olarak yüklenir.
Onu aramak için, keşfetmek istediğimiz bir web sitesi veya IP adresi sağlamamız yeterlidir:
traceroute google.com
Aşağıdakine benzer çıktı alacaksınız:
Output
traceroute to google.com (173.194.38.137), 30 hops max, 60 byte packets
1 192.241.160.253 (192.241.160.253) 0.564 ms 0.539 ms 0.525 ms
2 192.241.164.241 (192.241.164.241) 0.487 ms 0.435 ms 0.461 ms
3 xe-3-0-6.ar2.nyc3.us.nlayer.net (69.31.95.133) 1.801 ms 1.802 ms 1.762 ms
4 144.223.28.73 (144.223.28.73) 0.583 ms 0.562 ms 0.550 ms
5 144.232.1.21 (144.232.1.21) 1.044 ms 1.048 ms 1.036 ms
6 74.125.49.212 (74.125.49.212) 0.494 ms 0.688 ms 0.643 ms
7 209.85.248.180 (209.85.248.180) 0.650 ms 209.85.248.178 (209.85.248.178) 0.621 ms 0.625 ms
8 72.14.236.208 (72.14.236.208) 0.618 ms 72.14.236.206 (72.14.236.206) 0.898 ms 72.14.236.208 (72.14.236.208) 0.872 ms
9 72.14.239.93 (72.14.239.93) 7.478 ms 7.989 ms 7.466 ms
10 72.14.232.73 (72.14.232.73) 20.002 ms 19.969 ms 19.975 ms
11 209.85.248.228 (209.85.248.228) 30.490 ms 72.14.238.106 (72.14.238.106) 34.463 ms 209.85.248.228 (209.85.248.228) 30.707 ms
12 216.239.46.54 (216.239.46.54) 42.502 ms 42.507 ms 42.487 ms
13 216.239.46.159 (216.239.46.159) 76.578 ms 74.585 ms 74.617 ms
14 209.85.250.126 (209.85.250.126) 80.625 ms 80.584 ms 78.514 ms
15 72.14.238.131 (72.14.238.131) 80.287 ms 80.560 ms 78.842 ms
16 209.85.250.228 (209.85.250.228) 171.997 ms 173.668 ms 170.068 ms
17 66.249.94.93 (66.249.94.93) 238.133 ms 235.851 ms 235.479 ms
18 72.14.233.79 (72.14.233.79) 233.639 ms 239.147 ms 233.707 ms
19 sin04s01-in-f9.1e100.net (173.194.38.137) 236.241 ms 235.608 ms 236.843 ms
İlk satır bize traceroute’un çalıştığı koşulları anlatır:
Output
traceroute to google.com (173.194.38.137), 30 hops max, 60 byte packets
Belirtilen ana bilgisayarı, DNS’nin bu etki alanı için döndürdüğü IP adresini, kontrol edilecek maksimum atlama sayısını ve kullanılacak paketin boyutunu verir.
Maksimum atlama sayısı -m
bayrakla ayarlanabilir . Yönlendirmeye çalıştığınız ana bilgisayar 30 sekmeden fazla uzaktaysa, burada daha büyük bir değer belirtmeniz gerekebilir. Ayarlayabileceğiniz maksimum değer 255’tir.
traceroute -m 255 obiwan.scrye.net
Ana bilgisayar adından sonra bir tamsayı vererek her atlamaya gönderilen paketin boyutunu ayarlayabilirsiniz:
traceroute google.com 70
Şu şekilde çıktı göreceksiniz:
Output
traceroute to google.com (173.194.38.128), 30 hops max, 70 byte packets
1 192.241.160.254 (192.241.160.254) 0.364 ms 0.330 ms 0.319 ms
2 192.241.164.237 (192.241.164.237) 0.284 ms 0.343 ms 0.321 ms
İlk satırdan sonraki her satır, belirttiğiniz ana bilgisayarın temsil ettiği bilgisayara ulaşmak için trafiğinizin geçmesi gereken bir “atlama” veya ara ana bilgisayarı temsil eder.
Her satır aşağıdaki formata sahiptir:
Output
hop_number host_name (IP_address) packet_round_trip_times
İşte görebileceğiniz bir sıçrama örneği:
Output
3 nyk-b6-link.telia.net (62.115.35.101) 0.311 ms 0.302 ms 0.293 ms
Her alanın anlamı şudur:
- hop_number : Ana bilgisayarın bilgisayarınızdan aldığı ayrım derecesi sayısının ardışık bir sayısı. Daha yüksek numaralı ana bilgisayarlardan gelen trafiğin yönlendirilmesi için daha fazla bilgisayardan geçmesi gerekir.
- host_name : Varsa Bu alan, ana bilgisayarın IP adresine bir ters DNS araması sonucunu içerir. Ters DNS sorgusundan hiçbir bilgi döndürülmezse, IP adresinin kendisi verilir.
- IP_address : Bu alan, bu ağ atlamasının IP adresini içerir.
- packet_round_trip_times : Satırın geri kalanı bir paket için ana bilgisayara gidiş dönüş sürelerini verir ve tekrar geri döner. Varsayılan olarak, her ana bilgisayara üç paket gönderilir ve her deneme satırın sonuna eklenir.
Her ana bilgisayara karşı test edilen paket sayısını değiştirmek isterseniz -q
, aşağıdaki gibi seçenekle bir sayı belirtebilirsiniz :
traceroute -q1 google.com
İzlemeyi hızlandırmak için ters DNS aramasından vazgeçmek isterseniz, -n
bayrağı iletebilirsiniz :
traceroute -n google.com
Şu şekilde çıktı alacaksınız:
Output
traceroute to google.com (74.125.235.7), 30 hops max, 60 byte packets
1 192.241.160.253 0.626 ms 0.598 ms 0.588 ms
2 192.241.164.241 2.821 ms 2.743 ms 2.819 ms
3 69.31.95.133 1.470 ms 1.473 ms 1.525 ms
İzleme rotanız bazı yıldız işaretlerine (*) dönüşürse, ana makineye giden rotayla ilgili bir sorun vardır.
Output
...
15 209.85.248.220 (209.85.248.220) 121.809 ms 72.14.239.12 (72.14.239.12) 76.941 ms 209.85.248.220 (209.85.248.220) 78.946 ms
16 72.14.239.247 (72.14.239.247) 101.001 ms 92.478 ms 92.448 ms
17 * * 209.85.250.124 (209.85.250.124) 175.083 ms
18 * * *
19 * * *
Rota Sorunu Ne Anlama Geliyor?
Traceroute denemeniz belirli bir atlama veya düğümde durursa ve ana bilgisayara giden bir yol bulamazsa, bir sorununuz var demektir.
Rotanın geri dönmediği atlama, ağ oluşturma sorununun yeri olabilir, ancak teşhis edilmesi her zaman o kadar kolay değildir.
Her pingin bir gidiş-dönüş paketini temsil etmesi ve paketlerin genellikle her iki yönde de farklı yollar kullandığı durum nedeniyle, tamamen farklı, muhtemelen daha yakın bir rotadaki bir soruna işaret edebilir.
Sorun, gördüğünüz son atlamadan hemen sonraki sekmede de olabilir. Bu belirli atlamadan bir dönüş izleme yolu elde edemezseniz, sorunun tam yerini teşhis etmek zordur. Bu genellikle kendi ağınızın dışında mümkün değildir.
MTR Nasıl Kullanılır
Traceroute programının dinamik bir alternatifi mtr
. Ping ve traceroute işlevlerini birleştiren mtr, uzaktaki bir sunucuyu sürekli olarak sorgulamanıza ve gecikme ile performansın zaman içinde nasıl değiştiğini görmenize olanak tanır.
Traceroute’den farklı olarak, mtr çoğu sistemde varsayılan olarak yüklenmez. Aşağıdaki komutları yazarak elde edebilirsiniz.
Ubuntu / Debian:
sudo apt-get install mtr
CentOS / Fedora:
yum install mtr
Arch:
pacman -S mtr
Kurulduktan sonra şunu yazarak arayabilirsiniz:
mtr google.com
Şu şekilde çıktı alacaksınız:
Output
My traceroute [v0.80]
traceroute (0.0.0.0) Tue Oct 22 20:39:42 2013
Resolver: Received error response 2. (server failure)er of fields q
uit Packets Pings
Host Loss% Snt Last Avg Best Wrst StDev
1. 192.241.160.253 0.0% 371 0.4 0.6 0.1 14.3 1.0
2. 192.241.164.241 0.0% 371 7.4 2.5 0.1 37.5 4.8
3. xe-3-0-6.ar2.nyc3.us. 2.7% 371 3.6 2.6 1.1 5.5 1.1
4. sl-gw50-nyc-.sprintli 0.0% 371 0.7 5.0 0.1 82.3 13.1
Çıktı benzer görünse de, traceroute’a göre en büyük avantajı çıktının sürekli güncellenmesidir. Bu, eğilimleri ve ortalamaları biriktirmenize ve ayrıca ağ performansının zaman içinde nasıl değiştiğini görmenize olanak tanır.
Bir traceroute çalıştırdıysanız, rotanın aralıklı paket kaybından muzdarip olduğu bir durumda bile, her bir atlamaya gönderilen paketlerin yolculuğu olaysız yapma olasılığı vardır. Mtr yardımcı programı, daha geniş bir zaman aralığında veri toplayarak bu durumu izlemenize olanak tanır.
--report
Her bir atlamaya 10 paket göndermenin sonuçlarını döndüren seçenekle mtr çalıştırmak da mümkündür .
mtr --report google.com
Rapor şuna benzer:
Output
HOST: traceroute Loss% Snt Last Avg Best Wrst StDev
1.|-- 192.241.160.254 0.0% 10 1.5 0.9 0.4 1.5 0.4
2.|-- 192.241.164.237 0.0% 10 0.6 0.9 0.4 2.7 0.7
3.|-- nyk-b6-link.telia.net 0.0% 10 0.5 0.5 0.2 0.7 0.2
4.|-- nyk-bb2-link.telia.net 0.0% 10 67.5 18.5 0.8 87.3 31.8
Bu, gerçek zamanlı olarak ölçmek istemediğinizde ancak traceroute’un sağladığından daha geniş bir veri aralığı istediğinizde yararlı olabilir.