Community Solution

Bridge Two Ethernet Ports on ZimaOS? The 2025 Community Script Worked, but It Was Layer 2 Bridging—not 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.

The source user did get their topology working, but the result should be described accurately: the script created a Linux br0 Layer-2 Ethernet bridge between two physical interfaces. It did not configure a classic NAT router with IP forwarding and masquerading.

The solution was also fragile by the author's own account. It stopped NetworkManager, flushed addresses, recreated the bridge manually, depended on interface names and a hard-coded gateway/IP, and had to be run again after reboot. IceWhale later replied that a built-in bridge feature was not planned in the short term. Treat this as community experimentation, not a current official ZimaOS networking feature.

The Goal Was Router → ZimaOS → Personal PC

The NAS had multiple Ethernet ports. One connected upstream to the router and another directly to the personal PC. The user wanted the PC to remain on the same LAN through the ZimaOS machine.

A Bridge Is Not the Same as NAT

A bridge joins Ethernet segments at Layer 2 so devices can remain in the same IP subnet and use the upstream router's DHCP/gateway. NAT would instead route between different IP networks and rewrite addresses.

The source commands used brctl addbr and brctl addif; there were no NAT/masquerade rules.

The Source Script Replaced ZimaOS Network Management Temporarily

The script stopped NetworkManager, flushed one interface, created br0, added both NICs, assigned a static management address, and set a default route.

That can cut off remote management immediately if the interface names, gateway, subnet, or bridge commands are wrong.

The Bridge Was Not Persistent

The user explicitly said the script needed to be rerun after every reboot. They later built a Windows/Plink workaround that SSHed into ZimaOS to execute it when the PC started.

Hard-coding SSH passwords in a Windows batch file is not a good current security practice.

The Later ethtool Speed Override Was Hardware-Specific

The author added an ethtool command to force a 10GbE interface to 10 Gbps full duplex. Forced speed/duplex can break autonegotiation with some PHYs and switches. Use normal negotiated link settings unless the hardware requires a documented override.

The Author Deleted a Docker-Based Bridge Workaround Because It Broke Internet Access

The source itself says a container/network-multitool method was removed because the host sometimes lost Internet connectivity.

Current ZimaOS Does Not Document This Script as a Supported Host Bridge

Current IceWhale networking documentation focuses on physical interfaces, DHCP/static addressing, and normal network management.

Use the current ZimaOS networking baseline.

If You Need Routing/NAT, Use a Router-Focused OS or VM Architecture

For firewalling, NAT, VLAN routing, DHCP and multi-WAN, pfSense or OPNsense is a better-defined router platform. Running the NAS inline as an undocumented bridge adds a single point of failure to both storage and network access.

Keep a Recovery Path for the ZimaOS Management IP

When the script flushes an interface and moves the management address onto br0, an SSH session running through that interface can drop immediately. Perform first-time testing from a local console or have another known-good management path available.

Write down the original interface addresses and default route before changing them.

A Layer-2 Bridge Can Create Network Loops

If both bridge ports accidentally connect back into the same switched network, the setup can create an Ethernet loop. Without correct spanning-tree behavior, broadcast traffic can overwhelm the LAN.

The source topology was a simple inline router → ZimaOS → PC chain; do not extrapolate the script to arbitrary multi-switch layouts.

The Upstream Router Still Provides DHCP and Default Gateway

Because this is a bridge rather than NAT, the downstream PC normally remains in the router's subnet and receives its network configuration from the upstream router. ZimaOS is forwarding Ethernet frames, not becoming a new routed subnet gateway.

A Host-Level Bridge Script Can Break After Interface or Network-Stack Changes

Interface names, NetworkManager behavior, kernel bridge tooling, and startup ordering can change between releases. Retest after major ZimaOS updates and do not assume a script written for the 2025 network stack is permanently compatible.

ZimaOS Network Bridge FAQ

Did the source script work for the original user?

Yes. They reported that the PC gained connectivity through the ZimaOS bridge.

Was it NAT?

No. The posted commands built a Layer-2 Linux bridge.

Did IceWhale say a built-in bridge feature was coming soon?

No. Zima-Giorgio said it was not planned in the short term.