在WS2016或 Windows 10中 構 建Hyper-V 虛擬交換機(virtual switch)的目的,是讓虛擬機通過NAT (network address translation,網絡地址轉換)訪問外部網絡。
我們知道,NAT的作用是讓專用網絡采用單一IP地址連接外部的大型網絡,此即意味著專用網絡中多臺機器只占用大型網絡一個IP,從而有利于大型網絡的資源分配。NAT案例在實際應中較為常見,例如某個教學機房全部PC都是運行Client Hyper-V的Windows 10,而每臺PC都可被網絡系統(tǒng)識別為虛擬機。
在Windows 10或WS2016 Hyper-V機器上,然后我們就可以通過三行的PowerShell的命令來執(zhí)行NAT虛擬交換機。
第一步,我們需要生成一個內部虛擬交換機,該交換機并不連接主機物理網卡,此時主機操作系統(tǒng)具有一個連接虛擬交換機的虛擬網卡。
也就是說,內部交換機所連的虛擬機可以和主機交談,但它們并不能與主機所連網絡進行交流。生成內部虛擬交換機的PowerShell命令行如下所示:
New-VMSwitc h-SwitchName“NATSwitch”-SwitchType Internal
第二步,我們需要將主機管理系統(tǒng)中的虛擬網卡連接到內部虛擬交換機上。此時,通過PowerShell命令可以為虛擬網卡來分配IPv4地址,這也就是我們所要生成的NAT網絡的默認網關,該PowerShell命令如下所示:
New-NetIPAddress-IPAddress 192.168.0.1-PrefixLength24-InterfaceAlias“vEthernet (NATSwitch)”
最后需要對運行虛擬交換機的NAT網絡配置網絡地址,也就是調用虛擬交換機的虛擬機器所需的專用地址段,PowerShell命令如下所示:
New-NetNAT -Name“NATNetwork” -InternalI PInterfaceAddressPrefix 192.168.0.0/24
此時,虛擬交換機上運行的任何的虛擬機所采用的IPv4地址范圍應當是192.168.0.0,這些機器需要通過操作系統(tǒng)內的網卡和NAT由 LAN 進行路由。
需要指出的是,此時的虛擬交換機并不具有 DHCP(Dynamic Host Configuration Protocol,動態(tài)主機配置協(xié)議)功能,所以,只能為機器分配靜態(tài)IP地址,當然我們也可以為其分配DHCP服務器。
為了讓NAT虛擬交換機上的虛擬機享有運行在LAN上的DHCP服務,管理員需要為每個客戶系統(tǒng)手工分配IPv4地址,這樣做較為費事,此時可以考慮為虛擬交換機上的虛擬機分配一臺或更多DHCP服務器。
注意,不要讓DHCP 服務器連接外部虛擬交換機。
WS2016中 提 供 的PowerShell命令可以進行IP地址分配,具體操作如下:
(1)登錄虛擬機(比如名為 My-VM1),命令為 :Enter-PSSession -VMName Petri-VM1
(2)提取所要配置的適配器的名稱,命令為:Get-NetAdapter
(3)設置IP地址,子網掩碼以及默認網關,命令如下所示:
New-NetIPAddress-InterfaceAlias"Ethernet2"-IPAddress 192.168.0.31-PrefixLength24-DefaultGateway 192.168.0.1
(4)設置DNS(域名服務器),命令如下所示:
Set-DnsClientServerA ddress -InterfaceAlias"Ethernet2"-ServerAddresses"208.67.222.222,208.67.2 20.220"。