最近搭建基于virtualbox的Ubuntu20虚拟机,遇到了一些网络上的问题,由于本人尚未对网络相关的知识有所涉猎,经过一系列的百度,最终解决了Ubuntu20的静态ip设置,并且ping通了主机和虚拟机
静态ip的设置
此处主要是针对Ubuntu20系统,如果需要20之前的版本,度娘上一搜一大片,可自行查找尝试
此处需要注意基础问题:ip地址不能随心所欲的自定义,否则会导致连接不了网络,需要遵循以下规则
1、在主机上通过命令行 ipconfig 查看主机的网卡信息(我这里电脑接的是WiFi,读者情况自行甄别)
得到地址为 192.168.x.yyy,掩码255.255.255.0,网关192.168.x.1
2、那么,虚拟机自定义的网卡信息应与上面格式对应设置,例如
ip地址 | 掩码 | 网关 | |
主机 | 192.168.1.234 | 255.255.255.0 | 192.168.1.1 |
虚拟机 | 192.168.1.2xx | 255.255.255.0 | 192.168.1.1 |
对于Ubuntu20版本,个人总结主要有以下两种方法:
一、终端命令修改文件
右键打开终端,输入 sudo vi /etc/netplan/01-network-manager-all.yaml 然后输入用户密码进入文件
如果出现如下界面不用管它,直接 enter 键跳过
进入文件界面后,添加文件内容如下,设置好ip地址、子网掩码和网关,然后wq保存退出(如果不会使用 vi 编辑,可自行百度)
退出vi编辑器,回到终端后,通过 sudo netplan --debug apply 进行确认和应用,如果成功会返回以下结果
二、Ubuntu20设置
上述是以管理员身份进行内部设置,实际上Ubuntu20已经支持直接设置,打开网络设置,选择一个ip打开设置,如图圈出位置
将IPv4调整为手动,下面的地址信息按规则自行设置,DNS与网关相同,设置完成后右上角应用,然后重启网络即可
结果测试
针对上述的两种方法都可以设置静态ip地址,个人建议使用第二种,因为 vi 编辑器真的不太好用。。。
任意一种方法完成之后,就可以通过终端 ifconfig 进行验证
主宿机互ping
完成静态设置,接下来有可能会发现虚拟机以及连不上网了,甚至主机和虚拟机相互都不能ping通,于是有了接下来的操作
1、无论是VMware还是VirtualBox,打开他们的网络设置,将连接方式改为“桥接网卡”,VirtualBox还要将“高级”中的“混杂方式”设置为全部允许
注意,此处VirtualBox用户,对于网络设置中的“界面名称”选项,如果仍然连接失败,可自行选择其他选项尝试,本人也是也是由于未更改此项,导致后来一直ping不通
这样,虚拟机的部分就完成了
2、接下来,对于主机,应设置防火墙允许虚拟机进行信息传输
按照 Windows防火墙-高级设置-入站规则-文件和打印机共享(回执请求-ICMPv4-In)-启用,就可以正常进行ping了
接下来就可以主宿机互相ping啦,网络连接也可以正常使用了