VirtualBox 中 centos7 下 ping 命令出现 Network is unreachable 问题的解决方法

 1.在VirtualBox中配置网络

1.vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

先让它动态分配一个ip地址

ONBOOT=yes

Esc+: wq 保存文件退出,退出不保存q!

2.service network restart

3.ip addr

网卡:enp0s3

Ip:192.168.0.103/24

网关:192.168.0.255

子网掩码:255.255.255.0

VirtualBox 中 centos7 下 ping 命令出现 Network is unreachable 问题的解决方法

4.再设置静态ip地址

BOOTPROTO=static

IPADDR=192.168.0.103

NETMASK=255.255.255.0

GATEWAY=192.168.0.255 (Linux下区分大小写)

VirtualBox 中 centos7 下 ping 命令出现 Network is unreachable 问题的解决方法

service network restart

ip addr

5.配置DNS

1.检查NetManager的状态:systemctl status NetworkManager.service

2.检查NetManager管理的网络接口:nmcli dev status

3.检查NetManager管理的网络连接:nmcli connection show

4.设置dns:nmcli con mod enp0s3 ipv4.dns "114.114.114.114 8.8.8.8"   

VirtualBox 中 centos7 下 ping 命令出现 Network is unreachable 问题的解决方法    VirtualBox 中 centos7 下 ping 命令出现 Network is unreachable 问题的解决方法

在这块小编遇到使用Centos7时,突然遇到使用systemctl status network.service发现网络无法正常重启的问题;

解决:1.停止NetworkManager.service

停止网络管理服务:

systemctl stop NetworkManager.service

systemctl disable NetworkManager.service

网卡重启

systemctl restart network

5.让dns配置生效:nmcli con up enp0s3

配置成功后,先ping一下:192.168.0.103,ping通后,查看自己宿主机上的ip;

通过cmd ,ipconfig,查看到ip地址:ping 192.168.0.102

ping通ok。

VirtualBox 中 centos7 下 ping 命令出现 Network is unreachable 问题的解决方法

问题:在这个配置中,小编第一次由于粗心把ip地址写错了,无法进行ping通。

  1. 检查ifcfg-enp0s3,没问题后ping自己ping通。
  2. Ping宿主机有问题,查看防火墙是否开启,若开启关闭防火墙。再此进行ping,ping通宿主机。

6.VirtualBox桥接模式下虚拟机联网

 

      VirtualBox 中 centos7 下 ping 命令出现 Network is unreachable 问题的解决方法

7.查看 centos7 网络设置,使用 nmcli 命令,查看当前虚拟机的所有网络基本信息:

nmcli connection show

 VirtualBox 中 centos7 下 ping 命令出现 Network is unreachable 问题的解决方法

参数名称 说明
NAME 连网代号,通常与 DEVICE 一样
UUID 识别码
TYPE 网卡的类型;802-3-ethernet 就是以太网
DEVICE 网卡名称

小编连接的是无线网络,所以虚拟机也跟着有了无线和有线的以太网。继续使用 nmcli 命令,看看 enp0s3 的有线网络配置:

nmcli connection show enp0s3

这里的 enp0s3 是 centos7 自动生成的带随机数的网卡名称,每台机都不一样。

 VirtualBox 中 centos7 下 ping 命令出现 Network is unreachable 问题的解决方法

可以看到这里网关配置有问题。

8.解决问题:

  1. 设置 centos7 虚拟机的网络获取方式为自动获取 IP;
  1. nmcli connection modify enp0s3 \
  2. connection.autoconnect yes \
  3. ipv4.method auto

上面的命令只是修改了设定档,还要使用 nmcli 的 up 参数让它实际生效:

  1. nmcli connection up enp0s3

VirtualBox 中 centos7 下 ping 命令出现 Network is unreachable 问题的解决方法 

注意:我们ping www.baidu.com,这个时候看到的是ping :www.baidu.com:Name or service not known;并没有ping通,自己查看发现是在network-scripts文件下ping www.baidu.com

进入到localhost下ping www.baidu.com ping通外网。

VirtualBox 中 centos7 下 ping 命令出现 Network is unreachable 问题的解决方法

VirtualBox 中 centos7 下 ping 命令出现 Network is unreachable 问题的解决方法

ping 通外网了,ok!