Gemenskapslösning

Brygga två Ethernet-portar i ZimaOS? Community-skriptet från 2025 fungerade, men det var bryggning på lager 2 – inte NAT

A March-May 2025 thread where a user wanted Router → ZimaOS NAS → PC networking through two Ethernet ports. They created a Linux br0 bridge by stopping NetworkManager, flushing an interface, adding eth0/eth1 to br0 and assigning a management IP. The user reported that it worked but had to be rerun after reboot. IceWhale later said built-in bridge support was not planned in the short term. The source script implements Layer-2 bridging rather than IP NAT.

Källanvändaren fick sin topologi att fungera, men resultatet bör beskrivas korrekt: skriptet skapade en Linux-br0, en Ethernet-brygga på lager 2, mellan två fysiska gränssnitt. Det konfigurerade inte en klassisk NAT-router med IP-vidarebefordran och masquerading.

Lösningen var också bräcklig enligt författarens egen beskrivning. Den stoppade NetworkManager, rensade adresser, återskapade bryggan manuellt, var beroende av gränssnittsnamn och en hårdkodad gateway/IP-adress och behövde köras igen efter omstart. IceWhale svarade senare att en inbyggd bryggfunktion inte var planerad på kort sikt. Betrakta detta som ett communityexperiment, inte som en aktuell officiell nätverksfunktion i ZimaOS.

Målet var Router → ZimaOS → Personlig dator

NAS-enheten hade flera Ethernet-portar. En var ansluten uppströms till routern och en annan direkt till den personliga datorn. Användaren ville att datorn skulle fortsätta vara på samma LAN via ZimaOS-maskinen.

En brygga är inte samma sak som NAT

En brygga kopplar samman Ethernet-segment på lager 2, så att enheter kan fortsätta vara i samma IP-subnät och använda den uppströms routerns DHCP/gateway. NAT skulle i stället dirigera trafik mellan olika IP-nätverk och skriva om adresser.

Källkommandona använde brctl addbr och brctl addif; det fanns inga NAT-/masquerading-regler.

Källskriptet ersatte tillfälligt ZimaOS nätverkshantering

Skriptet stoppade NetworkManager, rensade ett gränssnitt, skapade br0, lade till båda nätverkskorten, tilldelade en statisk hanteringsadress och angav en standardrutt.

Det kan omedelbart bryta fjärrhanteringen om gränssnittsnamnen, gatewayen, subnätet eller bryggkommandona är felaktiga.

Bryggan var inte beständig

Användaren sade uttryckligen att skriptet behövde köras igen efter varje omstart. Senare byggde de en Windows-/Plink-lösning som anslöt via SSH till ZimaOS för att köra det när datorn startade.

Att hårdkoda SSH-lösenord i en Windows-batchfil är inte en bra säkerhetspraxis idag.

Den senare hastighetsöverskrivningen med ethtool var maskinvaruspecifik

Författaren lade till ett ethtool-kommando för att tvinga ett 10GbE-gränssnitt till 10 Gbit/s full duplex. Tvingad hastighet/duplex kan bryta autonegotiation med vissa PHY:er och switchar. Använd normalt förhandlade länkinställningar om inte maskinvaran kräver en dokumenterad överskrivning.

Författaren tog bort en Docker-baserad brygglösning eftersom den bröt internetåtkomsten

Källan säger själv att en metod med container/nätverksverktyg togs bort eftersom värddatorn ibland förlorade internetanslutningen.

Aktuella ZimaOS dokumenterar inte detta skript som en stödd värdbrygga

Aktuell nätverksdokumentation från IceWhale fokuserar på fysiska gränssnitt, DHCP-/statisk adressering och normal nätverkshantering.

Använd den aktuella nätverksöversikten för ZimaOS.

Om du behöver routing/NAT bör du använda ett routerfokuserat operativsystem eller en VM-arkitektur

För brandvägg, NAT, VLAN-routing, DHCP och multi-WAN är pfSense eller OPNsense en mer väldefinierad routerplattform. Att köra NAS-enheten inline som en odokumenterad brygga skapar en enda felpunkt för både lagring och nätverksåtkomst.

Behåll en återställningsväg till ZimaOS hanterings-IP

När skriptet rensar ett gränssnitt och flyttar hanteringsadressen till br0 kan en SSH-session som körs via gränssnittet brytas omedelbart. Utför de första testerna från en lokal konsol eller se till att det finns en annan bekräftat fungerande hanteringsväg.

Skriv ned de ursprungliga gränssnittsadresserna och standardrutten innan du ändrar dem.

En lager 2-brygga kan skapa nätverksloopar

Om båda bryggportarna av misstag ansluts tillbaka till samma switchade nätverk kan konfigurationen skapa en Ethernet-loop. Utan korrekt funktion för spanning tree kan broadcasttrafik överbelasta LAN-nätverket.

Källans topologi var en enkel kedja med router → ZimaOS → dator; generalisera inte skriptet till godtyckliga layouter med flera switchar.

Den uppströms routern tillhandahåller fortfarande DHCP och standardgateway

Eftersom detta är en brygga och inte NAT förblir den anslutna datorn normalt i routerns subnät och får sin nätverkskonfiguration från den uppströms routern. ZimaOS vidarebefordrar Ethernet-ramar och blir inte en ny gateway för ett routat subnät.

Ett bryggskript på värdnivå kan sluta fungera efter ändringar av gränssnitt eller nätverksstack

Gränssnittsnamn, NetworkManagers beteende, kärnans bryggverktyg och startordning kan ändras mellan versioner. Testa igen efter större ZimaOS-uppdateringar och anta inte att ett skript som skrevs för nätverksstacken från 2025 alltid är kompatibelt.

Vanliga frågor om ZimaOS nätverksbrygga

Fungerade källskriptet för den ursprungliga användaren?

Ja. De rapporterade att datorn fick anslutning via ZimaOS-bryggan.

Var det NAT?

Nej. De publicerade kommandona skapade en Linux-brygga på lager 2.

Sade IceWhale att en inbyggd bryggfunktion skulle komma snart?

Nej. Zima-Giorgio sade att den inte var planerad på kort sikt.