Lesson22 Linux下配置网络桥接
1. 什么是网桥(网络桥接)
真机上网是通过内核调用网卡与外界进行联系的
虚拟机的网卡是虚拟的,不能直接上网
在真机的内核上面开一个网络桥接的口,将虚拟机的内核和真机的网卡连在一起,从而虚拟机可以通过真机的网卡上网
真机上的网卡是一个真实的物理设备,真机与外界进行通信需要网卡这个设备,网卡是由内核进行控制的
真机上的虚拟机也是一个真实的设备,但是这个虚拟机的网卡是虚拟的,它也有内核kernel
虚拟机通过使用真机上面的kernal上面开启一个网桥接口,进而使用真机的网卡与外界进行通信
网桥br0使虚拟机可以使用真实主机上面的网卡,进而使虚拟机可以上网,与外界进行通信
网桥是一种对帧进行转发的技术,根据MAC分区块,可隔离碰撞。网桥将网络的多个网段在数据链路层连接起来
网桥也叫桥接器,是连接两个局域网的一种存储/转发设备,它能将一个大的LAN分割为多个网段,或将两个以上的LAN互联为一个逻辑LAN,使LAN上的所有用户都可访问服务器
网桥(br0)其实就是在真机的内核上开一个接口,此接口同时连着虚拟机的网卡和真机的网卡,真机和虚拟机发送的数据包都通过网桥出去,实现虚拟机和外界通信
2. 利用网桥(网络桥接)通信
实验准备:此实验在server虚拟机里完成
移走网桥br0和其他网卡的配置文件
采用图形方式删除网卡配置、wifi以及网桥
2.1 命令方式开启网桥(命令修改是临时的)
brctl addbr br0
#添加一个网桥br0
ifconfig br0 172,25,254,114/24
#指定br0网桥的ip(172.25.254.114)和子网掩码(24)
ifconfig
#查看设备和ip 此时, brctl show
可以看到,网桥br0没有真实的物理设备与之对应
brctl addif br0 eth0
#给网桥br0添加物理设备eth0与之对应
可以看到,此时可以ping通172.25.254.14
2.2 编辑配置文件方式开启网桥
编辑网卡配置文件 vim /etc/sysconfig/network-scripts/ifcfg-eth0
配置网桥,编辑网桥配置文件 vim /etc/sysconfig/network-scripts/ifcfg-br0
重启网络
ls 查看网络配置文件是否添加成功
查看网桥br0是否添加成功
此时,ping 172.25.254.14
能够ping通
通过brctl show可以查看网桥的信息对应的设备
3. 网络桥接的删除
brctl delif br0 eth0
#将物理设备从网桥上去掉
brctl show
#查看网桥上是否还有物理设备
ifconfig br0 down
#关掉br0网桥
brctl delbr br0
#删掉网桥br0
brctl show
#查看
打开图形方式的网络配置器
删掉网桥设备
再次查看,发现br0已经不存在了,此时网桥已经完全被删掉了
4. 总结络桥接的管理命令
命令 | 说明 |
---|---|
brctl | 桥接管理命令 |
show | 显示 |
addbr | 添加网桥 |
delbr | 删除网桥 |
addif | 添加网桥连接 |
delif | 删除网桥连接 |
学到这里,我们应该知道,真机的网络一般不要乱设置,当真机的网络遇到问题该如何解决?
首先查看网线是否插好
再看网络配置的目录(cd /etc/sysconfig/network-scripts/)下以ifcfg-开头的文件除了网卡配置文件和网桥配置文件有没有其它的
cd /etc/sysconfig/network-scripts/
ls
因为启动真机的时候系统会自动读取所有以ifcfg-开头的文件,因此将其余没用的删除,这些多余的文件会影响网络连接
然后检查网卡和网桥配置文件有没有写错
重启网络,看网络管理者NetworkManager的状态是否为开启
systemctl status NetworkManager
如果以上这些都好了,那很有可能就是桥接的问题
使用brctl addif br0 网卡名 #给网桥添加真实的网卡设备连接,再检查能不能联网