Testa Sophos Firewall-prestanda korrekt med iPerf3
iPerf3 mäter TCP- eller UDP-genomströmningen mellan två definierade ändpunkter. På så sätt går det att kontrollera om en sträcka mellan VLAN, genom en Sophos Firewall eller via en VPN-tunnel är långsammare än förväntat. Ett enskilt högt eller lågt värde bevisar dock ännu inte att brandväggen är problemet.
Ett tillförlitligt test kräver först en baslinje utan den misstänkta vägen. Därefter upprepas samma mätning genom brandväggen. Riktning, varaktighet, protokoll, strömmar, brandväggsregel och säkerhetsprofiler måste dokumenteras, annars jämförs resultat som tekniskt sett inte är jämförbara.
⚠️ Planera belastningstestet: iPerf3 kan belasta en anslutning fullt ut. Tester i produktionsmiljö ska genomföras i ett underhållsfönster eller medvetet under den tillgängliga bandbredden. Låt aldrig servern vara åtkomlig från internet i onödan.
Vad iPerf3 mäter
iPerf3 består av en server och en klient. Som standard skickar klienten testdata till servern. Med -R vänds riktningen. Mätvärdet gäller alltid endast för just dessa ändpunkter, denna väg och dessa parametrar.
De tre viktigaste testtyperna besvarar olika frågor:
| Test | Vad resultatet visar |
|---|---|
| TCP, en ström | Genomströmningen för en typisk enskild anslutning, inklusive överbelastningskontroll och omsändningar |
| TCP, flera strömmar | Användbar total kapacitet när en enskild ström begränsas av latens eller ändpunktens prestanda |
| UDP med målbandbredd | Förlust, Jitter och uppnådd Bitrate vid en medvetet angiven belastning |
iPerf3 mäter inte applikationsprestanda. SMB, RDP, VoIP eller en webbapplikation kan vara långsamma trots bra iPerf-värden. Omvänt kan en enskild TCP-ström på en sträcka med hög latens ligga under den tillgängliga anslutningskapaciteten trots att brandväggen och WAN fungerar korrekt.
För ett internettest direkt ur enhetens perspektiv är internettest via SSH på Sophos Firewall den lämpligare artikeln. iPerf3 är bättre när två kontrollerade ändpunkter och vägen mellan dem ska undersökas.
Planera testväg och baslinje
Före det första kommandot fastställs klient, server och den sträcka som ska testas. En lämplig mätserie har tre steg:
- Baslinje för ändpunkterna: Testa klient och server i samma lokala nätverk eller via en känd snabb switch. Om värdet redan är dåligt ska klient, server, NIC, värdbrandvägg, hypervisor eller WLAN undersökas först.
- Brandväggsväg: Testa samma ändpunkter via avsedda VLAN eller zoner och den faktiska Sophos Firewall-regeln.
- WAN- eller VPN-väg: Först därefter upprepas testet via internetleverantör, SD-WAN, Site-to-Site VPN eller Remote Access.
Trådbundna ändpunkter är bättre än WLAN-klienter för att bedöma brandväggen. På båda systemen bör energisparfunktioner, CPU-belastning, virtuella NIC och parallell trafik vara kända. Server och klient bör om möjligt använda samma huvudversion av iPerf3; iPerf2 och iPerf3 är inte kompatibla.
Förbered brandväggsregeln
iPerf3 använder som standard port 5201. Ett TCP-test kräver TCP 5201. Vid ett UDP-test överförs testdata via UDP 5201, men kontrollanslutningen använder fortfarande TCP. En Sophos-tjänstegrupp för UDP-tester måste därför innehålla både TCP och UDP 5201.
Den tillfälliga regeln under Rules and policies > Firewall rules ska endast tillåta den konkreta käll-IP-adressen, mål-IP-adressen och iPerf-tjänsten. Aktivera Log firewall traffic och anteckna Rule ID. Skapa ingen bred Any-regel och ingen internetexponering enbart för att starta testet snabbare.
Kontrollera efter att regeln har sparats i Log viewer att exakt denna regel matchar. Om tilldelningen är oklar kan riktad testning av Sophos Firewall-regler hjälpa.
Installera iPerf3 och säkra servern
Den officiella projektdokumentationen och källkodspaketen finns hos ESnet iPerf3. ESnet anger Ubuntu Linux, FreeBSD och macOS som officiellt stödda plattformar. Binärpaket för Windows kommer i praktiken ofta från tredjepartsleverantörer; en välkänd översikt finns hos iPerf.fr.

Starta servern på målsystemet så här:
iperf3 -s
Det är säkrare att binda processen till test-IP-adressen och avsluta den automatiskt efter en klientanslutning:
iperf3 -s -B 10.10.10.50 -1
-B binder iPerf3 till den angivna adressen. -1 accepterar högst en klientanslutning och avslutar därefter servern. Kommandot måste startas på nytt för varje ytterligare enskilt test. Om en annan port ska användas måste den anges identiskt på båda sidor:
iperf3 -s -B 10.10.10.50 -p 5200 -1
Den lokala värdbrandväggen på servern kan också blockera porten. Begränsa även denna regel till testkällan och den tid som behövs.
Testa TCP i båda riktningarna
Det första testet använder en enda TCP-ström och körs i 30 sekunder:
iperf3 -c 10.10.10.50 -t 30

Som standard skickar klienten till servern. Därefter testas motsatt riktning med samma ändpunkter:
iperf3 -c 10.10.10.50 -t 30 -R
Om riktningarna skiljer sig kraftigt är asymmetrisk WAN-bandbredd, routing, SD-WAN, gränssnittsfel, VPN-parametrar eller en ändpunkt mer sannolika orsaker än en allmän genomströmningsbegränsning.
Först efter testet med en ström görs vid behov en jämförelse med fyra parallella strömmar:
iperf3 -c 10.10.10.50 -t 30 -P 4
Om -P 4 är betydligt snabbare kan en enskild TCP-ström begränsas av latens, TCP-fönster eller ändpunktens prestanda. Resultatet motsvarar inte automatiskt den hastighet som en enskild applikation uppnår. --bidir belastar båda riktningarna samtidigt och lämpar sig bättre som ett riktat stresstest än för en tydlig riktningsjämförelse.
Testa UDP kontrollerat
Ett UDP-test kräver alltid en realistisk målbandbredd. Utan -b använder iPerf3 som standard endast 1 Mbit/s; det räcker inte för att bedöma en sträcka på 100 Mbit/s eller en gigabitsträcka.
Exempel med 100 Mbit/s:
iperf3 -c 10.10.10.50 -u -b 100M -t 30
Börja inte direkt med anslutningens teoretiska kapacitet. Testa först exempelvis 60 till 80 procent av den förväntade användbara bandbredden och öka sedan målvärdet stegvis. För ett VPN måste även protokoll- och krypteringspåslaget tas med i beräkningen.
Tre värden är avgörande för UDP:
- Bitrate: den datahastighet som faktiskt uppnåddes.
- Jitter: variationen i överföringstid mellan paketen.
- Lost/Total Datagrams: paketförlust som identifierats av mottagaren.
En avsiktligt för hög målbandbredd skapar i sig paketförlust. Det är ett gränstest, men inget bevis på en felaktig brandvägg. Även för UDP testas motsatt riktning separat med -R.
Övervaka Sophos Firewall under testet
Ett iPerf-resultat blir meningsfullt först när det tidsmässigt korreleras med brandväggen. Under testet på 30 sekunder bör följande vara synligt:
- I Log viewer stämmer Rule ID, källa, mål, tjänst och den tillåtna anslutningen.
- I Control center visar CPU, Memory, Bandwidth och Sessions om enheten når en gräns under testet.
- Under Diagnostics > System graphs kontrolleras Bits, Drops, Errors och Collisions i Interface graphs för de berörda gränssnitten.
- Under Diagnostics > Packet capture kan ett snävt filter på klient, server och port 5201 visa om paket släpps eller behandlas av oväntade moduler.
Packet Capture visar bland annat brandväggsregelnummer samt nummer för Web-, Application- och IPS-policyer. Håll insamlingen kort, använd snäva filter och stoppa den efter testet. Artikeln Packet Capture på Sophos Firewall beskriver utvärderingen mer ingående.
Isolera säkerhetsprofiler
Om ändpunkternas baslinje är bra och endast brandväggsvägen är långsam ska inte allt avaktiveras samtidigt. Dokumentera först den regel som faktiskt matchar och dess säkerhetsprofiler. Ändra därefter exakt en variabel i ett underhållsfönster och upprepa samma test.
En diagnostikregel utan ytterligare inspektion får endast vara snävt begränsad till testkälla, testmål och iPerf-tjänst. Efter jämförelsemätningen ska den omedelbart avaktiveras eller tas bort. På så sätt går det att avgöra om IPS, Application Control, Traffic Shaping eller en annan policy påverkar resultatet utan att lämna övrig trafik oskyddad.
Tolka resultaten korrekt
För TCP är sammanfattningarna för sender och receiver samt antalet omsändningar viktiga. Många omsändningar tyder på förlust eller en störd sträcka, inte automatiskt på för låg CPU-kapacitet i brandväggen. Ett bra lokalt baslinjevärde och ett dåligt värde genom brandväggen begränsar felsökningen, men identifierar ännu inte orsaken.
Typiska mönster:
- Långsamt redan i samma LAN: Kontrollera ändpunkter, NIC-drivrutiner, virtuell plattform, värdbrandvägg eller WLAN.
- Långsamt endast genom brandväggen: Undersök regel, säkerhetsprofiler, Traffic Shaping, gränssnittsfel och systembelastning.
- Långsamt endast via VPN: Kontrollera WAN-kvalitet, latens, krypteringsprofil, tunnelrutt samt MTU och MSS.
- Långsamt endast i en riktning: Jämför omvänt test, gränssnittsräknare, asymmetrisk routing och internetleverantörens upstream.
- En ström är långsam, flera strömmar är snabba: Bedöm latens, TCP-fönster och ändpunktens prestanda innan en begränsning i brandväggen antas.
- Endast en offentlig server är långsam: Belastning, avstånd eller peering för den externa servern kan begränsa resultatet.
Offentliga iPerf-servrar lämpar sig högst för en grov internetjämförelse. För felsökning av brandvägg, VPN eller platsanslutning ger en egen kontrollerad server på andra sidan mer tillförlitliga resultat.
Dokumentera mätningen och återställ miljön
För att en jämförelse före och efter en ändring ska kunna följas i efterhand dokumenteras minst datum, klient, server, riktning, kommando, Rule ID, säkerhetsprofiler, VPN- eller WAN-väg samt resultat för sender och receiver. Ändra alltid endast en variabel mellan två körningar under en felsökning.
Efter avslutat test:
- Stoppa iPerf3-servern.
- Ta bort regeln i värdbrandväggen.
- Avaktivera eller radera den tillfälliga Sophos Firewall-regeln och testtjänsten om de inte längre behövs.
- Återställ ändrade säkerhetsprofiler till avsett tillstånd.
- Kontrollera Log viewer och gränssnittsräknarna ännu en gång efter tappade paket eller fel.
FAQ
Mäter iPerf3 internethastigheten för Sophos Firewall?
Kräver ett UDP-test både TCP och UDP port 5201?
Varför är UDP-testet så långsamt utan -b?
-b är standardmålbandbredden för UDP 1 Mbit/s. För en meningsfull mätning måste en realistisk målbandbredd anges och ökas stegvis.Varför bör man testa motsatt riktning med -R?
-R låter servern skicka till klienten utan att byta roller på ändpunkterna. På så sätt blir asymmetriska anslutnings-, routing-, VPN- eller gränssnittsproblem synliga snabbare.