在Hyper-V中启用NAT虚拟交换机

在Hyper-V中启用NAT虚拟交换机

前言

  • 环境:WindowsServer2016
  • 目标:采用NAT实现虚拟机DHCP

首先公司的服务器上运行的是Hyper-v,虚拟交换机刚开始只有一个:
这里写图片描述
以桥接模式直接桥接到物理网卡上,公司内部的IP地址管理是静态绑定的,因此桥接模式下是无法直接通过DHCP获取IP地址的。

Step1

首先安装一个Ubuntu-server16.04,由于无法获取到DHCP,所以在安装过程中没有初始化网卡,因此需要手动配置。
vim /etc/network/interfaces
添加

auto eth0
iface eth0 inet dhcp

这里写图片描述
然后启动网卡eth0:sudo ifconfig eth0 up
当然是不可能获取到ip地址的

Step2

网上有使用powershell下建立一个虚拟NAT交换机和虚拟NAT网络的教程:https://docs.microsoft.com/zh-cn/virtualization/hyper-v-on-windows/user-guide/setup-nat-network#create-a-nat-virtual-network
但是在我实际操作中,存在如下报错:
这里写图片描述
因此该方法放弃。

Step3

默认情况下,NAT网卡的地址时192.168.137.1,这就导致虚拟机获取到的IP地址也在这个网段内,由于我使用了公司的vpn,这会导致我本地开启虚拟机时ip冲突,因此需要更改NAT网卡的默认IP段:
参考https://support.microsoft.com/en-gb/help/230148/how-to-change-the-ip-range-for-the-internet-connection-sharing-dhcp-se
打开注册表:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters
编辑其中:
这里写图片描述
不过在测试中发现,一旦虚拟的NAT网卡建立之后,修改注册表并重新启动虚拟网卡也不会改变该网卡的网段,直接修改网卡IP地址会导致DHCP服务不可用。

Step4

参考http://blog.csdn.net/rrrfff/article/details/51168376
在虚拟交换机管理器中直接新建一个内部虚拟交换机:
这里写图片描述
其他一律默认。
就会在控制面板-网络适配器中发现一个新的hyperv网卡。查看IPv4设置,为自动获取
然后在网络适配器中设置原来的桥接网卡共享属性:
这里写图片描述
设置完成后,重启ubuntu-server就可以DHCP获取到IP地址了。

猜你喜欢

转载自blog.csdn.net/leehdsniper/article/details/78741934
今日推荐