Debian Ubuntu Mint Howto Create Bridge (br0)

Having a network bridge allows you to bridge traffic under multiple devices so they can talk natively without using any special routing, iptables/firewall or other trickery.

To create your bridge you need the bridge-utils package for brctl and if you want to do things like bridge VMs that run on a tap   device you will need the uml-utilities which provides "tunctl".

1.) Install the utilities to make our bridge

sudo apt-get install bridge-utils uml-utilities

Backup your interfaces file to your home dir

sudo cp /etc/network/interfaces ~/interfaces-`date +%Y-%m-%d-%s`

 

2.) Setup your bridge by editing /etc/network/interfaces

Also be note that the br0 is a zero not an "O"

For simplicity I am going to call it br0 but it could be called almost anything.

Edit your interfaces file like this:


br0 using eth0 and DHCP

#example of NIC named eth0, bridged as eth0 and using DHCP (change eth0 to the name of your NIC) device

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual

auto br0
iface br0 inet dhcp
  bridge_ports eth0


br0 using eth0 and static IP


Be sure to change the static IP, gateway, netmask and bridge_ports to what matches what you need.

#example of NIC named eth0, bridged as eth0 and using static (change eth0 to the name of your NIC) device

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual

auto br0
iface br0 inet static
  address 192.168.1.200
  netmask 255.255.255.0
  gateway 192.168.1.1
  bridge_ports eth0

 


The key part is below in bold where I declare the br0:


iface br0 inet static
  bridge_ports enp0s8

The above part tells us that we are bridging a NC named enp0s8.

On the second line below indented you add "bridge_ports enp0s8" which defines enp0s8 as belonging to the br0 bridge.

*Note what you see below are NOT commands in the terminal but the contents of /etc/network/interfaces

eg. iface is NOT a command, it is part of the config file /etc/network/interfaces

**Note change enp0s8 to your NIC adapter that you want to bridge.

 


Another basic example of what it could look like if you wanted a static IP and to receive a DHCP on your bridge:


# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual

auto br0
iface br0 inet static
  bridge_ports eth0
   address 192.168.1.1
   netmask 255.255.255.0
   gateway 192.168.1.1

auto br0:0
iface br0:0 inet dhcp

 


Example of adding an alias to the bridge


 # interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual


auto br0
iface br0 inet static
  bridge_ports eth0
   address 192.168.1.1
   netmask 255.255.255.0
   gateway 192.168.1.1
#below we add an alias called br0:0 but we could have called it br0:1, br0:10 etc...
auto br0:0
iface br0:0 inet static
   address 192.168.1.200
   netmask 255.255.255.0
   gateway 192.168.1.1


 

After you are done do not forget to restart your network to apply the changes or your bridge won't work.

sudo service networking restart

 

Manual Quick and dirty (temporary) to get a bridge up and running:

Note that this is temporary so once you restart your network or your server the bridge will no longer be there or working:

#create a bridge named br0

sudo brctl addbr br0

#add a NIC named eno1 to br0 bridge
sudo brctl addif br0 eno1

# put our bridge up or it won't work
sudo ifconfig br0 up

# bring your NIC down and then back up otherwise the bridge won't work
sudo ifconfig eno1 down
sudo ifconfig eno1 0.0.0.0 up

#use dhclient on interface br0 to get a LAN IP by DHCP

#if you are using static then you would set the IP statically / manually
sudo dhclient  -i br0


Tags:

debian, ubuntu, mint, howto, br, allows, multiple, devices, natively, routing, iptables, firewall, trickery, utils, brctl, vms, uml, utilities, provides, quot, tunctl, install, sudo, apt, interfaces, dir, cp, etc, edit, nic, enp, bridged, manual, ip, config, info, static, dhcp, disable, iface, inet, simplicity, bold, declare, bridge_ports, indented, defines, belonging, ifup, ifdown, auto, loopback, netmask, gateway,

Latest Articles

  • CentOS 7 / 8 cannot boot with with mdadm RAID array solution
  • How To Add Default Gateway in Linux using the ip route command routing
  • Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist Solution for Centos8 yum package install error
  • md mdadm array inactive how to start and activate the RAID array
  • Loaded: masked (Reason: Unit hostapd.service is masked.) Solution in Linux Debian Mint Ubuntu
  • Linux Mint Ubuntu Ubiquity Installer Bug EFI Installed To Wrong Partition Solution
  • Libreoffice Impress How To Change The Color of Links
  • ecryptfs How To Backup / Migrate Linux Mint Ubuntu Debian system ecryptfs properly and restore access
  • i915 nouveau Nvidia GPU not starting lightdm Xorg failing solution for Could not determine valid watermarks for inherited state
  • br0: received packet on bond0 with own address as source address Linux Solution Mint Debian Redhat CentOS bridge bridging
  • Debian Mint Ubuntu Howto Disable Network Manager
  • AMD GPU Xorg Won't Start [3576284.324] (EE) Segmentation fault at address 0x0 [3576284.325] (EE) Fatal server error: [3576284.325] (EE) Caught signal 11 (Segmentation fault). Server aborting
  • symbol 'grub_calloc' not found grub boot error solution / fix
  • /var/log/journal huge/too large solution in Debian Mint Ubuntu Linux Howot Fix
  • Libreoffice Calc Opens CSV Spreadsheet File as Asian Language/Chinese Characters Solution Fix
  • RTL8821AU Setup Configure Wifi Realtek 8821 in Linux Debian Mint Ubuntu Howto
  • How To Tell Which Repository a Package Comes From Debian Mint Ubuntu
  • How To Reload All Kernel Modules And List Required Moduels for Each Device - Linux Mint Debian Ubuntu Troubleshooting
  • Debian Ubuntu Mint How To Change Default Display Manager
  • Ubuntu Mint Debian Howto Execute Command / Script / Program Upon Wakeup From Sleep