03.03 Windows10 Hyper-V虚拟机网络配置方式(2)-外部网络虚拟交换机

1、 创建虚拟交换机

使用Hyper-V管理器创建虚拟交换机,该虚拟交换机要连接到外部网络,不允许管理操作系统共享此网络适配器,创建过程如下图1。

Windows10 Hyper-V虚拟机网络配置方式(2)-外部网络虚拟交换机

图1:创建虚拟交换机,虚拟交换机连接到外部网络,不允许管理操作系统共享此网络适配置

虚拟交换机创建完成后,在windows的"网络和internet"中不会增加新的虚拟网卡,创建虚拟交换前后网络属性的对比见下 "图2 创建虚拟机后,可以使用原来网卡的项目的变化情况"。原来的物理网卡已经虚拟成了一台"可扩展的虚拟交换机",原来的网卡属性,如使用原来网卡的功能已经不能使用该网卡(虚拟交换机)。

Windows10 Hyper-V虚拟机网络配置方式(2)-外部网络虚拟交换机

图2 创建虚拟机后,可以使用原来网卡的项目的变化情况

2、 创建新的虚拟机,安装虚拟机的操作系统

创建新的虚拟机,使用刚创建的虚拟交换机,虚拟交换机是外部网络交换机,允许管理操作系统共享网络适配器。

不重新安装操作系统,使用以前创建虚拟机建立的虚拟硬盘,虚拟硬盘中安装有ubuntu操作系统。本次创建4台虚拟机。

虚拟机ubunt01和ubuntu02分别使用ubunt03.vhdx和ubuntu04.vhdx虚拟硬盘。这两块虚拟硬盘在安装操作系统时采用的是dhcp自动获取IP地址,虚拟机使用的虚拟交换机是defalut switch默认虚拟交换机。

虚拟机ubunt03和ubuntu04分别使用ubunt01.vhdx和ubuntu02.vhdx虚拟硬盘。这两块虚拟硬盘在安装操作系统时采用的是静态IP地址,虚拟机使用的虚拟交换机是外部网络交换机,并允许管理操作系统共享此网络适配器。

使用Hyper-V管理器创建虚拟机时指定"使用现有虚拟硬盘"的操作见下 "图3 创建虚拟机,指定虚拟硬盘"。

Windows10 Hyper-V虚拟机网络配置方式(2)-外部网络虚拟交换机

图3 创建虚拟机,指定虚拟硬盘

3、 创建虚拟机并安装操作系统后各虚拟机的网络状况。

原windows系统的网络连接中只有两台虚拟网络交换机,vEthernet是安装Hyper-V软件系统默认自动创建的虚拟交换机;"以太网"是原来的物理网卡,安装外部网络的虚拟交换机后,该网卡虚拟成了可扩展的虚拟交换机,该交换机又没有给管理操作系统共享,故原windows系统没有网络连接,没有IP,不能和任何设备联网。如下图图4所示。

Windows10 Hyper-V虚拟机网络配置方式(2)-外部网络虚拟交换机

图4 网络适配器中只有两台虚拟交换机,没有创建虚拟网卡

Ubunt01和ubuntu02两台虚拟机,安装的ubuntu操作系统,使用的是dhcp自动获取IP地址,虚拟机操作系统启动后,dhcp运行正常,获取到了正常的IP地址。如下图图5所示。

Windows10 Hyper-V虚拟机网络配置方式(2)-外部网络虚拟交换机

图5 虚拟机的动态主机配置协议dhcp能正确配置网络参数

Ubuntu03和ubuntu04虚拟机,安装的ubuntu操作系统,采用的是静态IP,系统启动后能正确配置网络参数。如下图图6所示。

Windows10 Hyper-V虚拟机网络配置方式(2)-外部网络虚拟交换机

图6 虚拟机配置静态IP,系统启动后网络参数配置正常

经测试,这四台虚拟机都互相可以ping通。原宿主机由于没有网络,不能和虚拟机通信。

4、 修改虚拟交换机的属性

由于只有一块物理网卡,安装这种方式的虚拟机交换机后,系统会将原来的物理网卡虚拟成一台虚拟交换机,但不会创建新的虚拟网卡。故原来的windows系统失去了网络连接,不能上外网,也不能访问新安装的虚拟机操作系统。

在"网络和Internet"中,修改适配器"以太网 一起用"的属性,即修改虚拟交换机的属性,取消"Hyper-V可扩展的虚拟交换机"项目后,该连接不再为虚拟机交换机提供服务,虚拟交换机变更为原来的物理网卡,标签变为"以太网 网络",windows重新取得网络连接,可以上网了。见下图图7所示。

Windows10 Hyper-V虚拟机网络配置方式(2)-外部网络虚拟交换机

图7 在"以太网 已启用"的属性中取消"Hyper-V可扩展的虚拟交换机"恢复为原来的物理网卡

此时,虚拟机由于失去了虚拟交换机的网络支持,虚拟机操作系统可以启动,但无法联网,失去了网络连接。见下图图8,对于原来dhcp4为true的方式,或者是直接指定的IPV4地址,系统启动后都无法获得IP地址,无法进行TCP/IP网络通信。

Windows10 Hyper-V虚拟机网络配置方式(2)-外部网络虚拟交换机

图8 没有虚拟交换机支持的虚拟机操作系统启动后无法获得IP地址,无法进行TCP/IP通信

在windows的网络和internet中,修改原物理网卡(安装Hyper-V虚拟成的可扩展虚拟交换机)支持的项目,取消Hyper-V支持后,虚拟交换机恢复成了原来的物理网卡,在Hyper-V管理器中查询原虚拟交换机的信息,发现原来连接到外部网络的虚拟交换机Hyper-v变成了连接到专用网络类型,原来的ubuntu操作系统不再能配置正常的IP了,见下图图9。

Windows10 Hyper-V虚拟机网络配置方式(2)-外部网络虚拟交换机

图9 在Hyper-V管理器中可以看到windows中修改适配器属性后原来的虚拟交换机改变了连接类型。

在Hyper-V管理起中将Hyper-v改成外部网络交换机,原来的ubuntu虚拟机操作系统的网络就可以正常使用了。

5、 物理机虚拟机实际组网结构和连通性测试

物理机A: Microsoft Windows 10.0.18363 专业版,是将被虚拟化的主机。

物理机B: Microsoft Windows 10.0.18363家庭版,是系统中一台完整的物理机。

虚拟机1-3:Ubuntu 18.04.3 LTS,是在物理机A上虚拟出的3台虚拟机,安装Ubuntu操作系统。

物理机A和物理机B采用自动获取IP和DNS 的方式,连接到家庭无线路由器,无线路由器通过光猫连接到互联网,物理机A和B能正常上网和信息交互。

在物理机A上启用Hyper-V功能;创建虚拟交换机,该交换机采用外部网络连接方式,不允许管理操作系统共享该网络适配器;创建虚拟机A/B/C,这些虚拟机使用该虚拟交换机连接网络;在这些虚拟机上安装Ubuntu Server 18.04操作系统。

上述操作完成后,需要测试网络的连通性。

测试场景和测试结果如下:物理机A由于只有一块网卡,且该网卡已经虚拟成一台虚拟交换机,且物理机A不能共享该虚拟交换机,故主机A没有网络连接,不能和任何机器通信,只能作为管理机,使用Hyper-V管理虚拟机。

各虚拟机互相都能ping通;物理机B能ping通所有虚拟机;调整物理机B的防火墙设置,就能ping通所有虚拟机;物理机B和所有虚拟机都能访问外网。

实际测试的网络组网图见下图图10。

Windows10 Hyper-V虚拟机网络配置方式(2)-外部网络虚拟交换机

图10:物理机A和B连接在无线路由器上,将物理机A虚拟化出3台ubuntu虚拟机,物理机、虚拟机、路由器的连接示

6、 Windows和ubuntu的网络切换

在各ubuntu虚拟机使用虚拟交换机能获取网络的情况下,在windows的"网络和internet"中将"以太网 已启用"修改"Hyper-V可扩展虚拟交换机"属性取消,则windows将获取网络连接,原ubuntu虚拟机失去网络连接。

在Hyper-V管理器中,将ubuntu使用的虚拟交换机的属性改回到"外部网络",并不允许管理操作系统共享网络适配器时,各ubuntu虚拟机重新获得原来的网络连接,windows失去网络连接。

7、 适用场景

出于安全考虑,windows不用联网,只用来创建和维护虚拟机,和外界隔离性较高。外界用户使用这些虚拟机,可以通过网络设备例如交换机或路由器连接到物理机虚拟出来的虚拟交换机,并进行需要安全设置即可。

8、 其他

一个外部虚拟网络需要绑定到一块物理网卡,故单网卡的主机不能创建多个外部虚拟网络交换机。创建虚拟交换机会在网络适配器中启用"Hyper-V可扩展虚拟交换机",如果手动在网络适配器中设置了该选项,在Hyper-V管理中创建虚拟交换机会报错。


分享到:


相關文章: