桥接网卡无法获取IP的本质是物理连通但系统未完成DHCP协商,需逐层排查:先确认网卡状态为UP(ip link show),再检查是否分配IP(ip addr show),未获取则手动dhclient -v触发;接着验证默认网关(ip route)和DNS,最后排除网络服务冲突与配置混用。

桥接网卡无法获取 IP,本质是“物理连通但系统没拿到地址”,问题通常出在虚拟机配置、系统网络服务或 DHCP 协商环节。排查要从底层链路开始,一层层往上验证。
确认桥接网卡已启用且状态为 UP
先看网卡是否被识别并激活:
- 运行 ip link show ens33(把 ens33 换成你实际的网卡名,如 ens160、eth0)
- 若输出中显示 state DOWN,说明网卡未启用,执行:
sudo ip link set ens33 up - 若根本看不到该网卡,检查 VMware/VirtualBox 设置:确保“网络适配器”已启用,且“桥接模式”下选中了主机正在使用的物理网卡(比如 WiFi 或以太网)
检查是否成功获取到 IP 地址
网卡 UP 后,再看有没有分配 IP:
- 运行 ip addr show ens33
- 若有 inet 192.168.x.x/24 类似行,说明已有 IP;若只有 link/ether 行而无 inet,则 DHCP 未成功
- 手动触发一次 DHCP 请求:
sudo dhclient -v ens33(加 -v 可看到详细过程,比如是否收到 DHCPOFFER) - 如果提示 dhclient is already running,先杀掉旧进程:
sudo pkill dhclient && sudo dhclient -v ens33
验证 DHCP 是否可达、网关是否写入路由表
即使拿到 IP,没有默认网关也无法访问外网:
- 查看当前路由:ip route,确认是否有类似 default via 192.168.1.1 dev ens33 的条目
- 若缺失,默认网关一般和主机网关一致(在 Windows 主机上用 ipconfig 查“默认网关”)
- 临时添加:sudo ip route add default via 192.168.1.1 dev ens33
- 测试连通性:ping -c3 192.168.1.1(能通说明链路和网关没问题)
检查 DNS 和配置冲突问题
IP 和网关都正常但打不开网页,很可能是 DNS 或配置管理冲突:
- 测试基础连通:ping -c3 8.8.8.8(通但 nslookup 失败 → DNS 问题)
- 临时指定 DNS:echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
- 检查是否多个网络服务共存:systemctl status NetworkManager 和 systemctl status networking,避免 ifupdown 与 NetworkManager 冲突(Ubuntu 20.04+ 默认只用 NM,不建议同时启 network 服务)
- 配置文件优先级注意:Netplan(Ubuntu)、ifcfg-*(CentOS/Rocky)、interfaces(Debian 旧版)不能混用,只保留一种生效配置


















