Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Question regarding Bridging in combination with macvlan and ipvlan

Featured Replies

Hello,

I have a question regarding setups With bridging / macvlan and ipvlan

I've recently switched backed to macvlan so each docker is shown in the unifi ui, now i came to some questions:

My production server is running the following:

Network settings:
ETH0
Enable bonding                         no
Enable Bridging:                    yes
Bridging members of br0:            eth0

Docker:
Docker custom network type:         macvlan
Host access to custom networks:     enabled


My test server is running:
ETH0
Enable bonding                         no
Enable Bridging:                    no

Docker:
Docker custom network type:         macvlan
Host access to custom networks:     enabled


Both seem to function exactly the same. other than i have for my dockers on production br0.10 and on my test server eth0.10
What is the benefit of running "Enable Bridging: yes"? It seems like it's got no function, or none that i'm seeing.

 

The function description:
"Bridging is a feature which creates a virtual bridge and allows VMs and Docker containers to communicate directly with the physical Ethernet port. Both bonding and bridging can be combined to let VMs or containers communicate over a bonded interface."

 

 

The "strange" thing is that on both setups it seems to work, so it only looks like bridging adds another layer of networking to handle.

Can anyone advise me on the differences and best practices?

Edited by Mirano
cleanup

Solved by bonienl

"Bonding is a feature that combines multiple physical Ethernet interfaces into a single bonded interface named bond0. This can be used to improve the connection redundancy and/or throughput of the system. Different bonding modes are supported (see below), but some modes require proper switch support."

 

Bridging lets the dockers on a virtual network to communicate over the physical port.

 

br0 allows the host as well as docker0 to communicate over eth0 for instance. If my understanding is correct.

 

Bonding combines eth0 and eth1 for a failover.

Edited by MowMdown

  • Author
9 minutes ago, MowMdown said:

"Bonding is a feature that combines multiple physical Ethernet interfaces into a single bonded interface named bond0. This can be used to improve the connection redundancy and/or throughput of the system. Different bonding modes are supported (see below), but some modes require proper switch support."

 

Bridging lets the dockers on a virtual network to communicate over the physical port.

 

br0 allows the host as well as docker0 to communicate over eth0 for instance. If my understanding is correct.

 

Bonding combines eth0 and eth1 for a failover.

Hey, Thank you for taking the time to answer to me.

 

I understand the concept or a Bonding, to combine multiple physical adapters to get either more throughput or redundancy. I just don't understand the function of the Bridging function. I'm still confused by that, but that could just be me haha.

  • Solution

In the past bridging was needed for VMs and give them external access.

In the latest versions 6.12.x and 7.0.x of Unraid both Docker and VMs can work without bridging enabled.

I would recommend to disable it, unless you have a specific requirement to let your Unraid server act as a physical bridge between your router and PC (see picture).

 

image.png

  • Author
1 minute ago, bonienl said:

In the past bridging was needed for VMs and give them external access.

In the latest versions 6.12.x and 7.0.x of Unraid both Docker and VMs can work without bridging enabled.

I would recommend to disable it, unless you have a specific requirement to let your Unraid server act as a physical bridge between your router and PC (see picture).

 

image.png

Hey,

 

That makes alot more sense.

 

So what i could do with bridging is setup:

 

ETH0 receives DHCP from my UDM Pro. ETH0 got bridge enabled and if i include ETH1 into it i can hook my PC to ETH1 so it receives an DHCP through the unraid server to the UDM Pro.

 

Is what i'm saying correct?

 

 

Correct, but personally I would connect your PC directly to the UDM Pro, unless you are running out of ports on it.

 

  • Author
4 minutes ago, bonienl said:

Correct, but personally I would connect your PC directly to the UDM Pro, unless you are running out of ports on it.

 

Yeah I got enough ports to connect it to their own ports,

 

its stated weird in the description of the function then, it sounds like it creates a virtual network to get docker and vms connected to the port. Hence why I always used it.

 

so replicate my test environment to production and that’s totally fine, correct?

 

 

 

 

 

 

  • Author
7 minutes ago, bonienl said:

Correct, but personally I would connect your PC directly to the UDM Pro, unless you are running out of ports on it.

 

Btw, have you ever used this?

 

Sounds like the only reason to use it you have a VM with a firewall on it to get DHCP working, 

The original help text was never updated, which we should.

 

I tested it many years ago, but don’t need/use it myself.

 

  • Author
1 hour ago, bonienl said:

The original help text was never updated, which we should.

 

I tested it many years ago, but don’t need/use it myself.

 

ah perfect,

 

Thank you for the explanation, its currently rebuilding every container:

 

image.png.66fb8c9297f77956c831d5ce043a7829.png

  • 2 weeks later...
  • Author
On 4/29/2025 at 6:41 PM, bonienl said:

The original help text was never updated, which we should.

 

I tested it many years ago, but don’t need/use it myself.

 

Hey!

 

to add to this, it seems like I cannot switch to IPVlan if Bridging is disabled, is that true?

Its not possible for me either, macvlan is the only option I have available when bridging is disabled. I am unsure if this is on purpose or not though.

Edited by MowMdown

5 hours ago, Mirano said:

it seems like I cannot switch to IPVlan if Bridging is disabled, is that true?

This is correct, with bridging disabled only ipvlan can be used.

Small correction: macvlan is used when bridging is disabled. This is due to the underlying macvtap interface instead of bridging.

 

  • Author

Alright that's clear now, is there a preference based on speed? Or is it similar enough that both will provide the same speed? (10GBe network)

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.