首先我们来了解一下什么是桥接
一般的交换机,网桥就有桥接作用。就交换机来说,本身有一个端口与mac的映射表,通过这些,隔离了冲突域(collision)。 简单的说就是通过网桥可以把两个不同的物理局域网连接起来,是一种在链路层实现局域网互连的存储转发设备。网桥从一个局域网接收MAC帧,拆封、校对、校验之后 ,按另一个局域网的格式重新组装,发往它的物理层,通俗的说就是通过一台设备(可能不止一个)把几个网络串起来形成的连接,如下图,就是一个最简单的桥接
那么,我们如何在虚拟机中设置桥接呢?
此次实验是在真机里面做的,所以我在这里首先备份我的网络配置文件
mkdir /networkbackup
cp -p /etc/sysconfig/network-scripts/ifcfg-* /networkbackup/
然后删除我的网络配置
rm -f /etc/sysconfig/network-scripts/ifcfg-*
cp -p /networkbackup/ifcfg-lo //etc/sysconfig/network-scripts/ ##这一步必须做,或者删除的时候不要删除此文件
重启网络后发现,无法上网,并且虚拟机的联网方式少了桥接
1.以文件的方式
此时我们需要手动设置桥接方式,首先需要编写自己的网卡配置文件,我的是enp0s25,这个每个人可能都不一样,需要自己去ifconfig查看一下
vim ifcfg-enp0s12
编辑以下内容
DEVICE=enp0s12
ONBOOT=yes
BOOTPROTO=none
BRIDGE=br0
然后配置br0的配置
vim ifcfg-br0
添加以下内容
DEVCIE=br0
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.25.254.5
NETMASK=255.255.255.0
TYPE=Bridge
做完之后,重启网络,查看桥接
这样桥接就设置成功了,虚拟机也有了桥接
2.以命令行的形式
brctl addbr br0 ##添加桥接
ifconfig br0 172.25.254.5/24 ##设置桥接的ip和子网掩码
brctl addif br0 ens0p12 ##添加ens0p12绑定到br0
brctl show ##查看桥接
这个与文件形式一样,故不在添加图片
3.那么如何删除桥接呢
以文件的形式很简单,直接去/etc/sysconfig/network-scripts删除网卡和br0的配置文件即可
那么以命令行的方式呢?
ifconfig br0 down ##关闭桥接
brctl delif br0 eth0 ##删除桥接和网卡之间的绑定
brctl delbr br0 ##删除桥接
brctl show ##查看桥接信息