安装Bridge工具软件包
Linux可以工作在网桥模式,必须安装网桥工具bridge-utils,运行命令:
yum install bridge-utils 或 apt-get install bridge-utils
Linux KVM Bridge逻辑结构图
通过命令行创建Bridge
注意:通过命令创建的Brdge在重启后会自动丢失,因此需要在网络配置文件中写入Brdge配置。
# 创建brdge br0# brctl addbr br0# 将br0绑定到ens33
# brctl addif br0 ens33
通过网络配置创建创建Bridge
CentOS系统:https://zhidao.baidu.com/question/1046233341920860299.html
Ubuntu Bridge配置示例
auto ens33iface ens33 inet manualauto br0
iface br0 inet static
address 192.168.1.2
network 192.168.1.0
netmask 255.255.255.0
broadcast 192.168.1.255
bridge_ports eth0
bridge_bridgeprio 32767
bridge_portprio eth0 129
bridge_fd 5
参数
IFACE OPTIONS
A little explanation on the new options that can be used on
/etc/network/interfaces to setup the bridge, so you don't have to go
and look at the scripts...
bridge_ports interface specification
this option must exist for the scripts to setup the bridge, with
it you specify the ports you want to add to your bridge, either
using "none" if you want a bridge without any interfaces or you
want to add them later using brctl, or a list of the interfaces
you want to add separated by spaces, for example:
bridge_ports eth0 eth4
You should not put any lines to configure the interfaces that
will be used by the bridge, as this will be setup automatically
by the scripts when bringing the bridge up.
If you need to specify the interfaces more flexibly, you can use
the following syntax (most useful on a Xen dom0):
bridge_ports regex (eth|vif).*
This means to evaluate (as in egrep(1)) the expressions that
follow after "regex" until either the end or a "noregex"
statement is reached. The regular expressions are evaluated
against all local interfaces and those that match are added.
Specifying "all" is short for "regex eth.* em.* p[0-9].*
noregex" and will get all the ethX and biosdevname-format (emX
and pX) interfaces added to the bridge.
Carrying this to the extremes, the following is valid syntax:
bridge_ports all regex if.0 noregex ext0 regex vif.*
This will add all ethX interfaces, the ifX0 interfaces, the ext0
interface and all vifX interfaces.
bridge_ageing time
set ageing time, default is 300, can have a fractional part.
bridge_bridgeprio priority
set bridge priority, priority is between 0 and 65535, default is
32768, affects bridge id, lowest priority bridge will be the
root.
bridge_fd time
set bridge forward delay to time seconds, default is 15, can
have a fractional part.
bridge_gcint time
set garbage collection interval to time seconds, default is 4,
can have a fractional part. Available on Linux kernel versions
< 2.6.0.
bridge_hello time
set hello time to time seconds, default is 2, can have a
fractional part.
bridge_hw MAC address
set the Ethernet MAC address of the bridge to the specified one.
There were some concerns of how this was done in the past, see:
http://bugs.debian.org/271406 but we are doing it on a new way
now that shouldn't be as bad, see: http://bugs.debian.org/725786
however you should know what you are doing before using this
option.
bridge_maxage time
set max message age to time seconds, default is 20, can have a
fractional part.
bridge_maxwait time
forces to time seconds the maximum time that the Debian bridge
setup scripts will wait for the bridge ports to get to the
forwarding status, doesn't allow factional part. If it is equal
to 0 then no waiting is done.
bridge_pathcost port cost
set path cost for a port, default is 100, port is the name of
the interface to which this setting applies.
bridge_portprio port priority
set port priority, default is 32, affects port id, port is the
name of the interface to which this setting applies. On Linux
kernels older than 2.6.0 the max value is 255, the default 128.
Newer kernels have a maximum value of 63 and a default of 32.
bridge_stp state
turn spanning tree protocol on/off, state values are on or yes
to turn stp on and any other thing to set it off, default has
changed to off for security reasons in latest kernels, so you
should specify if you want stp on or off with this option, and
not rely on your kernel's default behaviour.
bridge_waitport time [ports]
wait for a max of time seconds for the specified ports to become
available, if no ports are specified then those specified on
bridge_ports will be used here. Specifying no ports here should
not be used if we are using regex or "all" on bridge_ports, as
it wouldn't work.