遇到的坑和解决办法在文章末尾,包括不能上网和ssh命令访问不到虚拟机显示connection refused等
这几天弄虚拟机有许多问题出现,也解决了很多问题。话不多说,直接进入正题吧!
本文使用的是VisualBox 5.2.20版本,CentOS 7。
找不到NAT配置的同学可以进入VisualBox :偏好设置 ==> 网络 ==>点击右方添加按钮即可,添加之后基本什么都不用改
找不到配置Host-Only配置的同学可以进入VisualBox :管理 ==> 主机网络管理 ==> 点击左上角绿色按钮就能添加了,添加之后基本什么都不用改
1、打开VisualBox,依次点击偏好设置(英文应该是preferences) --> 网络(英文NetWork),可以看到如下画面,有一个NAT和一个Host-Only网络:
2、添加NAT网络,看看除了网络CIDR中的IP地址,别的选项是不是和我的一样,不是的话就按照我的来改
3、添加Host-Only网络,别的选项是不是和我的一样,不是的话就按照我的来改。IP可以不用改,DHCP的IP也是一样按你自己的来的。
1、软件内设置,VisualBox,点击红框里的设置。关于网卡的设置,IP可以不用改,其它和我一样就行。
NAT网卡
Host-Only网卡
2、接下来开启虚拟机并进入,记得要用root用户哦,这个时候你的虚拟机应该是不能上网的,本地主机也访问不到
虚拟机网络。使用ifconfig或者ip addr show都可以看到IP地址和网卡的Mac地址,记住红框中的内容,之后的步骤中会用到
3、修改配置文件,进入/etc/sysconfig/network-scripts目录,查看是否有ifcfg-enp0s3、ifcfg-enp0s8这两个文件,一般ifcfg-enp0s8是不存在的,直接用ifcfg-enp0s3做模板复制一个过去吧
记得前面要记住的东西了吗,现在派上用场了,一样要对应上!
ifcfg-enp0s3文件内容
ifcfg-enp0s8文件内容,记住UUID要和enp03的不一样,改最后一个字母吧
配置之后重启网络,输入命令
service network restart
ping百度试试,出现以下结果就是可以访问外网啦
ping www.baidu.com
PING www.a.shifen.com (112.80.248.75) 56(84) bytes of data.
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=1 ttl=63 time=102 ms
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=2 ttl=63 time=223 ms
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=3 ttl=63 time=40.1 ms
64 bytes from 112.80.248.75 (112.80.248.75): icmp_seq=4 ttl=63 time=60.0 ms
最后来说说遇到的坑和解决办法:
1、开始NAT模式配置之后,怎么样也ping不通百度。后来从DNS找原因发现不是,最后在配置文件找到原因,是因为enp0s3中的HWADDR没有配置,这个记得一定要配置!
2、ssh命令访问不到虚拟机显示connection refused,原以为是openssh服务没装,安装之后又用netstat查看22端口是不是打开了,之后又看防火墙配置,结果都不行!后来换了VisualBox版本5.1.30就好了,所以一直推荐5.1.30版本的VisualBox!
3、如果出现连不上外网的时候,试试service network restart,应该就能上网了(2018.11.05更新,这是因为VisualBox中网络启动没勾选,勾上就行了)