Bağlantı hızını iperf ile kontrol etme

Bağlantı hızını iperf ile kontrol etme

iperf, iki cihaz arasında veri aktarım hızını ölçmeyi sağlayan güçlü bir ağ bant genişliği test aracıdır. Sistem yöneticileri ve mühendisler tarafından ağ sorunlarını teşhis etmek ve bağlantı performansını değerlendirmek için yaygın olarak kullanılır. Bu makalede, iperf'in nasıl kurulacağı, nasıl kullanılacağı ve doğru çalışması için güvenlik duvarının nasıl yapılandırılacağı ele alınacaktır.

iperf Kurulumu

Başlamadan önce, iperf'i her iki cihaza da kurmanız gerekir: sunucu (trafiği alan) ve istemci (trafiği gönderen). İki popüler sürüm vardır — iperf2 ve iperf3. Aktif olarak desteklendiği ve geliştirilmiş özellikler sunduğu için iperf3 kullanmanızı öneririz.

Linux Üzerine Kurulum

  • Ubuntu/Debian:

    sudo apt update
    sudo apt install iperf3
  • CentOS/RHEL:

    sudo yum install iperf3

Windows Üzerine Kurulum

  1. iperf3'ü resmi web sitesinden indirin (örneğin, https://iperf.fr/)
  2. Arşivi uygun bir klasöre çıkarın (örneğin, C:\iperf).
  3. Kolay erişim için klasör yolunu PATH ortam değişkenine ekleyin.

macOS Üzerine Kurulum

  • Homebrew aracılığıyla:

    brew install iperf3

Kurulumdan sonra, aracın çalıştığından emin olmak için sürümü kontrol edin:

iperf3 --version

iperf Nasıl Çalışır?

iperf, istemci-sunucu modeline göre çalışır:

  • Sunucu: Bir cihazda çalışır ve gelen bağlantıları bekler.
  • İstemci: Sunucuya bağlanır ve hız ölçümü için veri gönderir.

Varsayılan olarak, iperf3 TCP 5201 portunu kullanır (iperf2 5001 kullanır). -p seçeneğiyle portu değiştirebilirsiniz.

iperf için Güvenlik Duvarı Yapılandırması

iperf'in doğru çalışması için cihazınızdaki güvenlik duvarının iperf tarafından kullanılan portları (varsayılan olarak TCP 5201, ancak -p ile başka bir port belirtilebilir) engellemediğinden emin olmanız gerekir. Aşağıda farklı işletim sistemleri için güvenlik duvarı yapılandırma talimatları verilmiştir.

Windows

  1. Güvenlik duvarı ayarlarını açın:

    • Win + R tuşlarına basın, control yazın ve "Windows Defender Güvenlik Duvarı"nı seçin.
    • "Windows Defender Güvenlik Duvarı üzerinden bir uygulamaya veya özelliğe izin ver" seçeneğine gidin.
  2. iperf için bir kural ekleyin:

    • "Başka bir uygulamaya izin ver" seçeneğine tıklayın, ardından "Gözat" ile iperf3.exe dosyasını seçin.
    • Özel ve genel ağlar için gelen ve giden bağlantılara izin verin.
  3. Port için kural oluşturma (alternatif yöntem):

    • "Gelişmiş ayarlar"da "Gelen Kurallar" → "Yeni Kural" seçeneğini seçin.
    • "Port"u seçin, TCP ve portu (örneğin, 5201) belirtin, ardından bağlantıya izin verin.
    • Gerekirse giden bağlantılar için tekrarlayın.

Linux

Dağıtıma bağlı olarak farklı güvenlik duvarı yönetim araçları kullanılır:

  • ufw için (Ubuntu, Debian):

    sudo ufw allow 5201/tcp
    sudo ufw status # Durumu kontrol et
  • firewalld için (CentOS, RHEL):

    sudo firewall-cmd --add-port=5201/tcp --permanent
    sudo firewall-cmd --reload
    sudo firewall-cmd --list-ports # Açık portları kontrol et
  • iptables için (manuel yapılandırma):

    sudo iptables -A INPUT -p tcp --dport 5201 -j ACCEPT
    sudo iptables -A OUTPUT -p tcp --sport 5201 -j ACCEPT

macOS

  1. Güvenlik duvarı ayarlarını açın:

    • "Sistem Ayarları" → "Güvenlik ve Gizlilik" → "Güvenlik Duvarı" sekmesine gidin.
    • Güvenlik duvarının etkin olduğundan emin olun.
  2. Bir istisna ekleyin:

    • "Güvenlik Duvarı Seçenekleri"ne tıklayın → "+" ile iperf3 uygulamasını ekleyin.
    • Gelen bağlantılara izin verin.
  3. Terminal üzerinden (alternatif):

    echo "pass in proto tcp from any to any port 5201" | sudo pfctl -f -
    sudo pfctl -e # Güvenlik duvarını etkinleştir

Genel Öneriler

  • iperf komutunda kullanılan portun (örneğin, iperf3 -s -p 5201) güvenlik duvarında açılan portla eşleştiğinden emin olun.
  • Portun dinlenip dinlenmediğini kontrol etmek için netstat veya ss kullanın (örneğin, ss -tuln | grep 5201).
  • Testler internet üzerinden yapılıyorsa, yönlendirici veya bulut sunucusunun güvenlik duvarını yapılandırın.

iperf Kullanımı

Sunucuyu Başlatma

Sunucu olarak işlev görecek cihazda şu komutu çalıştırın:

iperf3 -s

Sunucunun çalıştığını ve 5201 portunda dinlediğini belirten bir mesaj göreceksiniz.

İstemciyi Başlatma

İkinci cihazda (istemci) sunucunun IP adresini belirtin:

iperf3 -c 192.168.1.100
  • -c: İstemci modu.
  • 192.168.1.100: Sunucunuzun IP adresiyle değiştirin.

Varsayılan olarak test 10 saniye sürer. Sonuçlar, veri aktarım hızını saniyede megabit (Mbps) cinsinden gösterecektir.

Herkese Açık Sunucu ile Test Yapma

Kendi sunucunuzu çalıştıramıyorsanız, herkese açık iperf sunucularını kullanabilirsiniz. Örneğin, Bouygues Telecom’un sunucusu:

iperf3 -c bouygues.iperf.fr

Bu komut, bouygues.iperf.fr adlı herkese açık sunucuya bağlanır (varsayılan olarak 5201 portunu kullanır) ve cihazınız ile sunucu arasındaki hızı ölçer. Herkese açık sunucuların erişilebilirliğinin değişebileceğini ve sonuçların internet bağlantınıza bağlı olduğunu unutmayın.

Faydalı Seçenekler

  • -t <süre>: Test süresi saniye cinsinden (örneğin, -t 30).
  • -p <port>: Port belirtin (örneğin, -p 5001).
  • -u: TCP yerine UDP kullanın.
  • -b <hız>: Bant genişliğini sınırlayın (örneğin, -b 10M için 10 Mbps).
  • -R: Ters yönü test edin (sunucudan istemciye).

UDP testi örneği:

iperf3 -c 192.168.1.100 -u -b 100M

Sonuçların Yorumlanması

Test tamamlandığında, iperf3 sonuçları bir tablo halinde gösterir:

  • Interval: Zaman aralığı.
  • Transfer: Aktarılan veri miktarı.
  • Bandwidth: Bant genişliği Mbps cinsinden.

Yerel bir test için örnek çıktı:

[  5]   0.00-10.00  sec  1.13 GBytes  970 Mbits/sec

Bu, 10 saniyede 1,13 GB veri aktarımı ile ortalama 970 Mbps hız olduğunu gösterir.

bouygues.iperf.fr herkese açık sunucu ile test için örnek çıktı:

iperf3 -c bouygues.iperf.fr
Connecting to host bouygues.iperf.fr, port 5201
[ 4] local 192.168.0.47 port 56396 connected to 89.84.1.222 port 5201
[ ID] Interval           Transfer     Bandwidth       Retr  Cwnd
[ 4]   0.00-1.00   sec  608 KBytes  4.98 Mbits/sec  0     48.1 KBytes
[ 4]   1.00-2.00   sec  1.24 MBytes  10.4 Mbits/sec  0     80.6 KBytes
[ 4]   2.00-3.00   sec  1.62 MBytes  13.6 Mbits/sec  0     120 KBytes
[ 4]   3.00-4.00   sec  2.11 MBytes  17.7 Mbits/sec  0     151 KBytes
[ 4]   4.00-5.00   sec  2.92 MBytes  24.5 Mbits/sec  0     173 KBytes
[ 4]   5.00-6.00   sec  2.98 MBytes  25.0 Mbits/sec  0     191 KBytes
[ 4]   6.00-7.00   sec  3.42 MBytes  28.7 Mbits/sec  0     212 KBytes
[ 4]   7.00-8.00   sec  1.30 MBytes  10.9 Mbits/sec  0     212 KBytes
[ 4]   8.00-9.00   sec  445 KBytes  3.65 Mbits/sec  1     212 KBytes
[ 4]   9.00-10.00  sec  891 KBytes  7.30 Mbits/sec  0     212 KBytes
[ ID] Interval           Transfer     Bandwidth       Retr
[ 4]   0.00-10.00  sec  17.5 MBytes  14.7 Mbits/sec  1     sender
[ 4]   0.00-10.00  sec  16.7 MBytes  14.0 Mbits/sec        receiver

Bu durumda test, 10 saniyede 17,5 MB veri aktarımı ile ortalama 14,7 Mbps (gönderici) ve 14,0 Mbps (alıcı) hız olduğunu gösteriyor. Retr sütunu yeniden iletimleri (bu durumda 1) belirtir ve Cwnd, test sırasında artan tıkanıklık penceresi boyutunu gösterir.

Sonuç

iperf, ağ hızını test etmek için basit ve etkili bir araçtır. Yerel ağda veya bouygues.iperf.fr gibi herkese açık sunucularla bağlantıda darboğazları hızlıca tespit etmenizi ve gerçek performansı değerlendirmenizi sağlar. Güvenlik duvarınızın doğru yapılandırıldığından emin olun ve ihtiyaçlarınıza uygun seçenekleri kullanın. Sorularınız varsa, aşağıya yorum bırakın!