Permalänk
Medlem

Nätverket dör vid filöverföring

Jag har nyligen gjort om lite i nätverket hemma i samband med att jag fick en ny server och har stött på ett problem med den nya servern.
När jag kopierar en fil till/från den nya servern så dör nätverket i 99 fall av 100 och jag lyckas inte lista ut varför det händer.

Såhär är det uppsatt (förenklat):
Server 1 (ESXi)

  • pfSense

  • Ubuntu för filöverföringar

Server 2 (ESXi)

  • OpenMediaVault (filserver)

  • Några ytterligare VMs som för stunden är nedstängda

Switch
Cisco SG350-28

Nätverket är uppsatt med flertalet VLAN och Ubuntu VM:en och OMV ligger på separata VLAN.
Portarna på switchen för pfSense och VM:s är uppsatta som trunk för att kunna hantera flera olika VLAN.
pfSense har en dedikerad NIC för LAN och sedan är en annan NIC uppsatt för VM:s (en NIC per server så klart).

Händelseförlopp:
Jag startar en SSH-anslutning från min PC till Ubuntu VM:en som i sin tur har en mapp monterad som är utdelad från OMV.
När jag sedan försöker kopiera (eller flytta) en större fil till/från Ubuntu VM:en till OMV så dör hela mitt nätverk.
Samtliga VM:s är åtkomliga om jag ansluter direkt till respektive server. pfSense kör utan problem och har access mot omvärlden men ingen access till nåt inom mitt LAN.
Konsolen för switchen rapporterar att samtliga anslutna nätverksportar är uppe och igång, och under fileröverföringen så dyker inga felmeddelanden upp.
För att få igång nätverket igen så måste jag starta om switchen genom att dra ur strömsladden.

Det går fint att flytta mindre filer, men när de går upp i storlek, några GB, så sker ovanstående.
Det går dessutom fint att föra över filer från omvärlden till Ubuntu-VM:en, det är internt på LAN som det strular.

Med lite support på reddit (länk) så trodde jag att jag hittat felet, en NIC på moderkortet på server 1 som inte mådde bra, för när jag bytte till annan NIC gick det utmärkt att flytta filer, men nu har felet uppstått igen.
Med den "dåliga" NIC:en var jag dessutom tvungen att stänga ner Ubuntu VM:en för att inte nätverket skulle krascha omgående efter omstart av switchen, men med den nya NIC:en så kan jag åtminstone ha den VM:en igång.

Loggarna på respektive VM pekar inte på några konstigheter. Loggarna i pfSense säger ingenting och som sagt så får jag ingen konstig output från switchen (och självklart inget i loggen heller).

Ubuntu-VM:en var tidigare på server 2 och om jag startar upp den där så kan jag göra filöverföringar utan problem, så det är nåt specifikt med Server 1 som skapar den här problematiken.
Konfigurationen på VM och nätverk är identisk om jag kör den på server 2, så jag kan inte se att jag gjort nåt konfigurationsmisstag.

Nån som har tips på saker att försöka eller undersöka för att komma till rätta med detta?

Permalänk
Rekordmedlem

Skulle det kunna vara din lagring som spökar ? Prova att isolera till nätverket tex genom att prova med iperf och ange en stor datamängd att testa med för det låter lite på din beskrivning som att det kan vara nån cache i lagringen som blir full och sedan stannar det.

Permalänk
Medlem
Skrivet av mrqaffe:

Skulle det kunna vara din lagring som spökar ? Prova att isolera till nätverket tex genom att prova med iperf och ange en stor datamängd att testa med för det låter lite på din beskrivning som att det kan vara nån cache i lagringen som blir full och sedan stannar det.

Hmm, skulle det kunna vara lagringen på Ubuntu VM:en? Den använder en SSD för själva operativet men en HDD för all övrig lagring.
På den gamla installationen av den VM:en så användes bara SSD.
Men jag ser inte kopplingen till att cache på lagringen skulle sänka hela nätverket.

Permalänk
Rekordmedlem
Skrivet av Ohjay:

Hmm, skulle det kunna vara lagringen på Ubuntu VM:en? Den använder en SSD för själva operativet men en HDD för all övrig lagring.
På den gamla installationen av den VM:en så användes bara SSD.
Men jag ser inte kopplingen till att cache på lagringen skulle sänka hela nätverket.

Det var bara en tanke, många testar ju mer saker när de säger att de testar nätverk och att blanda in lagring ger fler möjligheter för problem så försök utesluta lagringen, jag vet inte hur dina prylar reagerar tex när skrivcacheerna blir fulla mwn det kanske påverkar på nått underligt sätt.

Permalänk
Medlem

Kör en vända "iperf" och kolla om det verkligen är nätverket som spökar.

Permalänk
Medlem

Saken är ju den att allt fungerar fint när Server 1 inte är inblandad i filöverföringen, mer än att pfSense routar nätverkstrafiken då.
Så jag vet att lagringen på filservern (OMV) är ok, inklusive nätverkskonfig i pfSense och switch.

Men jag ska köra en vända iperf imorrn, eller flera rent av, för att se vad som händer.

Permalänk
Medlem

Har du på promiscuous mode på dina vswitchar? Prova utan om din setup klarar det.

Permalänk
Medlem

När allt har hängt sig räknar det upp paket på interfacen på switchen? Kan du se om det droppas några paket?

Låter nästan som en lager 2 loop som bara triggas igång när du kopierar internt men inte från extern källa. Har lite svårt att visualisera hur du har kopplat och konfat allt dock så svårt att säga.

Permalänk
Medlem
Skrivet av BergEr:

Har du på promiscuous mode på dina vswitchar? Prova utan om din setup klarar det.

Nej, promiscuous mode är inte aktiverat på någon vSwitch.

Skrivet av era909:

När allt har hängt sig räknar det upp paket på interfacen på switchen? Kan du se om det droppas några paket?

Låter nästan som en lager 2 loop som bara triggas igång när du kopierar internt men inte från extern källa. Har lite svårt att visualisera hur du har kopplat och konfat allt dock så svårt att säga.

Har faktiskt inte kollat om den räknar upp paket eller om de droppas i samband med att nätverket slutar fungera.
Får kolla i konsolen imorgon när jag testar vidare.

Det som talar emot en lager 2 loop är att en exakt likadant konfigurerad VM, men på server 2, inte skapar samma problematik.
Dvs det är samma VLAN, samma nätverksport på switchen. Jag har även testat med samma IP (inte med båda VM igång så klart), och det fungerar fint.
Det som skiljer i det fallet är serverhårdvaran inklusive NIC (dock är båda Intel).

Permalänk
Medlem

Vad har du för MTU på dina nätverksinterface?

Sändare och mottagare måste ha samma MTU p.g.a. fel i SSH-protokollet. De måste också vara de lägsta i hela systemet, med andra ord, ingen mellanhand får vara lägre.

Förutom det påminner beteendet om loopning. Men hade det varit det skulle paketen påverkas även när du gör små överföringar.

Vad säger STP?

Blir det samma resultat över IPv6?

Har du provat att routa trafiken från ett nätverkskort på server 2 tillbaka till ett annat på server 2?

Har också varit med om att fibernätverkskort från ASUS betett sig riktigt underligt i kombination med vissa SFP+-moduler. Kör du switchar med SFP-moduler?

Permalänk
Medlem
Skrivet av Marida:

Vad har du för MTU på dina nätverksinterface?

Sändare och mottagare måste ha samma MTU p.g.a. fel i SSH-protokollet. De måste också vara de lägsta i hela systemet, med andra ord, ingen mellanhand får vara lägre.

Förutom det påminner beteendet om loopning. Men hade det varit det skulle paketen påverkas även när du gör små överföringar.

Vad säger STP?

Blir det samma resultat över IPv6?

Har du provat att routa trafiken från ett nätverkskort på server 2 tillbaka till ett annat på server 2?

Har också varit med om att fibernätverkskort från ASUS betett sig riktigt underligt i kombination med vissa SFP+-moduler. Kör du switchar med SFP-moduler?

MTU är standardkonfiguration, har inte rört det på vare sig servrar eller switch.
Kommer bara åt MTU-konfig via konsol på switchen, så dubbelkollar imorgon att den stämmer överens med servrarna.

Är osäker på exakt filstorlek där beteendet uppstår, men filer under 1 GB funkar fint. Tror det är större än 4-5 GB som det går åt skogen (dock gissning).

Har väldigt begränsad erfarenhet av STP, nåt specifikt du tänker på?
STP är aktivt på samtliga portar på switchen och jag tycker jag borde fått konsol-output om det varit nåt på tok med STP, ex att STP guard triggas.

Har inte testat IPv6.

Annat nätverkskort eller bara annan nätverksport? Har möjlighet att göra båda då jag dels har NICs på moderkortet men även ett extra nätverkskort.
Eftersom trafiken passerar pfSense så går trafiken över två olika NICs på server 1, och i dagsläget på samma nätverkskort(Intel). Men första konfig jag gjorde med den "dåliga" NIC:en jag nämnde så hade Ubuntu VM:en NIC på annat nätverkskort(Broadcom).
Långt svar, men ja.

Inga SFP-moduler används.

Permalänk
Medlem

Vet att du skrivit att du har standard MTU men det luktar ju verkligen som att du har jumbo frames påslaget på någon vmk på server2

Permalänk
Medlem
Skrivet av Ohjay:

MTU är standardkonfiguration, har inte rört det på vare sig servrar eller switch.
Kommer bara åt MTU-konfig via konsol på switchen, så dubbelkollar imorgon att den stämmer överens med servrarna.

Är osäker på exakt filstorlek där beteendet uppstår, men filer under 1 GB funkar fint. Tror det är större än 4-5 GB som det går åt skogen (dock gissning).

Har väldigt begränsad erfarenhet av STP, nåt specifikt du tänker på?
STP är aktivt på samtliga portar på switchen och jag tycker jag borde fått konsol-output om det varit nåt på tok med STP, ex att STP guard triggas.

Har inte testat IPv6.

Annat nätverkskort eller bara annan nätverksport? Har möjlighet att göra båda då jag dels har NICs på moderkortet men även ett extra nätverkskort.
Eftersom trafiken passerar pfSense så går trafiken över två olika NICs på server 1, och i dagsläget på samma nätverkskort(Intel). Men första konfig jag gjorde med den "dåliga" NIC:en jag nämnde så hade Ubuntu VM:en NIC på annat nätverkskort(Broadcom).
Långt svar, men ja.

Inga SFP-moduler används.

Viktigaste i det här fallet är att ringa in felet, nog för att det är klokt att kolla det som är enkelt att kolla innan något mer avancerat. Är du säker på att felet är på server 1 och inte switcharna så finns det ingen poäng att koppla det mot den server som fungerar.

Skrivet av Spiffman:

Vet att du skrivit att du har standard MTU men det luktar ju verkligen som att du har jumbo frames påslaget på någon vmk på server2

Jumbo frames är onekligen trevligt när det handlar om filöverföringslänkar, men definitionen av jumbo frames är tvetydig och det finns olika storlekar som alla definieras som jumbo. Kolla upp det exakta värdet på alla ingående nätverkskomponenter, lär vara minst 6 st. Sätt storleken till den minsta MTU du hittat om du vill köra jumbo. Annars sätt alla länkar till 1500 (standard). IPv6 kan hjälpa för den hanterar trafik och MTU på ett annat sätt så det finns ett värde i att testa det. Du kan antingen köra ULA-adresser (FC00::/7, Påminner om 192.168.x.y) eller länklokala (fe80::/64) adresser om du inte har en global IPv6 in.

Permalänk
Medlem

Så, nu har jag testat och kollat det som rekommenderades igår.

MTU - Jumbo frames är inte aktiverat på switchen och jag kan inte se vad standardvärdet på MTU är, men enligt Ciscos Data Sheet så är standard MTU 2000.
Samtliga vSwitchar har MTU på 1500. Kollade även MTU på Ubuntu VM:en, och även den är 1500. Min desktop PC har också 1500 MTU.

iperf (S=server, C=klient)
Test utfört med en överföring på 60s (6.5GB, 900-950 Mbit/s).
Ubuntu VM (S) - Desktop (C) = Allt fungerade fint.
Desktop (S) - Ubuntu VM (C) = Allt fungerade fint.
Ubuntu VM (S) - OMV (C) = Allt fungerade fint
OMV (S) - Ubuntu VM (C) = Allt fungerade fint

Test utfört med en överföring på 5 minuter (32.5GB, 930 Mbit/s).
OMV (S) - Ubuntu VM (C) = Allt fungerade fint

Paket på interfacen när nätverket dör
Inte kollat då testerna med iperf tyder på att det faktiskt inte är nätverket som är orsaken utan troligtvis lagringen för Ubuntu VM:en

Permalänk
Medlem

Jag kan ha fattat fel hur ditt nätverk funkar, eller hur du tänkt att ditt nätverk ska funka: men när du gör filöverföringen PC-Ubuntu-OMV så kommer det rimligen vara minst två ”connections”/uppkopplingar i transportlagret (TCP och/eller UDP). När du kör iperf3 så testar du bara en uppkoppling åt gången och du skriver inte vilket protokoll du testat med. Lång utläggning för att säga: Du har uppenbarligen inte testat det som triggar felet med iperf3, alltså är det inte lätt att dra några slutsatser från iperf3-testet.

Jag fattar inte hur många gånger pfSense kommer brandvägga paket med filöverföringsinnehåll när du kör filöverföringen. Två, en för vardera transportlageruppkopplingen? Om pfSense-NICet skickar samma filinnehåll två gånger i vardera riktningen borde hastigheten bli runt 500Mbit/s. Inget som borde trigga ett fel i så fall, bara en liten fundering om att uppsättningen är en smula komplicerad.

Jag fattar inte heller hur lagringen på Ubuntu skulle kunna ha något med saken att göra, Ubuntu mountar väl lagringsdisken från OMV?

Om det du skriver faktiskt är korrekt, att nätverket dör efter en stor filöverföring så skulle jag formulera det så här i stället: Det är uppenbarligen switchen som dör, inte nätverket. Det ska den inte göra, även om något enstaka NIC kopplat till den beter sig illa.

Om jag hade varit i din sits så hade jag hållit testet konstant (filöverföring PC-Ubuntu-OMV) och förändrat nätet tills det funkar.

Förslag:

1) Eliminera switch-hårdvaran, kör med en dum-switch i stället. PfSense bör rimligen vara eliminerat helt här.
2) Eliminera switch-konfigurationen, kör med Ciscon i dum-switch-läge, fabriksåterställd?
3) Som 2, men med uppdaterad firmware om du inte redan gjort det.

Om allt det funkar, börja lägg på switch-konfigurationen igen. Håll pfSense borta ur ekvationen så länge det går och se om det är där problemet ligger.

Permalänk
Medlem

Filöverföringen är mellan OMV och Ubuntu. Jag vill alltså kopiera/flytta en fil från en utdelad mapp i OMV(som är mountad i Ubuntu) till den lokala lagringen på Ubuntu VM:en.
Ex:

Mappar på Ubuntu: /nfs/OMV_mount/nån_fil /home/user/mapp/ Kommando: cp /nfs/OMV_mount/nån_fil /home/user/mapp/

Min PC är enbart med i bilden för att det är där jag ansluter till mina VM:s för att styra dem. Istället för SSH skulle jag lika gärna kunna köra konsolen i VMWare.

Jag testade bara TCP med iperf3, port 5001.

Jag trodde också att det var switchen som dör, men jag kommer åt den via seriell konsol och den svarar på kommandon och listar statusar/statistik så den är ju inte fryst, den bara bara slutar transportera nätverkstrafiken. Det kan ju fortfarande vara switchen som är boven i dramat men jag tror inte det.

Det som pekar på att det är nåt i Server 1 som är boven i dramat är som sagt att det fungerar fint om jag gör liknande manövrar som exemplet ovan men där Ubuntu-VM:en är på server 2. Nätverkstrafiken blir likadan: Ubuntu -> switch -> pfSense -> switch -> OMV, men i det fallet så dör inte nätverket.

Jag får fundera på hur jag ska lösa tester utan att blanda in pfSense. Det blir ganska stora förändringar med tanke på VLAN-uppsättningen och frågan är om testerna blir missvisande.