IST-01 lokasyonunda hizmet kesintisi yaşanıyor. Detaylar

Ağ show route

Looking Glass ile rota sorunlarını teşhis etmek

Ping, traceroute ve show route çıktılarını birlikte okuyarak AS path’i, asimetrik yolları ve yanlış alarm veren gecikme artışlarını ayırt etmek.

Netlojik NOC Ekibi 4 dk okuma

İçindekiler
  1. Looking Glass ne gösterir?
  2. ping: önce temel kontrol
  3. traceroute: yolu okumak
  4. show route: AS path’i okumak
  5. Asimetrik yol
  6. Pratik bir teşhis sırası

“Siteniz bizden yavaş açılıyor” şikâyeti geldiğinde, kendi ağınızdan yaptığınız testler genellikle bir şey göstermez; sorun başka bir yerde, çoğu zaman trafiğin gidiş ya da dönüş yolundadır. Looking Glass (LG), başka bir ağın router’ının bakış açısını ödünç almanızı sağlar. Doğru okunduğunda, birkaç komutla sorunun nerede olduğunu büyük ölçüde daraltabilir.

Looking Glass ne gösterir?

Bir looking glass, bir ağın router’larında sınırlı ve salt okunur komutları web üzerinden çalıştırmanıza izin verir. Tipik olarak üç araç sunulur:

  • ping: Hedefe erişilebilirlik ve gidiş-dönüş süresi.
  • traceroute: O router’dan hedefe giden yoldaki atlamalar.
  • show route (ya da show ip bgp): Router’ın hedef prefix için seçtiği BGP rotası ve AS path.

Netlojik’in looking glass’ına lg.netlojik.com adresinden erişebilirsiniz. Aşağıdaki örnekler genel amaçlıdır; çıktı biçimi, router yazılımına göre değişir.

ping: önce temel kontrol

Ping, en basit ama yanlış yorumlanmaya en açık araçtır. Bir hedefin ping’e yanıt vermemesi, erişilemez olduğu anlamına gelmez; birçok sunucu ve güvenlik duvarı ICMP’yi engeller. Anlamlı bir test için:

  • Aynı hedefe farklı lokasyonlardaki LG’lerden ping atın. Bir yerden yanıt gelip diğerinden gelmiyorsa, sorun yoldadır.
  • Tek bir değere değil, dağılıma bakın. Ortalama 20 ms iken ara ara 200 ms görülmesi, sabit 60 ms’den daha fazla şey anlatır.
  • IPv4 ve IPv6’yı ayrı test edin. Dual-stack servislerde yalnızca bir protokolde sorun olması sık rastlanan bir durumdur.

traceroute: yolu okumak

Örnek bir traceroute çıktısı:

 1  192.0.2.1          0.4 ms   0.3 ms   0.3 ms
 2  198.51.100.9       1.1 ms   1.0 ms   1.2 ms
 3  198.51.100.22      9.8 ms   9.7 ms   9.9 ms
 4  198.51.100.41     68.4 ms  71.2 ms  69.9 ms
 5  203.0.113.5       10.6 ms  10.4 ms  10.7 ms
 6  203.0.113.80      10.9 ms  10.8 ms  11.0 ms

İlk bakışta 4. atlamada bir sorun var gibi görünüyor. Ama 5. ve 6. atlamalar yeniden 10 ms civarına düşüyor. Bu, 4. atlamadaki router’ın traceroute paketlerine (TTL süresi dolan paketlere) yanıt üretmeyi düşük öncelikle yaptığını gösterir. Router, üzerinden geçen trafiği hızla iletirken kendisine yönelik ICMP yanıtlarını yavaş ya da sınırlı üretir.

Kural şudur: Bir atlamadaki gecikme artışı, sonraki tüm atlamalarda da devam ediyorsa gerçektir. Sadece o atlamada görülüp sonra kayboluyorsa, genellikle kontrol düzlemi davranışıdır ve sorun değildir. Aynı mantık paket kaybı için de geçerlidir: Ortadaki bir atlamada %30 kayıp görünüp hedefte kayıp yoksa, gerçek bir kayıp yoktur.

Daha güvenilir bir tablo için traceroute’u tek seferlik değil, mtr gibi sürekli ölçüm yapan bir araçla ve yeterince uzun süre çalıştırmak faydalıdır:

mtr -rwzc 100 203.0.113.80

-z parametresi her atlamanın ASN’ini de gösterir; trafiğin hangi ağdan hangisine geçtiğini görmek kolaylaşır.

show route: AS path’i okumak

Traceroute size paketin nereden geçtiğini gösterir; show route ise router’ın neden o yolu seçtiğini. Örnek bir çıktı:

203.0.113.0/24
  *  via 192.0.2.1   AS path: 64501 64503 64505 64505 64505  (best)
     via 192.0.2.5   AS path: 64502 64505
     via 192.0.2.9   AS path: 64504 64506 64505

Nasıl okunur:

  • En soldaki ASN (64501), bu router’a rotayı veren doğrudan komşudur.
  • En sağdaki ASN (64505), prefix’i duyuran, yani origin ağdır.
  • Arka arkaya tekrar eden 64505 64505 64505, AS path prepending’dir. Origin ağ, bu yolu yapay olarak uzatarak daha az tercih edilmesini istemiştir.

İlginç olan, en uzun görünen yolun seçilmiş olması. AS path uzunluğu, BGP karar sürecinde yalnızca bir adımdır. Router’da local preference daha önce değerlendirilir; örneğin doğrudan peering ya da belirli bir upstream üzerinden gelen rotalar, yöneticinin politikasıyla daha yüksek tercih almış olabilir. Birçok LG, show route ... detail ya da benzeri bir komutla local preference, MED ve community değerlerini de gösterir.

Bu çıktıdan çıkan pratik sonuç: Origin ağ trafiği 64502 üzerinden almak istiyorsa, prepending bu router için işe yaramamıştır. Çözüm genellikle komşu ağın desteklediği BGP community’leriyle politika etkilemektir.

Asimetrik yol

İnternet trafiği çoğu zaman simetrik değildir: A’dan B’ye giden paketler bir yolu, B’den A’ya dönen paketler başka bir yolu izleyebilir. Her ağ kendi çıkış kararını kendi politikasıyla verir. Bu yüzden:

  • Sizin ağınızdan yaptığınız traceroute, yalnızca gidiş yolunu gösterir.
  • Dönüş yolunu görmek için karşı tarafa yakın bir looking glass’tan size doğru traceroute çalıştırmanız gerekir.

Tipik bir teşhis senaryosu: Kullanıcı 198.51.100.0/24 bloğundan bağlanıyor, gecikme yüksek. Sizin ağınızdan kullanıcıya traceroute temiz ve kısa. Kullanıcının ağına yakın bir LG’den sizin prefix’inize show route çalıştırdığınızda, trafiğin başka bir kıtadaki bir transit üzerinden size geldiğini görüyorsunuz. Sorun gidişte değil dönüştedir ve çözüm de dönüş yolunu etkileyecek duyuru ya da community değişikliğindedir.

Gidiş ve dönüş yolları arasındaki fark, özellikle paket kaybı ya da tek yönlü yavaşlık şikâyetlerinde en sık gözden kaçan etkendir.

Pratik bir teşhis sırası

  1. Şikâyet eden kullanıcının kaynak IP’sini ve hangi prefix’ten geldiğini belirleyin.
  2. Kendi ağınızdan o IP’ye mtr ile gidiş yolunu ölçün.
  3. Kullanıcının ağına ya da bölgesine yakın bir LG bulun (PeeringDB kayıtları, ağların LG adreslerini listeler).
  4. O LG’den sizin prefix’inize show route ve traceroute çalıştırarak dönüş yolunu görün.
  5. AS path’te beklenmedik bir ağ, gereksiz uzun bir yol ya da prefix’inizin hiç görünmemesi gibi bir durum varsa, sorunu kanıtlarıyla ilgili ağın NOC’una iletin.

Bir NOC’a başvururken kaynak ve hedef IP, zaman damgası, traceroute ve show route çıktılarını birlikte göndermek, çözümü belirgin şekilde hızlandırır. Netlojik ağıyla ilgili yönlendirme sorunları için [email protected] adresine bu bilgilerle yazabilirsiniz.

Looking glass’lar tek başına sorunu çözmez, ama tahmin yerine gözleme dayalı konuşmanızı sağlar. Gidiş ve dönüş yolunu ayrı ayrı görmek, çoğu rota şikâyetinde işin yarısıdır.

Diğer yazılar

Tüm yazılar