温馨提示×

centos虚拟机怎么连接外网

小樊
43
2026-10-20 08:05:32
栏目: 云计算

在 CentOS 虚拟机中连接外网,通常取决于虚拟机的网络模式和宿主机环境。下面按常见情况说明,你可以对照操作。


一、先确认虚拟机网络模式

在 VMware / VirtualBox 中,常见模式有:

  1. NAT(最常用,推荐)
    • 虚拟机通过宿主机上网
    • 一般无需额外配置
  2. 桥接(Bridged)
    • 虚拟机像一台真实机器接入局域网
    • 需要局域网有 DHCP 或手动配置 IP
  3. 仅主机(Host-only)
    • 默认不能上外网

✅ 如果只是想上外网,优先用 NAT


二、CentOS 7 / 8 / Stream 通用检查步骤

1. 查看网络接口

ip addr

或

ifconfig

一般看到:

  • ens33
  • eth0
  • enp0s3

2. 检查网络是否连通

ping 8.8.8.8
  • 能 ping 通 → 已连外网
  • 不通 → 继续排查

3. 使用 DHCP 自动获取 IP(NAT 模式)

dhclient

或

nmcli con up ens33

再试:

ping www.baidu.com

三、CentOS 7 网络配置(静态 / 动态)

方法一:修改网卡配置文件

vi /etc/sysconfig/network-scripts/ifcfg-ens33

NAT + DHCP 示例

BOOTPROTO=dhcp
ONBOOT=yes

静态 IP 示例(桥接常用)

BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8

保存后:

systemctl restart network

四、CentOS 8 / Stream(NetworkManager)

nmcli device status

自动获取 IP:

nmcli connection modify ens33 ipv4.method auto
nmcli connection up ens33

设置 DNS:

nmcli connection modify ens33 ipv4.dns "8.8.8.8"

五、常见问题排查

1. 能 ping IP 但不能 ping 域名

说明 DNS 有问题

vi /etc/resolv.conf

添加:

nameserver 8.8.8.8
nameserver 114.114.114.114

2. NAT 模式下仍无法上网

  • 宿主机是否能上网?
  • VMware / VirtualBox 的 NAT 服务是否开启
  • 防火墙是否拦截

查看防火墙:

systemctl status firewalld

临时关闭测试:

systemctl stop firewalld

3. 虚拟机时间不对导致 HTTPS 失败

ntpdate cn.pool.ntp.org

六、快速判断你现在的状态

你可以把下面命令的输出发给我,我可以帮你精确判断:

ip addr
cat /etc/sysconfig/network-scripts/ifcfg-ens33
ping 8.8.8.8

如果你是 VMware / VirtualBox + CentOS 几 + 什么网络模式,也可以直接告诉我。

0 踩