引言:在 Windows Server 2016(以下簡稱WS2016)或 Windows 10中構(gòu)建 Hyper-V 虛擬交換機(Virtual Switch )的目的,是讓虛擬機通過NAT訪問外部網(wǎng)絡(luò)。NAT的作用是讓專用網(wǎng)絡(luò)采用單一IP地址連接外部的大型網(wǎng)絡(luò),這樣網(wǎng)絡(luò)中多臺機器只占用大型網(wǎng)絡(luò)一個IP,有利于大型網(wǎng)絡(luò)的資源分配。
在Windows Server 2016(以下簡稱WS2016)或 Windows 10中構(gòu)建 Hyper-V虛擬交換機(Virtual Switch)的目的,是讓虛擬機通過NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換)訪問外部網(wǎng)絡(luò)。NAT的作用是讓專用網(wǎng)絡(luò)采用單一IP地址連接外部的大型網(wǎng)絡(luò),此即意味著專用網(wǎng)絡(luò)中多臺機器只占用大型網(wǎng)絡(luò)一個IP,從而有利于大型網(wǎng)絡(luò)的資源分配。
NAT案例在實際應(yīng)中較為常見,某教學(xué)機房全部PC都是運行Client Hyper-V的Windows 10,而每臺PC都可以被網(wǎng)絡(luò)系統(tǒng)識別為虛擬機。具體而言,在機房實訓(xùn)室內(nèi)需要教授Windows服務(wù)器云存儲技術(shù),此時教師需要為每個學(xué)員提供一組機器,包括域控制器、文件服務(wù)器、SQL Server實例等。此時,教師并不需要為每臺主機生成惟一的域,當然此時每臺機器都有自己惟一的LAN地址。為此,教師可以選中一組機器加以配置,將它們復(fù)制到每部主機后將其導(dǎo)入到Hyper-V中。此時的網(wǎng)絡(luò)環(huán)境便可由支持NAT功能的虛擬交換機提供,這就意味著虛擬機可以連接到LAN,并且可以通過主機的LAN IP地址互聯(lián)?,F(xiàn)在就來介紹具體實現(xiàn)方式。
在Windows 10或WS2016 Hyper-V機器上,可以通過三行PowerShell命令執(zhí)行NAT虛擬交換機。首先需要生成一個內(nèi)部虛擬交換機,該交換機并不連接主機物理網(wǎng)卡,此時主機操作系統(tǒng)具有一個連接虛擬交換機的虛擬網(wǎng)卡。也就是說,內(nèi)部交換機所連的虛擬機可以和主機交談,但它們并不能與主機所連網(wǎng)絡(luò)進行交流。生成內(nèi)部虛擬交換機的PowerShell命令行如下所示:
第二步,需要將主機管理系統(tǒng)中的虛擬網(wǎng)卡連接到內(nèi)部虛擬交換機,此時通過PowerShell命令為虛擬網(wǎng)卡分配IPv4地址,它也就是我們所要生成的NAT網(wǎng)絡(luò)的默認網(wǎng)關(guān),該PowerShell命令如下:
最后,需要對運行虛擬交換機的NAT網(wǎng)絡(luò)配置網(wǎng)絡(luò)地址,也就是調(diào)用虛擬交換機的虛擬機器所需的專用地址段,PowerShell命令如下:
此時,虛擬交換機上運行的任何虛擬機所采用的IPv4地址范圍應(yīng)當是192.168.0.0,這些機器需要通過操作系統(tǒng)內(nèi)的網(wǎng)卡和NAT由 LAN 進行路由。
需要指出的是,此時的虛擬交換機并不具有 DHCP(Dynamic Host Configuration Protocol,動態(tài)主機配置協(xié)議)功能,所以只能為機器分配靜態(tài)IP地址。當然,我們也可以為其分配DHCP服務(wù)器。
為了讓NAT虛擬交換機上的虛擬機享有運行在LAN上的DHCP服務(wù),管理員需要為每個客戶系統(tǒng)手工分配IPv4 地址,這樣做較為費事,此時可以考慮為虛擬交換機上的虛擬機分配一臺或更多DHCP服務(wù)器。但要注意不要讓DHCP服務(wù)器連接外部虛擬交換機。WS2016中提供的PowerShell命令可以進行IP地址分配,具體操作如下:
1.登錄虛擬機(比如名為My-VM1),命令為:
2.提取所要配置的適配器的名稱,命令為:
3.設(shè)置IP地址、子網(wǎng)掩碼以及默認網(wǎng)關(guān),命令如下所示:
4.設(shè)置DNS(域名服務(wù)器),命令如下: