Windows hyper-v 宿主机与虚拟机使用内部虚拟交换机进行通信
hyper-v-
以管理员身份打开 PowerShell 控制台。
-
创建内部交换机。
New-VMSwitch -SwitchName "Internal-VMSwitch" -SwitchType Internal执行结果
PS C:\WINDOWS\system32> New-VMSwitch -SwitchName "Internal-VMSwitch" -SwitchType Internal Name SwitchType NetAdapterInterfaceDescription ---- ---------- ------------------------------ Internal-VMSwitch Internal -
查找刚创建的虚拟交换机的接口索引。 可以通过运行 Get-NetAdapter 来查找接口索引
PS C:\WINDOWS\system32> Get-NetAdapter Name InterfaceDescription ifIndex Status MacAddress LinkSpeed ---- -------------------- ------- ------ ---------- --------- vEthernet (Internal-VM... Hyper-V Virtual Ethernet Adapter #4 50 Up 00-15-5D-03-03-1A 10 Gbps如图ifIndex为50
-
使用 New-NetIPAddress 配置 NAT 网关。
# IPAddress -> NAT 网关 IP 指定要用作 NAT 网关 IP 的 IPv4 或 IPv6 地址。 # PrefixLength -> NAT 子网前缀长度定义的 NAT 本地子网大小(子网掩码)。 # InterfaceIndex -> ifIndex 是你在上一步中确定的虚拟交换机的接口索引。 PS C:\Windows\system32>New-NetIPAddress -IPAddress 192.168.50.1 -PrefixLength 24 -InterfaceIndex 50 -
使用 New-NetNat 配置 NAT 网络。
# Name - NATOutsideName 描述 NAT 网络的名称。 将使用此参数删除 NAT 网络。 # InternalIPInterfaceAddressPrefix - NAT 子网前缀同时描述上述 NAT 网关 IP 前缀和上述 NAT 子网前缀长度。 New-NetNat -Name "Internal-NetNat" -InternalIPInterfaceAddressPrefix 192.168.50.1/24执行结果
PS C:\WINDOWS\system32> New-NetNat -Name "Internal-NetNat" -InternalIPInterfaceAddressPrefix 192.168.50.1/24 Name : Internal-NetNat ExternalIPInterfaceAddressPrefix : InternalIPInterfaceAddressPrefix : 192.168.50.1/24 IcmpQueryTimeout : 30 TcpEstablishedConnectionTimeout : 1800 TcpTransientConnectionTimeout : 120 TcpFilteringBehavior : AddressDependentFiltering UdpFilteringBehavior : AddressDependentFiltering UdpIdleSessionTimeout : 120 UdpInboundRefresh : False Store : Local Active : True