简介
-
<李>网桥是一种软件配置,用于连结两个或更多个不同网段。网桥的行为就像是一台虚拟的网络交换机、工作于透明模式(即其他机器不必关注网桥的存在与否)。任意的真实物理设备(例如eth0)和虚拟设备(例如tap0)都可以连接到网桥。李>
<李>桥接:把一台机器上的若干个网络接口”连接”起来。其结果是,其中一个网口收到的报文会被复制给其他网口并发送出去。以使得网口之间的报文能够互相转发。网桥就是这样一个设备,它有若干个网口,并且这些网口是桥接起来的。与网桥相连的主机就能通过交换机的报文转发而互相通信。李>
如下图:主机一个发送的报文被送到交换机S1的eth0口,由于eth0与eth2, eth3桥接在一起,故而报文被复制到eth2和eth3,并且发送出去,然后被主机B和交换机S2接收到。而S2又会将报文转发给主机C, D
创建网桥
可以通过多种方式实现,这里介绍通过nmcli和桥实现。
通过nmcli h5>
1)添加一个名为br0的网桥,并且手工指定ip为192.168.8.100
<代码类=" language-bash "> root@CentOS7 ~ # brctl显示 桥的名字id STP接口启用 (root@CentOS7 ~) # nmcli con ifname br0添加con-name br0类型桥梁 连接“br0”(77年a81012 - 0760 - 441 - a - a90a - 8 f4b357c5dfb)成功地补充道。 (root@CentOS7 ~) # nmcli反对修改br0 ipv4。192.168.8.100/24 ipv4地址。法米 anual 代码>
2)添加eth0, eth2设备到网桥br0
<代码类=" language-bash "> [root@CentOS7 ~] # nmcli反对添加con-name br0-port0类型bridge-slave ifname eth0 br0大师 连接“br0-port0”(60961 b5d - 312 c - 49 - dd - b9ff - 287 f8236436b)成功地补充道。 (root@CentOS7 ~) # nmcli反对添加con-name br0-port1类型bridge-slave ifname eth2 br0大师 连接“br0-port1”(e4b436f2 - 8 bc5 - 4696 - ad6d bdcb3ec40a0f)成功添加。代码>
3)启动网桥并且查看信息
<代码类=" language-bash "> [root@CentOS7 ~] # nmcli br0欺诈 连接成功激活(主等待奴隶)(d - bus活动路径:/org/freedesktop/NetworkManager/ActiveConnection/32 (root@CentOS7 ~) #显示br0 nmcli设备 将军。设备:br0 将军。类型:桥 将军。HWADDR: E6: CF: 41: C0:93:74 将军。MTU: 1500 将军。状态:100(连接) 将军。连接:br0 将军。CON-PATH:/org/freedesktop/NetworkManager/ActiveConnection/32 IP4。地址[1]:192.168.8.100/24 IP4。网关: IP4。路[1]:dst=192.168.8.0/24, nh=0.0.0.0,太=425 IP6。网关:代码>
4)查看其生成的配置文件
<代码类=" language-bash "> root@CentOS7 ~ #猫/etc/sysconfig/network-scripts/ifcfg-br0 #猫/etc/sysconfig/network-scripts/ifcfg-br0-port0 root@CentOS7 ~ (root@CentOS7 ~) #猫/etc/sysconfig/network-scripts/ifcfg-br0-port1 代码>
通过brctl h5>
该工具需要安装bridge-utils包
<代码类=" language-bash "> [root@CentOS7 ~] # rpm qf brctl”的意思 桥-跑龙套- 1.5 - 9. - el7.x86_64 (root@CentOS7 ~) # yum - y安装bridge-utils 代码>
1)新建一个名为br0的网桥
<代码类=" language-bash "> [root@CentOS7 ~] # brctl addbr br0 代码>
2)添加eth0, eth2设备到br0网桥
<代码类=" language-bash "> [root@CentOS7 ~] # brctl addif br0 eth0 (root@CentOS7 ~) # brctl addif br0 eth2 代码>
3)显示当前存在的网桥及其所连接的网络端口:
<代码类=" language-bash "> [root@CentOS7 network-scripts] # brctl显示 桥的名字id STP接口启用 8000.000 br0 c29082a73 eth0 eth2 代码>
4)启动网桥
<代码类=" language-bash "> [root@CentOS7 network-scripts] # ip连接设置dev br0 代码>
5)删除网桥,需要先关闭它
<代码类=" language-bash "> [root@CentOS7 network-scripts] # ip链路群dev br0下来 [root@CentOS7 network-scripts] # brctl delbr br0 [root@CentOS7 network-scripts] # brctl显示 桥的名字id STP接口启用代码>