Bridge with netctl

From ArchWiki
Revision as of 02:22, 16 December 2012 by Chrisl (Talk | contribs) (The Qemu article and the software access point one, are duplicating instructions to create a bridge. Is better, instead, to have one article specilized on that, and link the other articles to it.)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This article explains how to create a bridge that contains at least a ethernet device. This is useful for things like the bridge mode of qemu, setting a software based access point, etc

Installation

Install the netcfg package from the official repositories.

Configuration

  • Enable the bridge module:
# modprobe bridge

And to make it permanent, add it to your /etc/modules-load.d:

echo bridge>/etc/modules-load.d/bridge.conf
  • Create a bridge called br0 to have, at least, your real Ethernet adapter (assuming eth0):
/etc/network.d/bridge
INTERFACE="br0"
CONNECTION="bridge"
DESCRIPTION="Bridge"
IP='dhcp'

#Uncomment this fields as necessary if you are using a static ip instead
#IP='static'
#ADDR='10.0.0.1'
#GATEWAY='10.0.0.1'
#DNS=('8.8.8.8')

# Add your network adapter(s) here, separated by spaces.
BRIDGE_INTERFACES="eth0"
If you are using an static ip, also edit /etc/resolv.conf as necessary.
  • If eth0 had dhcpcd enabled, disable and stop it:
# systemctl stop dhcpcd@eth0.service
# systemctl disable dhcpcd@eth0.service
  • Then enable and start your br0 bridge:
# systemctl start netcfg@bridge.service
# systemctl enable netcfg@bridge.service

Tips and Tricks

Manually adding/removing network devices

Install the bridge-utils package from the official repositories.

It provides brctl, to manipulate bridges. You can use it to add a device, like this:

# brctl addif br0 eth1

Read the manual for more info: man brctl