在使用vm虚拟机安装ubuntu server 22.04的时候会遇到一些网络问题,例如虚拟机内的Ubuntu不能上网,ping www.baidu.com不通,主机使用远程工具不能建立远程连接,Ubuntu ping本地主机不通,本地主机ping虚拟机也不通的问题,经过一番折腾,找到了一个简单的方法,可以解决全部问题,以做记录。
一、测试环境:
1、VMware® Workstation 16 Pro 16.0.0
2、Ubuntu server 22.04
二、VM虚拟机设置
1、虚拟机网络适配器选择自定义,选择VMnet8(NAT模式),这里不做过分分析为什么选择NAT模式,为什么要使用自定义,网上有很多文章讲解虚拟机的网络设置的三种不同模式的区别,可以自行百度,这里只提供一种可行性方案。
2、通过点击虚拟机菜单栏“编辑”,点击“虚拟网络编辑器”,在弹出框中选择VMnet8,下面第三步中使用本地DHCP服务将IP分配给虚拟机,下面子网IP段就是即将分配给虚拟机Ubuntu的IP。如果之前在设置的时候弄乱了,可以点击左下角的还原默认设置,就会将网络设置还原。
注意:在NAT模式下,本地主机充当了一个路由器的角色。它既要跟上层的真实路由器通信,又要跟Ubuntu虚拟机通信。路由器的上层网段和下层网段是不允许相同的,我的本机IP是192.168.137.1,所以为了避免冲突,软件自己便分配了一个不常用的网段给下层的设备。
3、在本地主机的网络连接里面找到下图第一步中的VMware Network Adapter VMnet8,右键属性-共享,将下面的两个对钩都打上,在第三步中按照本地主机实际联网情况进行选择,我的本地主机是通过WiFi连接上层路由器的,所有选择了WLAN。
4、然后虚拟机中的Ubuntu就可以启动了。
二、Ubuntu设置
1、ubuntu启动后,查看ip地址:192.168.80.128,通过ping本地主机192.168.137.1可以ping通;本地主机ping 192.168.80.128也可以ping通,说明远程连接是可以建立的,通过XSHELL工具建立远程连接成功。
2、问题:Ubuntu不能连接互联网,ping www.baidu.com 后提示Temporary failure in name resolution 。
3、解决方法:定义域名解析服务器ip
sudo vi /etc/resolv.conf
在里面添加下面两行
nameserver 1.1.1.1
nameserver 8.8.8.8
4、操作完毕后,所有问题解决,Ubuntu可以连接互联网,ping www.baidu.com 也成功了。