iperf3 Handledning: Testa nätverkshastighet på Linux & Windows

10 min läsning - 7 maj 2026

hero section cover
Innehållsförteckning
  • iperf3-handledning: Mäta nätverksprestanda på Linux och Windows
  • Installera iperf3
  • Konfigurera servern
  • Körning av klienttester
  • Avancerade tester
  • Justering och felsökning
  • Videorekommendation
Dela

Installera iperf3, kör bandbreddstester och justera TCP-buffertar för korrekta resultat på Linux och Windows. Täcker UDP, dubbelriktad och 10GbE+ testning

iperf3-handledning: Mäta nätverksprestanda på Linux och Windows

iperf3 är ett kommandoradsverktyg för att mäta nätverksbandbredd, jitter och paketförlust mellan två maskiner. Det använder en klient-servermodell: en maskin lyssnar, den andra skickar trafik, och du får exakta genomströmningssiffror. Denna guide täcker installation, grundläggande och avancerade tester, samt hur du finjusterar ditt system för exakta resultat på höghastighetslänkar.

Installera iperf3

Debian / Ubuntu

sudo apt update
sudo apt install iperf3

Bekräfta installationen med iperf3 --version. Installera det på både server- och klientdatorerna.

Fedora / CentOS / Rocky / Alma

På Fedora 22+ eller CentOS 8+, Rocky eller AlmaLinux:

sudo dnf install iperf3

På CentOS 7, använd yum istället. Om paketet inte hittas, aktivera först EPEL-repositoriet:

sudo yum install epel-release
sudo yum install iperf3

Om din brandvägg är aktiv, öppna port 5201:

sudo firewall-cmd --add-port=5201/tcp --permanent
sudo firewall-cmd --reload

Windows

Ladda ner den fristående körbara filen från iperf.fr eller GitHub-repositoriet ar51an/iperf3-win-builds. Packa upp den till en mapp som C:\iperf3, och verifiera sedan:

cd C:\iperf3
iperf3.exe -v

För att köra iperf3 från valfri katalog, lägg till mappen i din system-PATH via Systemegenskaper > Avancerat > Miljövariabler. Du måste också skapa en inkommande brandväggsregel som tillåter TCP på port 5201 i Windows Defender-brandväggen.

Konfigurera servern

Starta servern med:

iperf3 -s

Detta lyssnar på TCP-port 5201 som standard. För att köra det i bakgrunden med loggning:

iperf3 -s -D --logfile /var/log/iperf3.log

Kontrollera att den körs med ss -tulpn | grep 5201.

Om port 5201 är blockerad i ditt nätverk, använd -p för att välja en annan port. För att binda till ett specifikt gränssnitt, använd -B:

iperf3 -s -B 192.168.1.10

För engångstester iperf3 -s -1 hanterar en enda klientanslutning och avslutas sedan. På länkar med hög bandbredd (40 Gbps+) kör du flera serverinstanser på olika portar för att kringgå begränsningarna för enkeltrådiga processorer.

Se till att din brandvägg tillåter trafik på den valda porten. På Ubuntu/Debian med UFW:

sudo ufw allow 5201/tcp
sudo ufw allow 5201/udp   # if testing UDP

Körning av klienttester

Grundläggande TCP-test

iperf3 -c 192.168.1.10

Detta mäter uppladdningsbandbredd över TCP under 10 sekunder. Förläng varaktigheten med -t:

iperf3 -c 192.168.1.10 -t 30

På 10 Gbps- eller 25 Gbps-länkar når en enskild TCP-ström ofta en topp på 3–5 Gbps på grund av begränsningar i enkelkärniga processorer. Använd parallella strömmar för att mätta länken:

iperf3 -c 192.168.1.10 -P 8

Läsa av resultaten

Varje intervallrad visar överföring (skickade data) och bithastighet (genomströmning). För TCP, observera även:

  • Retr (återutsändningar). Höga siffror innebär paketförlust eller överbelastning.
  • Cwnd (överbelastningsfönster). Om det är lågt eller fastnat begränsar buffert- eller fönsterstorleksbegränsningar genomströmningen.

På en ren 1 Gbps-länk kan du förvänta dig cirka 940 Mbps efter protokollöverhead. Testet avslutas med sammanfattningsrader för avsändare och mottagare. På ett stabilt nätverk bör dessa stämma väl överens.

För UDP-tester (-u flag) lägger utdata till jitter (variation i paketankomst) och förlorade/totala datagram. Jitter under 1 ms och 0 % förlust är idealiskt för realtidstrafik som VoIP.

Användbara flaggor

FlaggaSyfte
-c <IP>Anslut till server
-p <port>Använd en specifik port (standard: 5201)
-t <sec>Testtid i sekunder (standard: 10)
-i <sec>Rapportintervall
-P <num>Parallella strömmar
-uUDP-läge
-b <n>MMålbandbredd (UDP; standardvärdet är 1 Mbps om det utelämnas)
-ROmvänt läge (servern sänder, klienten tar emot)
-w <n>KTCP-fönster / storlek på socketbuffert
-JJSON-utdata
-ZZerocopy (minskar CPU-belastningen på snabba länkar)

Avancerade tester

Dubbelriktad testning

Flaggan --bidir flaggan (iperf3 3.7+) testar uppladdning och nedladdning samtidigt:

iperf3 -c 192.168.1.10 --bidir

Båda anslutningarna kommer från klienten, så detta fungerar genom NAT utan att öppna extra portar. Om resultaten för dubbelriktad testning är mycket lägre än för enkelriktad testning kan det hända att din router eller ditt kabelmodem har svårt att hantera full-duplex-trafik.

Omvänd läge

Flaggan -R flaggan vänder på dataflödet så att servern skickar och klienten tar emot. Detta mäter nedladdningshastigheten utan att byta roller:

iperf3 -c 192.168.1.10 -t 30 -i 5 -R

Stora skillnader mellan framåt- och bakåtresultat pekar på asymmetriska vägar, överbelastning eller felkonfigurationer av buffertar.

UDP-test

UDP-tester avslöjar jitter och paketförlust, vilket TCP döljer bakom återöverföringar. Ställ alltid in en målbandbredd med -b, eftersom iperf3 som standard använder 1 Mbps för UDP:

iperf3 -c 192.168.1.10 -u -b 1G

För att simulera VoIP-trafik (100 samtal, 200-byte-paket):

iperf3 -c 192.168.1.10 -u -b 8M -l 200

Kvalitetsriktmärken: jitter under 5 ms är bra för VoIP, över 30 ms orsakar hörbara problem. Paketförlust över 0,1 % försämrar realtidsmedia märkbart.

Justering och felsökning

Vanliga problem

Får du bara 100 Mbps på en gigabit-länk? Kontrollera hastigheten på ditt fysiska gränssnitt med ethtool eth0. Auto-negotiation misslyckas ibland och sänker länken till en lägre hastighet.

Visar MSS 536 byte på Ethernet? Path MTU Discovery är troligen inaktiverat. Standard-MSS för en MTU på 1 500 byte är 1 460 byte. Använd -m under testningen för att kontrollera. En MSS på 536 byte slösar bort bandbredd och ökar overhead.

Utnyttjar CPU:n sin kapacitet maximalt på snabba länkar? Använd -Z (zerocopy) för att minska CPU-belastningen. För 40 Gbps+ kör flera serverinstanser på olika portar och fördela dem över CPU-kärnorna.

Inkonsekventa resultat? Använd -O 3 för att utelämna de första sekunderna medan TCP-överbelastningsfönstret byggs upp. Låt det gå 30 sekunder mellan testkörningarna för att rensa nätverksbuffertarna.

Är en enskild ström mycket långsammare än parallella strömmar tillsammans? Om en ström når 200 Mbps men åtta strömmar tillsammans når 1,6 Gbps, begränsar TCP-fönstret eller OS-buffertarna den enskilda strömmen. Justera buffertarna nedan.

Justering av TCP-buffert

Börja med att beräkna bandbredd-fördröjningsprodukten: bandbredd x RTT. En 10 Gbps-länk med 50 ms RTT ger en BDP på 62,5 MB. Ställ in din maximala buffert till minst 2x BDP.

Lägg till dessa /etc/sysctl.d/99-tcp-tuning.conf och tillämpa med sudo sysctl -p:

ParameterRekommenderat (1–10 Gbps)
net.core.rmem_max134217728 (128 MB)
net.core.wmem_max134217728 (128 MB)
net.ipv4.tcp_rmem4096 131072 134217728
net.ipv4.tcp_wmem4096 131072 134217728
net.core.default_qdiscfq
net.ipv4.tcp_congestion_controlbbr

Håll net.ipv4.tcp_moderate_rcvbuf inställt på 1 så att kärnan automatiskt justerar inom dessa intervall. Aktivera net.ipv4.tcp_window_scaling (ställ in på 1) för TCP-fönster större än 64 KB.

Du kan också byta från standardalgoritmen CUBIC till Googles BBR. På länkar med hög latens och viss paketförlust ger BBR genomgående högre genomströmning än CUBIC.

Använd -w flaggan i iperf3 för att testa specifika buffertstorlekar, men notera att detta inte får överskrida kärnans rmem_max eller wmem_max. Börja med 8 MB för gigabit-länkar och 512 KB för 100 Mbps.

Om du tillhandahåller dedikerade servrar och vill validera nätverksprestanda, kör iperf3-baslinjetester direkt efter installationen och efter eventuella nätverksändringar för att upptäcka försämringar tidigt.

Videorekommendation

Blogg

Utvalda denna vecka

Fler artiklar
Varför det är viktigt att ha en kraftfull och omättad VPS

Varför det är viktigt att ha en kraftfull och omättad VPS

Behöver du tillförlitlig prestanda och obegränsad trafik? En kraftfull VPS utan mätning erbjuder den hastighet, skalbarhet och bandbredd du behöver, utan att du behöver oroa dig för användningsgränser.

3 min läsning - 9 maj 2025

Hur man optimerar lagringsutrymmet på Linux

15 min läsning - 22 maj 2026

Fler artiklar
background image

Har du frågor eller behöver du en anpassad lösning?

icon

Flexibla alternativ

icon

Global räckvidd

icon

Omedelbar driftsättning

icon

Flexibla alternativ

icon

Global räckvidd

icon

Omedelbar driftsättning