Ağ Sorun Giderme: ping, traceroute, DNS ve Port Kontrolü Adım Adım
İnternet ya da yerel ağ sorunlarını katman katman bulun: bağlantı, ağ geçidi, DNS ve port testleri için ping, ip, traceroute, dig ve ss komutlarının kullanımı ve çıktı yorumları.
"İnternet yok" ya da "siteye girilmiyor" şikâyetleri tek bir nedenden gelmez. Sorun kablodan, Wi-Fi'den, modemden, DNS'ten, güvenlik duvarından ya da karşı sunucudan çıkabilir. Katman katman ilerlemek, rastgele denemekten çok daha hızlı sonuç verir. Bu rehber, her Linux makinede bulunan komutlarla bir tanı sırası verir.
Strateji: içten dışa
Önce kendi makinenizden başlayıp dışarıya doğru ilerleyin. Her adım bir sonrakinin ön koşuludur: bağlantı yoksa DNS'i test etmenin anlamı yoktur.
1. Bağlantı ve adres
ip -br addr
ip route
Arabirimin (eth0 ya da wlan0) bir IP adresi var mı? 169.254.x.x gibi bir adres, DHCP'den adres alınamadığını gösterir. ip route çıktısında default via ... satırı ağ geçidini (genellikle modem) gösterir. Adres aralığını ve alt ağ mantığını anlamak için CIDR hesaplayıcıyı kullanabilirsiniz. Wi-Fi'da iwconfig ya da nmcli dev wifi sinyal gücünü verir; zayıf sinyal çoğu yavaşlığın asıl nedenidir.
2. Ağ geçidine erişim
ping -c 4 192.168.1.1
Ağ geçidine ping gidiyorsa yerel ağ sağlamdır. Kayıp ya da yüksek gecikme (yerel ağda 5 ms'nin üstü) varsa kablo, Wi-Fi ya da yerel cihaz sorunu aranır. Burada ping gitmiyorsa sorun yerel ağdadır; internete bakmanın anlamı yoktur.
3. İnternete IP ile erişim
ping -c 4 1.1.1.1
Adres adı yerine IP kullanmak DNS'i devre dışı bırakır. Bu ping gidiyorsa internet erişimi var demektir. Gitmiyorsa sorun modem ya da servis sağlayıcıdadır. Gecikme ve kayıp değerlerini yorumlamak için hız testi sayfasındaki açıklamalara bakın.
4. DNS
ping -c 2 example.com
dig example.com +short
dig @1.1.1.1 example.com +short
IP ile erişiyor ama ad ile erişemiyorsanız sorun DNS'tedir. Üçüncü komut, doğrudan başka bir DNS sunucusunu sorgular: o çalışıp sistemin varsayılanı çalışmıyorsa yerel DNS ayarını (/etc/resolv.conf ya da modem) değiştirmek çözüm olur. Alan adını yeni taşıdıysanız kayıtların yayılması saatler sürebilir.
5. Yol: traceroute
traceroute 1.1.1.1
Paketin hangi duraklardan geçtiğini ve her durakta gecikmeyi gösterir. Bir durakta gecikme birden yükselip sonrakilerde yüksek kalıyorsa sorun orada başlıyordur. Yıldızlar (* * *) bazı yönlendiricilerin yanıt vermediğini gösterir ve tek başına arıza demek değildir.
6. Port ve servis kontrolü
Bir sunucuya IP ile erişiliyor ama uygulamaya erişilemiyorsa portu kontrol edin:
nc -vz SUNUCU 443
curl -I https://SUNUCU
ss -ltnp
nc portun açık olup olmadığını, curl -I HTTP yanıtını gösterir; ss -ltnp ise kendi makinenizde hangi servisin hangi adreste dinlediğini söyler. Uygulama 127.0.0.1'de dinliyorsa dışarıdan erişilemez, bu çoğu zaman istenen durumdur. Güvenlik duvarı reddediyor olabilir (UFW rehberi); engellenen bağlantılar journalctl -k içinde görünür (journalctl).
Hızlı tanı tablosu
| Ne çalışıyor? | Sorun nerede? |
|---|---|
| Hiçbir şey, adres yok | Kablo / Wi-Fi / DHCP |
| Ağ geçidi evet, 1.1.1.1 hayır | Modem / servis sağlayıcı |
| 1.1.1.1 evet, alan adı hayır | DNS |
| Alan adı evet, site açılmıyor | Karşı sunucu, port ya da güvenlik duvarı |
| Hepsi çalışıyor ama yavaş | Wi-Fi sinyali, hat hızı, yoğunluk |
Gerçek bir örnek
Bir otelde personel paneli bir sabah dışarıdan açılmıyordu, yerel ağdan açılıyordu. Yukarıdaki sırayı izledik: Pi'nin ağı vardı, internet vardı, DNS çalışıyordu. Sorun tünel servisindeydi: systemctl status cloudflared bağlantının koptuğunu gösterdi ve servis yeniden başlatılınca düzeldi. Bu tür durumların tekrarını önlemek için servise otomatik yeniden başlatma ve bir izleme ekledik (Cloudflare Tunnel, servis izleme).
Sık sorulan sorular
Ping gitmiyor ama site açılıyor, neden? Bazı sunucular ping'i (ICMP) kapatır; test için curl -I kullanın.
Wi-Fi mi kablo mu? Sunucu ve sabit cihazlar için kablo daima daha kararlıdır.
Modemi yeniden başlatmak neden çözüyor? Modemin belleği ve NAT tablosu dolabilir; ama tekrar eden bir sorunun nedenini bulmak için yukarıdaki sırayı izleyin.