虚拟机中的centOS如何联网

[复制链接]
发表于 2026-10-4 17:26:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×

虚拟机里的 CentOS 连不上网,八成不是敲错命令,而是没弄清楚三种网络连接模式各自能做什么。这篇先讲清桥接、NAT、仅主机(Host-only)的区别,再给两套永久生效的配置方法:红帽系特有的 setup 交互式工具,和直接改配置文件 / nmcli 的方式。

一、先分清三种模式

  • 桥接(Bridged):用的是物理机的真实网卡,虚拟机会从局域网里拿一个真实 IP,能和局域网内其他机器互相通信,也能上互联网。代价是会占用一个真实地址,公司网络里可能被 DHCP 配额限制;
  • NAT:走 VMware 的 VMnet8 虚拟网卡,虚拟机只能和当前这台物理机通信,但能访问互联网。最省心,也最常用;
  • 仅主机(Host-only):走 VMnet1 虚拟网卡,只能和物理机通信,不能访问互联网。适合做隔离的测试环境。

先想清楚你要的是「局域网可达」还是「能上网」,模式选错,后面命令敲得再对也没用。

二、临时配置(重启即失效)

临时方案适合快速验证网络通不通:ip addr 查物理机对应的网卡信息,拿到 IP、网关、DNS 后,在 Linux 里配一份同网段的静态 IP,再到物理机上 ping 虚拟机的 IP,通了就说明网段与模式没问题。这种配置只写到运行时的网络脚本里,系统重启后就失效,只拿来试水可以,别当最终方案。

三、永久配置之一:setup 交互式工具

setup 是红帽系列独有的文本配置工具,别的发行版不一定有。依次操作:

  1. 命令行敲 setup 回车;
  2. 选「网络配置」回车;
  3. 选「设备配置」回车;
  4. 选对应的网卡(如 eth0 / ens33)回车;
  5. 把「使用 DHCP」关掉;
  6. 填上 IP、子网掩码、默认网关;
  7. 保存后手动启动网卡:ifconfig eth0 up 或 nmcli connection up ens33;
  8. 重启网络服务:systemctl restart network;
  9. 验证:ping 网关IP、ping 8.8.8.8、ping www.baidu.com 三层递进。

三层都能通才算彻底配好:第一层说明本机网卡栈正常,第二层说明网关可达,第三层说明 DNS 和出口都 OK。

四、永久配置之二:改配置文件

直接编辑网卡配置(CentOS 7 一般在 /etc/sysconfig/network-scripts/ifcfg-ens33),把 ONBOOT=yes、BOOTPROTO=static 设好,再补 IPADDR、NETMASK、GATEWAY、DNS1,保存 systemctl restart network 生效。

DNS 有两种写法:

1. 命令行配置(nmcli)

nmcli connection modify ens33 ipv4.dns 114.114.114.114 8.8.8.8   # 多个 DNS 用空格隔开
nmcli connection up ens33

2. 改配置文件

vim /etc/resolv.conf
nameserver 114.114.114.114
nameserver 8.8.8.8

注意 /etc/resolv.conf 在启用了 NetworkManager 的系统上可能被自动覆盖,写进网卡配置文件的 DNS1 才是持久的做法。

五、最常见的三个坑

  • NAT 模式下主机 ping 不通虚拟机:多半是虚拟网络编辑器里 VMnet8 的子网和虚拟机 IP 不同段,或者主机上的 VMware Network Adapter VMnet8 被禁用了,禁用再启用一次通常就好;
  • 桥接模式拿不到 IP:物理机所在网络可能禁了桥接设备(不少公司交换机这么做),换成 NAT 立刻就好;
  • 能 ping 网关但上不了网:检查 DNS,也检查虚拟机的网关地址是不是填成了虚拟机自己的 IP,而不是 VMnet8 的 NAT 网关。

qidao123.com企服评测-应用市场 编辑提示

回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表