########学习配置网络桥接##########
什么是网桥(网络桥接)?
真机上的网卡是一个真实的物理设备,真机与外界进行通信需要网卡这个设备,网卡是由内核进行控制的
真机上的虚拟机也是一个真实的设备,但是这个虚拟机的网卡是虚拟的,它也有内核kernel
虚拟机通过使用真机上面的kernal上面开启一个网桥接口,进而使用真机的网卡与外界进行通信
网桥br0的作用:使虚拟机可以使用真实主机上面的网卡,进而使虚拟机可以上网,与外界进行通信
官方来说:
网桥(Bridge)像一个聪明的中继器。中继器从一个网络电缆里接收信号, 放大它们,将其送入下一个电缆
相比较而言,网桥对从关卡上传下来的信息更敏锐一些
网桥是一种对帧进行转发的技术,根据MAC分区块,可隔离碰撞。网桥将网络的多个网段在数据链路层连接起来
网桥也叫桥接器,是连接两个局域网的一种存储/转发设备,它能将一个大的LAN分割为多个网段
或将两个以上的LAN互联为一个逻辑LAN,使LAN上的所有用户都可访问服务器
我这里所说的网桥(br0)其实就是在真机的内核上开一个接口,此接口同时连着虚拟机的网卡和真机的网卡
真机和虚拟机的发送的数据包都通过网桥出去,因此实现虚拟机和外界通信
NAT(Network Address
Translation,网络地址转换)是1994年提出的。当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址),但现在又想和因特网上的主机通信(并不需要加密)时,可使用NAT方法。
网络桥接:网络桥接用网桥实现共享上网主机和客户机除了利用软件外,还可以用系统自带的网络桥接建立连接用双网卡的机器做主机
【1】**概念:**虚拟机是没有物理网卡的,这时虚拟机要和外部通信,进行数据交换就需要用过主机上的物理网卡,进行地址转换,而且主机的内核来处理这些问题,无疑增加了主机内核的负载,大大降低了数据交换的速率,如果搭建网络桥,使得虚拟机与外部数据交换通过网桥的方式,虚拟机内核可以在一定程度上直接使用主机的物理网卡,就可以解决这个问题。
搭建网络桥可以通过编辑配置文件和命令的方式实现。
【2】网络桥接的管理命令
brctl 桥接管理命令
show 显示
addbr 添加网桥
delbr 删除网桥
addif 添加网桥连接
delif br0 删除网桥连接
##删除#####
brctl delif br0 eth0
brctl show
ifconfig br0 down
brctl show
brctl delbr br0
systemclt restart network
ifcfg-br0:自己新建的,物理机和虚拟机通信
ifcfg-enp0s25真实地物理网卡
NAT:网络地址转换
SNAT:源地址转换
#########真实主机:###########
配置网络桥接:用于虚拟化桥接接口
(1)网络配置目录 /etc/sysconfig/network-scripts/
(2)备份网络配置文件
实验前先将原来的配置文件,进行备份
(3)删除 (模拟无网桥环境)
nm-connection-editor 图形方式删除,除了Bridge enpo0s25,virbr1,virbr0,以避免对实验结果造成影响。
删除之后查看虚拟机安装界面,可以看到没有桥接接口。
(4)配置文件
vim /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0 接口使用设备
BOOTPROTO=none
IPADDR=172.25.254.11
PREFIX=24
ONBOOT=yes
TYPE=Bridge 接口类型桥接
vim /etc/sysconfig/network-scripts/ifcfg-westos
BOOTPROTO=none 网卡工作模式
DEVICE=enpo0s25 网卡设备名称
ONBOOT=yes 网卡服务启动时自动激活
BRIDGE=br0 桥接接口设备名称
桥接建立成功,重启网络systemctl restart network
(5)检测
文件生成
ifconfig 桥接已经有了IP
Brctl show 可以看到桥接建立成功
查看虚拟机安装界面,此时存在桥接接口
因为从虚拟机的内核再通过真机的内核转换发出去会比较慢,而再做了一个桥接之后,虚拟机可以通过桥接直接与其他主机进行数据交换,会提高访问速度。
(6)恢复数据
删除自己建立的文件
恢复原有数据
重启网络
【3】网络桥接的配置
虚拟机中也可以:
cd /etc/sysconfig/network-scripts/
cp ifcfg-eth0 ifcfg-br0
(1)vim /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
BOOTPROTO=none
IPADDR=172.25.254.100
PREFIX=24
ONBOOT=yes
TYPE=Bridge
(2)vim /etc/sysconfig/network-scripts/ifcfg-eth0
添加 BRIDGE=br0
将IPADDR删除(或注释)
PREFIX删除)(注释)
systemctl restart network 如果失败,清空日志之后再重启
> /var/log/messages
systemctl restart network
ip a 查看桥接是否有IP
brctl show查看桥接
Ping172.25.254.250(此情况为网关是老师的主机,如果是自己的真实主机作为路由器,使虚拟机上网,则需要在真机开启火墙地址伪装功能,路由功能,ping外网,如果失败,则可能是网关)
route -n 查看网关,如果没有网关,vim /etc/sysconfig/network/ 添加全局网关,GATEWAY=172,25,254,11 再次查看网关,Ping外网,如果成功,说明网桥搭建成功。
#####临时建立桥接接口(虚拟机)#################
(1)查看主机桥接信息 brctl show
(2) 建立桥接接口
(3)配置br0文件 ifconfig br0 172.25.254.111/24
(4)配置桥接接口的网卡信息 brctl addif br0 eth0把桥接链接到网卡上
(5)查看主机桥接信息 brctl show
(6)删除桥接接口的网卡信息 (删除网桥连接)brctl delif br0 eth0
(7)删除桥接接口 ifconfig br0 down -->brctl delif br0
注意:当br0工作时,不能直接删除,停止桥接接口工作后才能删除。
桥接和NAT的区别:
简单的说:
桥接 通过使用物理机网卡 具有单独ip
NAT 把物理机为路由器进行上网
下面是详细的解说:
VMWare提供了三种工作模式,它们是bridged(bridged模式)、NAT(网络地址转换模式)和host-only(主机模式)。要想在网络管理和维护中合理应用它们,了解一下这三种工作模式。
1.bridged(桥接模式)
在bridged模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立的主机,它可以访问网内任何一台机器。在bridged模式下,需要手工为虚拟系统配置IP地址、子网掩码,而且还要和宿主机器处于同一网段,这样虚拟系统才能和宿主机器进行通信。同时,由于这个虚拟系统是局域网中的一个独立的主机系统,那么就可以手工配置它的TCP/IP配置信息,以实现通过局域网的网关或路由器访问互联网。使用bridged模式的虚拟系统和宿主机器的关系,就像连接在同一个Hub上的两台电脑。想让它们相互通讯,就需要为虚拟系统配置IP地址和子网掩码,否则就无法通信。如果想利用VMWare在局域网内新建一个虚拟服务器,为局域网用户提供网络服务,就应该选择bridged模式。
这种方式最简单,直接将虚拟网卡桥接到一个物理网卡上面,和linux下一个网卡 绑定两个不同地址类似,实际上是将网卡设置为混杂模式,从而达到侦听多个IP的能力。在此种模式下,虚拟机内部的网卡(例如linux下的eth0)直接连到了物理网卡所在的网络上,可以想象为虚拟机和host机处于对等的地位,在网络关系上是平等的,没有谁在谁后面的问题。
使用这种方式很简单,前提是可以得到1个以上的地址。
2.NAT(网络地址转换模式)
使用NAT模式,就是让虚拟系统借助NAT(网络地址转换)功能,通过宿主机器所在的网络来访问公网。也就是说,使用NAT模式可以实现在虚拟系统里访问互联网。NAT模式下的虚拟系统的TCP/IP配置信息是由VMnet8(NAT)虚拟网络的DHCP服务器提供的,无法进行手工修改,因此虚拟系统也就无法和本局域网中的其他真实主机进行通讯。采用NAT模式最大的优势是虚拟系统接入互联网非常简单,你不需要进行任何其他的配置,只需要宿主机器能访问互联网即可