玩转神龙服务器的Hyper-V虚拟化网络配置之 保持虚拟机网络连通性

本文涉及的产品
公网NAT网关,每月750个小时 15CU
简介: 相信已经有同学已经在神龙上部署了Hyper-V了。又可以随心所欲的创建VM玩耍了。但是关于Hyper-V虚拟机的网络配置,相信还有一些同学没有玩过。 首先,我们来简单介绍下Hyper-v的三种虚拟交换机的类型: * **外部交换机** 这种交换机允许虚拟机访问到真实的物理网络。虚拟机之间和Hyper-V Server (这里是我们的神龙物理机)也可以相互访问。 ![imag

相信已经有同学已经在神龙上部署了Hyper-V了。又可以随心所欲的创建VM玩耍了。但是关于Hyper-V虚拟机的网络配置,相信还有一些同学没有玩过。

首先,我们来简单介绍下Hyper-v的三种虚拟交换机的类型:

  • 外部交换机

这种交换机允许虚拟机访问到真实的物理网络。虚拟机之间和Hyper-V Server (这里是我们的神龙物理机)也可以相互访问。

image.png

Hyper-V Server操作系统的直观变化:
创建一个虚拟网卡,将真实网卡的所有协议转移到这个网卡上,真实网卡只保留 LLDP 协议和 Hyper-V Extensible Virtual Switch协议。
真实网卡充当了虚拟交换机的角色。

image.png

  • 内部交换机

这种交换机允许虚拟机以及Hyper-V Server之间相互访问。除非特殊配置,虚拟机无法访问真实网络。

image.png

Hyper-V Server操作系统的直观变化:
创建一个和真实网卡一样的虚拟网卡。真实网卡仍保持原有的功能。

image.png

  • 专用(私有)交换机

这种交换机只允许虚拟机之间相互访问。无法访问Hyper-V Server及真实网络。

image.png

Hyper-V Server操作系统的直观变化:
无任何变化。

在真实的物理环境中,我们一般通过创建外部交换机从而让虚拟机能够无需额外配置就能访问。但是在神龙环境中,我们无法这样做。因此我们需要通过创建 内部交换机 再通过NAT的方式来使虚拟机访问网络。也就是说,我们要做这样一件事:

image.png

为了方便测试,所有步骤使用Powershell 命令。具体步骤如下:

注:以下方法仅适用于操作系统为Windows Server 2016 和 Windows 10 或更高的版本的神龙服务器。对于Windows Server 2012 R2, 需要安装额外的组件来完成这一操作,这个会在后面的文章中讲到。

安装Hyper-V

Install-WindowsFeature -Name Hyper-V -IncludeManagementTools -Restart

运行完后会自动重启两次。

创建虚拟交换机

  1. 创建内部交换机。
New-VMSwitch -name "XDragonInternalSwitch" -SwitchType Internal
  1. 创建NAT GateWay.
$NATGatewayIP = "192.168.100.1"
$PrefixLength = 24

$xdragonswitch = Get-NetAdapter | ? {$_.Name -like "*XDragonInternalSwitch*"} 
New-NetIPAddress -IPAddress $NATGatewayIP -PrefixLength $PrefixLength -InterfaceIndex $xdragonswitch.ifIndex 

其中 $NATGatewayIP 是内部交换机的虚拟网卡的IP.这个值和 $PrefixLength可以按实例需要指定。

  1. 创建NAT 网络.
$Prefix = "192.168.100.0/24"
New-NetNat -Name XDragonNATNetwork -InternalIPInterfaceAddressPrefix $Prefix

注意这里的$Prefix要和第2步创建Gateway保持一致性。

创建虚拟机

这里我预先Copy了阿里云的镜像VHD文件win2016_64_dtc_1607_en-us_40G_noxen_20180801.vhd放在了D盘。我会为每一个虚拟机新建一个基于此VHD的差异磁盘。

New-VHD -ParentPath D:\win2016_64_dtc_1607_en-us_40G_noxen_20180801.vhd -Path "D:\Hyper-V\VM1\Virtual Hard Disks\VM1.vhd" -Differencing
New-VM -Name VM1 -MemoryStartupBytes 4GB -BootDevice VHD -VHDPath "D:\Hyper-V\VM1\Virtual Hard Disks\VM1.vhd" -Path "D:\Hyper-V" -Generation 1 -Switch XDragonInternalSwitch
Start-VM -Name VM1

安装DHCP Server (可选)

当要创建多台VM,还为每一个VM配静态IP是一件麻烦事。我们可以在Hyper-v Server上创建DHCP服务器。这样,VM无需任何网络配置就可以正常连接了。

$NatGatewayIP = "192.168.100.1" # 这里必须是内部交换机虚拟网卡的IP
$DNSServers = ("100.100.2.136", "100.100.2.138") # 这里必须是Hyper-V Server的真实DNS Server 配置
$DHCPServerStartIP = "192.168.100.10" # 开始分发的IP, 自定义
$DHCPServerEndIP = "192.168.100.200" # 结束分发的IP, 自定义
$SubnetMask = "255.255.255.0" 

Install-WindowsFeature DHCP -IncludeManagementTools

netsh dhcp add securitygroups
Restart-service dhcpserver

Set-DhcpServerv4DnsSetting -DynamicUpdates "Always" -DeleteDnsRRonLeaseExpiry $True

Add-DhcpServerv4Scope -name "XDragonHyperVVMs" -StartRange $DHCPServerStartIP -EndRange $DHCPServerEndIP -SubnetMask $SubnetMask -State Active
Set-DhcpServerv4OptionValue -DnsServer $DNSServers -Router $NatGatewayIP

或者,不在Hyper-V Server上,可以单独创建一个VM,配成DHCP Server. 原理差不多。

配置虚拟机网络

如果我们在Hyper-V Server或者另起一台VM配了DHCP Server的话,这一步就无需配了。直接就可以连网了。
如果我们没有配置DHCP Server,那么当虚拟机启动后,我们要对虚拟机的网卡做如下的IP的配置:

IP: 192.168.100.2 (NAT 网络范围内任一没有使用的IP都可以)
Subnet: 255.255.255.0 (根据 NAT 网络的Prefix确定)
Gateway: 192.168.100.1 (NATGatewayIP,即Hyper-V Server上内部交换机虚拟网卡的IP)
DNS: 100.100.2.136/100.100.2.138 (Hyper-V Server上真实网卡的DNS)

image.png

这样,虚拟机就可以正常访问外部网络了。

参考:

https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v

https://docs.microsoft.com/en-us/powershell/module/hyper-v/new-vhd?view=win10-ps

https://docs.microsoft.com/en-us/powershell/module/hyper-v/new-vm?view=win10-ps

https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/user-guide/setup-nat-network

https://docs.microsoft.com/en-us/windows-server/networking/technologies/dhcp/dhcp-deploy-wps

相关文章
|
4月前
|
网络协议 区块链 KVM
Arista vEOS 4.30.10M - 虚拟化的数据中心和云网络可扩展操作系统
Arista vEOS 4.30.10M - 虚拟化的数据中心和云网络可扩展操作系统
122 2
Arista vEOS 4.30.10M - 虚拟化的数据中心和云网络可扩展操作系统
|
5月前
|
域名解析 API PHP
VM虚拟机全版本网盘+免费本地网络穿透端口映射实时同步动态家庭IP教程
本文介绍了如何通过网络穿透技术让公网直接访问家庭电脑,充分发挥本地硬件性能。相比第三方服务受限于转发带宽,此方法利用自家宽带实现更高效率。文章详细讲解了端口映射教程,包括不同网络环境(仅光猫、光猫+路由器)下的设置步骤,并提供实时同步动态IP的两种方案:自建服务器或使用三方API接口。最后附上VM虚拟机全版本下载链接,便于用户在穿透后将服务运行于虚拟环境中,提升安全性与适用性。
|
6月前
|
存储 监控 虚拟化
Hyper V上网优化:提升虚拟机网络速度
要优化Hyper-V虚拟机的网络速度,可从以下几方面入手:1. 优化虚拟交换机配置,如选择合适的交换机类型、启用SR-IOV、配置VLAN和QoS策略;2. 调整网络适配器设置,选择适当的适配器类型并启用VRQ等;3. 优化宿主机网络配置,更新网卡固件和驱动,启用硬件加速;4. 使用性能监视工具监控网络流量;5. 其他措施如启用硬件虚拟化、使用外部存储、配置NLB等。通过合理配置,可显著提升网络性能。
|
6月前
|
安全 网络安全 虚拟化
Hyper-V网络连接无响应解决方案
当Hyper-V虚拟机出现网络连接无响应时,可从以下方面排查:1) 检查物理网络连接,确保设备正常;2) 验证虚拟网络配置,包括虚拟交换机和网络适配器设置;3) 更新驱动程序以解决兼容性问题;4) 调整防火墙和安全软件设置;5) 重启相关服务和设备;6) 使用命令行工具诊断网络问题;7) 检查BIOS中虚拟化技术是否启用;8) 排查IP冲突和其他日志错误。综合以上步骤,可有效修复网络连接故障。
|
6月前
|
安全 网络协议 网络安全
当虚拟机出现网络连接问题时,应该先检查Hyper-V的网卡连接配置
当虚拟机出现网络连接问题时,应首先检查Hyper-V的网卡配置。具体步骤包括:确认虚拟机运行状态、检查虚拟交换机类型和物理网卡连接、确保虚拟机网络适配器正确连接到虚拟交换机,并验证网络配置(IP地址等)。常见问题如虚拟交换机配置错误、网络适配器未连接或防火墙阻止连接,可通过重新配置或调整设置解决。必要时重启虚拟机和宿主机,查看事件日志或联系技术支持以进一步排查问题。
|
6月前
|
监控 安全 网络协议
Hyper V上网实战:多虚拟机网络环境配置
在Hyper-V环境中配置多虚拟机网络以实现上网功能,需完成以下步骤:1. 确认Hyper-V安装与物理网络连接正常;2. 配置虚拟交换机(外部、内部或专用)以支持不同网络需求;3. 设置虚拟机网络适配器并关联对应虚拟交换机;4. 验证虚拟机网络连接状态;5. 根据场景需求优化多虚拟机网络环境。此外,还需注意网络隔离、性能监控及数据备份等事项,确保网络安全稳定运行。
|
6月前
|
虚拟化 网络虚拟化 Windows
导入虚拟机到Hyper-V环境时,理解并配置网络适配器设置是确保网络通信的关键
在Hyper-V环境中,正确配置虚拟机的网络适配器是确保其网络通信的关键。需先启用Hyper-V功能并创建虚拟交换机。接着,在Hyper-V管理器中选择目标虚拟机,添加或配置网络适配器,选择合适的虚拟交换机(外部、内部或私有),并根据需求配置VLAN、MAC地址等选项。最后,启动虚拟机并验证网络连接,确保其能正常访问外部网络、与主机及其他虚拟机通信。常见问题包括无法访问外部网络或获取IP地址,需检查虚拟交换机和适配器设置。
|
3月前
|
虚拟化 数据中心
VMware vSphere Replication 9.0.3 - 虚拟机复制和数据保护
VMware vSphere Replication 9.0.3 - 虚拟机复制和数据保护
165 0
|
2月前
|
编解码 网络协议 网络安全
OpenWrt x86 虚拟机VMware ESXi安装
OpenWrt x86 虚拟机VMware ESXi安装

热门文章

最新文章