kvm网络虚拟化管理

亦凉 2021-11-22 05:00 510阅读 0赞

1. Linux Bridge网桥管理

  一个网桥上添加多个虚拟机,虚拟机之间是可以相互通信的的,同时虚拟机也都可以通外网。

1639072-20190623191129742-498333445.png

kvm的网桥管理可以通过brctl命令

  1. [root@localhost ~]# brctl
  2. .......
  3. #桥 addbr <bridge> add bridge
  4. delbr <bridge> delete bridge
  5. #端口 addif <bridge> <device> add interface to bridge
  6. delif <bridge> <device> delete interface from bridge
  7. hairpin <bridge> <port> {on|off} turn hairpin on/off
  8. setageing <bridge> <time> set ageing time
  9. setbridgeprio <bridge> <prio> set bridge priority
  10. setfd <bridge> <time> set bridge forward delay
  11. sethello <bridge> <time> set hello time
  12. setmaxage <bridge> <time> set max message age
  13. setpathcost <bridge> <port> <cost> set path cost
  14. setportprio <bridge> <port> <prio> set port priority
  15. show [ <bridge> ] show a list of bridges
  16. showmacs <bridge> show a list of mac addrs
  17. showstp <bridge> show bridge stp info
  18. stp <bridge> {on|off} turn stp on/off
  19. [root@localhost ~]# brctl show
  20. bridge name bridge id STP enabled interfaces
  21. br0 8000.0050562266e7 no ens33
  22. virbr0 8000.5254009483b2 yes virbr0-nic

2. VLAN

  LAN 表示 Local Area Network,本地局域网,通常使用 Hub 和 Switch 来连接 LAN 中的计算机。一般来说,两台计算机连入同一个 Hub 或者 Switch 时,它们就在同一个 LAN 中。

  一个 LAN 表示一个广播域。 其含义是:LAN 中的所有成员都会收到任意一个成员发出的广播包。

  VLAN 表示 Virtual LAN。一个带有 VLAN 功能的switch 能够将自己的端口划分出多个 LAN。计算机发出的广播包可以被同一个 LAN 中其他计算机收到,但位于其他 LAN 的计算机则无法收到。 简单地说,VLAN 将一个交换机分成了多个交换机,限制了广播的范围,在二层将计算机隔离到不同的 VLAN 中。

  比方说,有两组机器,Group A 和 B,我们想配置成 Group A 中的机器可以相互访问,Group B 中的机器也可以相互访问,但是 A 和 B 中的机器无法互相访问。 一种方法是使用两个交换机,A 和 B 分别接到一个交换机。 另一种方法是使用一个带 VLAN 功能的交换机,将 A 和 B 的机器分别放到不同的 VLAN 中。

  VLAN 的隔离是二层上的隔离,A 和 B 无法相互访问指的是二层广播包(比如 arp)无法跨越VLAN 的边界。但在三层上(比如IP)是可以通过路由器让 A 和 B 互通的。

现在的交换机几乎都是支持 VLAN 的。 通常交换机的端口有两种配置模式: Access 和 Trunk。如下图

1639072-20190623191405039-1153384648.png

Access 口

  access端口只允许一个VLAN通过。这些端口被打上了 VLAN 的标签,表明该端口属于哪个 VLAN。 不同 VLAN 用 VLAN ID 来区分,VLAN ID 的 范围是 1-4096。 Access 口都是直接与计算机网卡相连的,这样从该网卡出来的数据包流入 Access 口后就被打上了所在 VLAN 的标签。 Access 口只能属于一个 VLAN。

Trunk 口

  假设有两个交换机 A 和 B。 A 上有 VLAN1(红)、VLAN2(黄)、VLAN3(蓝);B 上也有 VLAN1、2、3,那如何让 AB 上相同 VLAN 之间能够通信呢?

办法是将 A 和 B 连起来,而且连接 A 和 B 的端口要允许 VLAN1、2、3 三个 VLAN 的数据都能够通过。这样的端口就是Trunk口了。 VLAN1, 2, 3 的数据包在通过 Trunk 口到达对方交换机的过程中始终带着自己的VLAN 标签。

  1. trunk端口可以允许多个VLAN通过。

3. Linux Bridge实现VLAN原理

  1. 对于物理设备来说,路由连接交换机,交换机上设置access接口实现不同的VLAN连接,设置trunk端口实现交换机之间的连接,物理机直接与这些交换机相连,但在kvm虚拟机上,如下图所示,宿主机物理网卡之上有虚拟接口eth0.10,虚拟接口就是VLAN设备,虚拟接口连接在虚拟网桥之上,在通过虚拟网卡vent0来连接虚拟机。与物理连接方式不同的是,kvm实现VLAN必须具备虚拟网卡和网

1639072-20190623191438418-423467945.png

  1. 同样的,对于多个虚拟机,需要多个VLAN来连接物理网卡。

4. Linux Bridge实现VLAN" class="reference-link">1639072-20190623191459351-927442548.png 4. Linux Bridge实现VLAN

1639072-20190623191521502-2061700696.png

1> 检查核心是否提供VLAN功能

  1. 通过dmesg命令来查看物理配置,看是否有802字段,同时查看/proc/net/vlan目录是否存在。如果没有提供VLAN功能,该目录是不存在的。
  2. [root@localhost ~]# dmesg | grep -i 802
  3. [ 0.380228] pci 0000:00:11.0: PCI bridge to [bus 02] (subtractive decode)
  4. [ 0.380255] pci 0000:00:11.0: bridge window [io 0x2000-0x3fff]
  5. [ 0.380281] pci 0000:00:11.0: bridge window [mem 0xfd500000-0xfdffffff]
  6. [ 0.580240] pci 0000:00:17.6: bridge window [io 0x1000-0x0fff] to [bus 19] add_size 1000
  7. [ 1.221802] pcieport 0000:00:15.7: irq 32 for MSI/MSI-X
  8. [ 1.228025] pciehp 0000:00:18.5:pcie04: Slot #261 AttnBtn+ PwrCtrl+ MRL- AttnInd- PwrInd- HotPlug+ Surprise- Interlock- NoCompl+ LLActRep+
  9. [ 1.249802] hp_sw: device handler registered
  10. [ 2.917802] systemd[1]: Inserted module 'ip_tables'
  11. 8021模块没有载入系统。则可以使用 modprobe模块组命令载入8021q模块,再利用lsmod命令查看模块是否载入到核心内。
  12. [root@localhost ~]# modprobe 8021q
  13. [root@localhost ~]# lsmod | grep 8021q
  14. 8021q 33104 0
  15. garp 14384 1 8021q
  16. mrp 18542 1 8021q
  17. [root@localhost ~]#

设置开机载入8021q模块(可选)

  在/etc/sysconfig/modules下增加一个8021q.modules文件,文件内容为modprobe 8021q

  1. vim /etc/sysconfig/modules/8021q.modules
  2. modprobe 8021q

2> 安装VLAN管理工具vconfig

  1. [root@localhost ~]# rz
  2. [root@localhost ~]# ls
  3. vconfig-1.9-16.el7.x86_64.rpm
  4. [root@localhost ~]# yum localinstall vconfig-1.9-16.el7.x86_64.rpm -y

3> 创建VLAN接口

  创建VLAN接口前,在设备上添加一块网卡,并配置为静态,在ens37这块网卡上设置VLAN。

1639072-20190623191748815-1259559563.png

添加网卡

  1. [root@localhost ~]# cd /etc/sysconfig/network-scripts/
  2. [root@localhost network-scripts]# ls
  3. [root@localhost network-scripts]# nmtui

1639072-20190623191811896-811338596.png

1639072-20190623191818250-2114835583.png

修改网卡配置文件

  1. [root@localhost ~]# cd /etc/sysconfig/network-scripts/
  2. [root@localhost network-scripts]# vim ifcfg-ens37
  3. BOOTPROTO=static #只改这一行即可
  4. [root@localhost network-scripts]# systemctl restart network #由于无法获取ip,重启有可能起不来,由于该网卡只用作VLAN,起不来也可以
  5. [root@localhost ~]# ip a
  6. ....
  7. 9: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
  8. link/ether 00:0c:29:cc:05:06 brd ff:ff:ff:ff:ff:ff
  9. inet6 fe80::4d27:24e8:e097:435c/64 scope link
  10. valid_lft forever preferred_lft forever
  11. ......

添加VLAN。用命令vconfig add

  1. [root@localhost ~]# vconfig add ens37 10
  2. Added VLAN with VID == 10 to IF -:ens37:-
  3. [root@localhost ~]# ip a
  4. ..
  5. 11: ens37.10@ens37: <BROADCAST,MULTICAST,M-DOWN> mtu 1500 qdisc noop state DOWN qlen 1000
  6. link/ether 00:0c:29:cc:05:06 brd ff:ff:ff:ff:ff:ff
  7. .....
  8. [root@localhost ~]# vconfig add ens37 20
  9. Added VLAN with VID == 20 to IF -:ens37:-

给两个VLAN端口进行配置,写入网桥brvlan

  1. [root@localhost network-scripts]# cp ifcfg-ens37 ifcfg-ens37.10
  2. [root@localhost network-scripts]# vim ifcfg-ens37.10
  3. VLAN=yes
  4. TYPE=vlan
  5. PHYSDEV=ens37
  6. VLAN_ID=10
  7. NAME=ens37.10
  8. ONBOOT=yes
  9. ZONE=trusted
  10. DEVICE=ens37.10
  11. BRIDGE=brvlan-10
  12. [root@localhost network-scripts]# cp ifcfg-ens37.10 ifcfg-ens37.20
  13. [root@localhost network-scripts]# vim ifcfg-ens37.20
  14. VLAN=yes
  15. TYPE=vlan
  16. PHYSDEV=ens37
  17. VLAN_ID=10
  18. NAME=ens37.10
  19. ONBOOT=yes
  20. ZONE=trusted
  21. DEVICE=ens37.10
  22. BRIDGE=brvlan-10
  23. :%s/10/20/g
  24. 结果:
  25. VLAN=yes
  26. TYPE=vlan
  27. PHYSDEV=ens37
  28. VLAN_ID=20
  29. NAME=ens37.20
  30. ONBOOT=yes
  31. ZONE=trusted
  32. DEVICE=ens37.20
  33. BRIDGE=brvlan-20

添加两块网桥

  1. [root@localhost ~]# brctl addbr brvlan-10
  2. [root@localhost ~]# brctl addbr brvlan-20

配置网桥

  1. [root@localhost network-scripts]# vim ifcfg-brvlan-10
  2. TYPE=bridge
  3. BOOTPROTO=static
  4. NAME=brvlan-10
  5. DEVICE=brvlan-10
  6. ONBOOT=yes
  7. [root@localhost network-scripts]# vim ifcfg-brvlan-20
  8. TYPE=bridge
  9. BOOTPROTO=static
  10. NAME=brvlan-20
  11. DEVICE=brvlan-20
  12. ONBOOT=yes

将网桥brvlan-10 接到网口ens37.10,brvlan-20 接到网口ens37.20,用命令brctl addif

  1. [root@localhost network-scripts]# brctl addif brvlan-10 ens37.10
  2. [root@localhost network-scripts]# brctl addif brvlan-20 ens37.20

重启,查看,

  1. [root@localhost network-scripts]# systemctl stop NetworkManager
  2. [root@localhost network-scripts]# systemctl restart network
  3. [root@localhost network-scripts]# ip a
  4. 11: ens37.10@ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master brvlan-10 state UP qlen 1000
  5. link/ether 00:0c:29:cc:05:06 brd ff:ff:ff:ff:ff:ff
  6. 12: ens37.20@ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master brvlan-20 state UP qlen 1000
  7. link/ether 00:0c:29:cc:05:06 brd ff:ff:ff:ff:ff:ff
  8. 13: brvlan-10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
  9. link/ether 00:0c:29:cc:05:06 brd ff:ff:ff:ff:ff:ff
  10. inet6 fe80::20c:29ff:fecc:506/64 scope link
  11. valid_lft forever preferred_lft forever
  12. 14: brvlan-20: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
  13. link/ether 00:0c:29:cc:05:06 brd ff:ff:ff:ff:ff:ff
  14. inet6 fe80::20c:29ff:fecc:506/64 scope link
  15. valid_lft forever preferred_lft forever

4> 克隆虚拟机

  1. 实验会用到两台虚拟机,但由于宿主机192.168.16.3仅有一台虚拟机centos7.0,因此需要克隆一份虚拟再做实验。
  2. 克隆虚拟机的两种方式:图形界面直接克隆、代码界面利用命令 virsh -clone进行克隆。

1) 图形化界面克隆

  1. 将要克隆的虚拟机关机,右键进行克隆。

1639072-20190623192301943-897073907.png

1639072-20190623192315063-1106849102.png2) 命令行界面克隆

下载virt

  1. [root@localhost ~]# mount /dev/cdrom /mnt
  2. mount: /dev/sr0 写保护,将以只读方式挂载
  3. [root@localhost ~]# yum install virt* -y

克隆

  1. [root@localhost ~]# virt-clone -o centos7.0 -n vm2 -f /var/lib/libvirt/vm2.qcow2
  2. 成功克隆 'vm2'

查看

  1. [root@localhost ~]# virsh list --all
  2. Id 名称 状态
  3. ----------------------------------------------------
  4. - centos7.0 关闭
  5. - vm1 关闭
  6. - vm2 关闭

5> 虚拟机连接网桥

  VM1连brvlan-10,VM2连brvlan-20

1639072-20190623192450042-1343479835.png

1639072-20190623192454688-1973374118.png

6> 开启两台虚拟机。此时我们的框架已经搭好了。

1639072-20190623192514538-1142635253.png

7> 测试两台虚拟机是否能通信

为了能够测试,先手动给两个虚拟机设置ip

  1. vm1:10.10.10.10 vm2:10.10.10.20

1639072-20190623192530033-593266597.png

1639072-20190623192541552-488627051.png

  此时两台虚拟机是互不相通的,因为brvlan-10和brvlan-20不在同一个网段,将其改到以同一个网段再测试

1639072-20190623192557182-540102069.png

1639072-20190623192606593-1938109812.png

1639072-20190623192617015-542065023.png

1639072-20190623192627098-613701874.png

若两台虚拟机想通外网,只需加一块网卡即可

1639072-20190623192638914-1752754060.png

1639072-20190623192653401-2042885590.png

1639072-20190623192701250-654875629.png

由于在配置文件/etc/resove.conf含有域名解析,因此能访问百度。

5. 网卡配置bond(绑定)

1>

  网卡bond(绑定),也称作网卡捆绑。就是将两个或者更多的物理网卡绑定成一个虚拟网卡。网卡是通过把多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在应用部署中是一种常用的技术。

  1. 多网卡绑定实际上需要提供一个额外的软件的bond驱动程序实现。通过驱动程序可以将多块网卡屏蔽。对TCP/IP协议层只存在一个Bond网卡,在Bond程序中实现网络流量的负载均衡,即将一个网络请求重定位到不同的网卡上,来提高总体网络的可用性。

2> 网卡绑定的目的

提高网卡的吞吐量。

增强网络的高可用,同时也能实现负载均衡。

3> 网卡配置bond(绑定)bond模式:

  1)Mode=0(balance-rr) 表示负载分担round-robin,平衡轮询策略,具有负载平衡和容错功能;

  bond的网卡MAC为当前活动的网卡的MAC地址(bond0),需要交换机设置聚合模式,将多个网卡绑定为一条链路。

  2)Mode=1(active-backup) 表示主备模式,具有容错功能,只有一块网卡是active,另外一块是备的standby,这时如果交换机配的是捆绑,将不能正常工作,因为交换机往两块网卡发包,有一半包是丢弃的。

  3) Mode=2(balance-xor) 表示XOR Hash负载分担(异或平衡策略),具有负载平衡和容错功能。每个slave接口传输每个数据包和交换机的聚合强制不协商方式配合。(需要xmit_hash_policy)。

  4) Mode=3(broadcast) 表示所有包从所有interface发出,广播策略,具有容错能力,这个不均衡,只有冗余机制…和交换机的聚合强制不协商方式配合。

  5)Mode=4(802.3ad) 表示支持802.3ad协议(IEEE802.3ad 动态链接聚合) 和交换机的聚合LACP方式配合(需要xmit_hash_policy)。

  6)Mode=5(balance-tlb) 适配器传输负载均衡,并行发送,无法并行接收,解决了数据发送的瓶颈。 是根据每个slave的负载情况选择slave进行发送,接收时使用当前轮到的slave。

  7) Mode=6(balance-alb) 在5的tlb基础上增加了rlb。适配器负载均衡模式并行发送,并行接收数据包。

  5)和6)不需要交换机端的设置,网卡能自动聚合。4需要支持802.3ad。0,2和3理论上需要静态聚合方式,但实测中0可以通过mac地址欺骗的方式在交换机不设置的情况下不太均衡地进行接收。

常用的有三种:

  mode=0:平衡负载模式,有自动备援,但需要”Switch”支援及设定。

  mode=1:自动备援模式,其中一条线若断线,其他线路将会自动备援。

  mode=6:平衡负载模式,有自动备援,不必”Switch”支援及设定。

4> 以模式6为例演示bond

实验需要两台宿主机,每台宿主机需要五张网卡。

1639072-20190623192948755-1888092969.png

1) 添加四块网卡,并克隆一台宿主机

  网卡1设置为nat模式连外网,网卡2~5设置为vmnat1仅主机模式进行bond(绑定)

1639072-20190623193006762-1383772286.png

克隆虚拟机

1639072-20190623193016940-357300614.png

2) 解绑实验环境

先将3. linux bridge实验的ens37网卡进行解绑

1)) 关闭虚拟机,从网桥脱离网口

  1. [root@localhost ~]# brctl show
  2. bridge name bridge id STP enabled interfaces
  3. br0 8000.0050563d215c no ens33
  4. brvlan-10 8000.000c2942c3f7 no ens37.10
  5. brvlan-20 8000.000c2942c3f7 no ens37.20
  6. virbr0 8000.5254009483b2 yes virbr0-nic
  7. [root@localhost ~]# brctl delif brvlan-10 ens37.10
  8. [root@localhost ~]# brctl delif brvlan-20 ens37.20
  9. [root@localhost ~]# brctl show
  10. bridge name bridge id STP enabled interfaces
  11. br0 8000.0050563d215c no ens33
  12. brvlan-10 8000.000000000000 no
  13. brvlan-20 8000.000000000000 no
  14. 2))删除网桥
  15. [root@localhost ~]# brctl delbr brvlan-10
  16. bridge brvlan-10 is still up; can't delete it #命令行无法进行删除,使用图形化界面进行删除
  17. [root@localhost ~]# nmtui

1639072-20190623193127825-1246894504.png

1639072-20190623193136975-2098290417.png

  1. 3)) 删除虚拟网口
  2. [root@localhost ~]# vconfig rem ens37.10
  3. Removed VLAN -:ens37.10:-
  4. [root@localhost ~]# vconfig rem ens37.20
  5. Removed VLAN -:ens37.20:-

3)将ens37、38、39、40都配置绑定为bond0

  1. [root@localhost ~]# cd /etc/sysconfig/network-scripts/
  2. [root@localhost network-scripts]# vim ifcfg-ens37
  3. TYPE=Ethernet
  4. BOOTPROTO=none
  5. DEVICE=ens37
  6. ONBOOT=yes
  7. MASTER=bond0
  8. SLAVE=yes
  9. [root@localhost network-scripts]# vim ifcfg-ens38
  10. TYPE=Ethernet
  11. BOOTPROTO=none
  12. DEVICE=ens38
  13. ONBOOT=yes
  14. MASTER=bond0
  15. SLAVE=yes
  16. [root@localhost network-scripts]# vim ifcfg-ens39
  17. TYPE=Ethernet
  18. BOOTPROTO=none
  19. DEVICE=ens39
  20. ONBOOT=yes
  21. MASTER=bond0
  22. SLAVE=yes
  23. [root@localhost network-scripts]# vim ifcfg-ens40
  24. TYPE=Ethernet
  25. BOOTPROTO=none
  26. DEVICE=ens40
  27. ONBOOT=yes
  28. MASTER=bond0
  29. SLAVE=yes

4) 加载bonding模块

  1. [root@localhost network-scripts]# modprobe bonding

5) 创建bond0网卡配置文件

  1. [root@localhost network-scripts]# vim ifcfg-bond0
  2. DEVICE=bond0
  3. TYPE=Bond
  4. NAME=bond0
  5. BONDING_MASTER=yes #设置为 绑定网卡主
  6. BOOTPROTO=static
  7. USERCTL=no
  8. ONBOOT=yes
  9. BONDING_OPTS="mode=6 miimon=100" #模式6,检测100秒网卡的状态
  10. BRIDGE=br1

6) 配置网桥br1

  1. [root@localhost network-scripts]# vim ifcfg-br1
  2. TYPE=Bridge
  3. DEVICE=br1
  4. ONBOOT=yes
  5. BOOTPROTO=static
  6. NAME=br1

7) 在br1上创建虚拟网口br1.10、br1.20

  1. [root@localhost network-scripts]# brctl addbr br1 #添加虚拟网口
  2. [root@localhost network-scripts]# brctl addbr br2
  3. [root@localhost network-scripts]# vconfig add br1 10 #添加VLAN
  4. Added VLAN with VID == 10 to IF -:br1:-
  5. [root@localhost network-scripts]# vconfig add br1 20
  6. Added VLAN with VID == 20 to IF -:br1:-
  7. [root@localhost network-scripts]# ip a
  8. 15: br1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
  9. link/ether 62:27:26:04:33:2f brd ff:ff:ff:ff:ff:ff
  10. 16: br2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
  11. link/ether 66:1c:df:79:22:3a brd ff:ff:ff:ff:ff:ff
  12. 17: br1.10@br1: <BROADCAST,MULTICAST,M-DOWN> mtu 1500 qdisc noop state DOWN qlen 1000
  13. link/ether 62:27:26:04:33:2f brd ff:ff:ff:ff:ff:ff
  14. 18: br1.20@br1: <BROADCAST,MULTICAST,M-DOWN> mtu 1500 qdisc noop state DOWN qlen 1000
  15. link/ether 62:27:26:04:33:2f brd ff:ff:ff:ff:ff:ff

8) 创建虚拟网桥brvlan-10、brvlan-20

  1. [root@localhost network-scripts]# brctl addbr brvlan-10
  2. [root@localhost network-scripts]# brctl addbr brvlan-20

9) 连接虚拟网桥和VLAN接口

  1. [root@localhost network-scripts]# brctl addif brvlan-10 br1.10
  2. [root@localhost network-scripts]# brctl addif brvlan-20 br1.20
  3. [root@localhost network-scripts]# brctl show
  4. brvlan-10 8000.62272604332f no br1.10
  5. brvlan-20 8000.62272604332f no br1.20

10) 配置虚拟网口

  1. [root@localhost network-scripts]# vim ifcfg-br1.10
  2. VLAN=yes
  3. TYPE=vlan
  4. PHYSDEV=br1
  5. VLAN_ID=10
  6. NAME=br1.10
  7. ONBOOT=yes
  8. ZONE=trusted
  9. DEVICE=br1.10
  10. BRIDGE=brvlan-10
  11. [root@localhost network-scripts]# vim ifcfg-br1.20
  12. VLAN=yes
  13. TYPE=vlan
  14. PHYSDEV=br1
  15. VLAN_ID=20
  16. NAME=br1.20
  17. ONBOOT=yes
  18. ZONE=trusted
  19. DEVICE=br1.20
  20. BRIDGE=brvlan-20

11) 配置虚拟网桥

  1. [root@localhost network-scripts]# vim ifcfg-brvlan-10
  2. TYPE=bridge
  3. BOOTPROTO=static
  4. NAME=brvlan-10
  5. DEVICE=brvlan-10
  6. ONBOOT=yes
  7. [root@localhost network-scripts]# vim ifcfg-brvlan-20
  8. TYPE=bridge
  9. BOOTPROTO=static
  10. NAME=brvlan-20
  11. DEVICE=brvlan-20
  12. ONBOOT=yes

12) 重启网络

  1. [root@localhost network-scripts]# systemctl restart network
  2. [root@localhost network-scripts]# ip a
  3. .......
  4. 17: br1.10@br1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master brvlan-10 state UP qlen 1000
  5. link/ether 62:27:26:04:33:2f brd ff:ff:ff:ff:ff:ff
  6. 18: br1.20@br1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master brvlan-20 state UP qlen 1000
  7. link/ether 62:27:26:04:33:2f brd ff:ff:ff:ff:ff:ff

13) 打开虚拟机,连接测试

修改网卡连接

1639072-20190623194012767-715695861.png

1639072-20190623194018292-176780235.png

1639072-20190623194031552-440116563.png

1639072-20190623194040778-2034091574.png

1639072-20190623194049088-730754325.png

  用vm1 ping vm2,由于vm1处在brvlan-10而vm2处在brvlan-20,不在同一网段,因此无法ping通。

1639072-20190623194113497-208597990.png

1639072-20190623194125300-1911522994.png

如果将vm1、vm2设置为同一个VLAN,则两台虚拟机可以ping通

1639072-20190623194140870-1116370837.png

1639072-20190623194155943-688832225.png

转载于:https://www.cnblogs.com/ajunyu/p/11073956.html

发表评论

表情:
评论列表 (有 0 条评论,510人围观)

还没有评论,来说两句吧...

相关阅读

    相关 kvm虚拟

    第1章 虚拟化的分类 1.1  全虚拟化与半虚拟化 全虚拟化  又叫硬件辅助虚拟化技术,最初所使用的虚拟化技术就是全虚拟化(Full Virtualizatio

    相关 kvm网络虚拟管理

    1. Linux Bridge网桥管理   一个网桥上添加多个虚拟机,虚拟机之间是可以相互通信的的,同时虚拟机也都可以通外网。 ![1639072-2019062319