使用路由和远程访问服务为Hyper-V中虚拟机实现NAT上网

众所周知,在微软的Hyper-V环境中的网络环境中没有VMware Workstation中的NAT功能,所以Hyper-V环境中虚拟机上网一般情况下需要通过设置为外部网络方可访问网络,当然也可设置为内部网络(前提需要共享我们现有的Internet链接),因个人正好构建实验环境,所以有此一文章。

首先介绍一下Hyper-V中的虚拟网络中的几个名词:

“外部”虚拟网络,是Hyper-V通过将“Microsoft虚拟交换机协议”绑定在主机网卡上实现的。如果虚拟机选择“外部”虚拟网络,则虚拟机“相当”于网络中的一台计算机,是可以与物理网络中的其他计算机、主机互相访问。

“内部”虚拟网络,只允许虚拟机与主机互相访问,不能访问外部(物理网络上的计算机或外部网络,例如Internet),外部也不能访问“内部”的虚拟机。

“专用”虚拟网络,只允许虚拟机之间互相访问,与物理主机也不能互相访问。

在同一个物理主机中,“内部”、“外部”、“专用”虚拟网络,相当于物理网络中的不同的“交换机”,它们之间没有网络关系。当然在同一个物理主机中,也可以有多个“内部”、“外部”、“专用”虚拟网络,即使都是“内部”或“专用”虚拟网卡,不同的“内部”虚拟网络之间的虚拟机,也是不能互相访问。除非物理主机启用“路由和远程访问”服务中的“路由器”功能,为这两个网段提供访问服务。

下面通过具体操作来实现使用路由和远程访问服务为Hyper-V中虚拟机实现NAT上网:

1. 安装虚拟网卡,主要是通过设备管理器来添加一个Microsoft的网络适配器也就是Microsoft KM-TEST 环回适配器(因版本不一样也可显示为:Microsoft Loopback Adapter),具体安装过程略过,安装成功如下图所示:

V7VNFf

2.在Hyper-V中的虚拟交换机管理器中创建一个外部网络并选择我们上面安装的Microsoft KM-TEST 环回适配器,并预先对Microsoft KM-TEST 环回适配器做些设置,取消Microsoft KM-TEST 环回适配器中除Internet 协议版本 4(TCP/IP)外所有选项。我们还需要对创建成为Hyper-V 虚拟以太网适配器的网卡赋予一个IP地址和子网掩码,具体过程略过,完成以后如下图所示:

3EZ77r   qYJZV3

IfUZvu3.安装路由和远程访问服务, 需要注意的是在Server 2008中路由和远程访问服务位于角色网络策略和服务服务下面,而在Server 2012中则位于角色远程访问下面.主要是通过路由和远程访问服务中启用网络地址转换(NAT)服务,按照向导一步步操作即可,具体过程略过,完成以后如下图所示:

bInMV3

接下来安装需要是否启用DHCP功能,具体在IPv4下的NAT右键属性中的地址分配,如图所示:

Zrm6Fr 此处IP地址为上面的Hyper-V 虚拟以太网适配器网卡地址,可根据需要自行修改,接下到Hyper-V中的虚拟机中查看是否获得IP地址及能否上网:

yyY3me

至此我们看到Hyper-V的中虚拟机可以获取IP地址及上网, 其中在检查能否获取地址及上网之前,还需要确认你所在主机中的防火墙状态,如果关闭就没有问题,如果启用状态下,需要在我们现有的Internet链接的防火墙里面开放NAT服务器的DNS流量,DNS流量所使用的端口号为UDP53.