1. 前置步骤
步骤一,首先新建一个虚拟网络交换机,我这里名称为vEthernet (hyper-v-ubuntu),选【内部网络】
步骤二, 在网络设置中,找到可以上网的网卡,这里我用的是无线网卡WLAN,设置共享连接为vEthernet (hyper-v-ubuntu):
步骤三:此时查看vEthernet (hyper-v-ubuntu)网卡的ip地址,发现自动设置为了192.168.137.1
此时前置步骤完成,下面就是配置虚拟机的ip地址了,有两种方法,一种是DHCP,此时虚拟机IP地址会动态改变,另一种是静态IP。
2. hyper-v 上外网 - DHCP
进入虚拟机,执行如下指令:
bash
sudo vi /etc/netplan/00-installer-config.yaml
修改文件内容如下:
bash
network:
ethernets:
eth0:
dhcp4: true
routes:
- to: default
via: 192.168.137.1
nameservers:
addresses: [8.8.8.8]
optional: true
version: 2
- 网卡名称
eth0
可以通过ip address
查看 - 一定要注意其中的空格!
- 注意这里的默认网关,地址设置为了上面windows网卡vEthernet (hyper-v-ubuntu)的IP地址了(关键!)
- DNS服务通过nameservers设置。
- 一定要添加
optional: true
选项,否则可能会开机卡一段时间网络连接。
配置完成后,执行如下指令:
bash
sudo netplan apply
现在可以ping www.baidu.com 试试了:
3. hyper-v 上外网 - 静态IP
配置了DHCP,我们会发现过一段时间重启虚拟机,IP地址就变了,此时如果用mobaXtem工具,需要重新配置IP地址,非常繁琐。此时配置为静态IP就解决了这个问题。
IP地址配置如下:
bash
network:
ethernets:
eth0:
dhcp4: no
addresses: [192.168.137.88/24]
routes:
- to: default
via: 192.168.137.1
nameservers:
addresses: [8.8.8.8]
optional: true
version: 2
这里的网关、optional等和上面的dhcp一样,千万注意,配错了就没法上网了!
4. hyper-v中忽然不能上网
有时候忽然不知道为何,hyper-v无法连接互联网了,此时只需要重新进行网络共享即可,注意如果不行,禁用掉网卡后重试。