标题:VirtualBox 安装 CentOS7 后无法获取 IP 的排查与修复
问题现象
在 VirtualBox 中全新安装 CentOS-7-x86_64-Minimal-2009.iso(或任何 7.x 版本)后,执行 ip addr 只能看到本地回环地址 127.0.0.1,网卡 enp0s3 没有分配到 IPv4 地址,导致宿主机无法通过 SSH(Xshell、MobaXterm 等)连接。

根因分析
CentOS 7 默认安装后,第一块网卡(enp0s3)的配置文件 /etc/sysconfig/network-scripts/ifcfg-enp0s3 中:
ONBOOT=no
该参数表示开机不自启该网卡,VirtualBox 的 NAT/桥接网络自然拿不到 IP。
解决步骤(一次性修复)
进入系统
如果还没装完,可在安装界面按Ctrl+Alt+F2切到 TTY;已装完直接登录。编辑网卡配置
sudo vi /etc/sysconfig/network-scripts/ifcfg-enp0s3找到
ONBOOT=no,改为ONBOOT=yes保存退出(
:wq)。

同时,在设置->网络里面修改配置

重启网络服务
CentOS 7 使用 systemd 管理网络:sudo systemctl restart network若提示找不到
network.service,可改用 NetworkManager:sudo systemctl restart NetworkManager验证结果
ip addr show enp0s3已能看到类似
10.0.2.15/24的地址,宿主机即可通过ssh root@10.0.2.15连接。
一劳永逸:安装时自动启用网卡
在 Anaconda 安装界面,进入 网络与主机名 → 选中 enp0s3 → 打开右上角开关 → 完成。这样生成的配置文件默认就是 ONBOOT=yes,省去事后手动修改。
排坑补充
VirtualBox 网络模式
- NAT:适合需要宿主机访问外网,但外网不访问虚拟机。
- 桥接:虚拟机直接拿到局域网 IP,方便局域网其他机器访问。
两种模式均需ONBOOT=yes才能生效。
DHCP 失败
如果ONBOOT=yes仍无 IP,确认 VirtualBox 的“网络 → 高级 → 控制芯片”选择 Intel PRO/1000 MT Desktop (82540EM),并勾选 电缆已连接。再执行:sudo dhclient enp0s3最小化镜像缺命令
最小化 ISO 没有ifconfig,用ip addr或nmcli device status查看即可。
小结
一句话:CentOS 7 安装后先改 ONBOOT=yes 再 systemctl restart network,90 % 的无 IP 问题都能解决。