Ubuntu 24 飞牛虚拟机 ens2 网卡自动获取 IP(DHCP)配置文档

Ubuntu 24 飞牛虚拟机 例如:ens2 网卡自动获取IP(DHCP)配置文档

一、配置说明

适配场景:飞牛虚拟机 Ubuntu 24 系统,例如:网卡实际名称为 ens2(飞牛平台显示 eno1-ovs,例如:MAC地址 00:2f:34:aa:p4:d6),桥接模式下实现开机自动获取IP/网关/DNS。

二、操作步骤(完整可复制)

1. 编辑 Netplan 网络配置文件

bash 复制代码
sudo nano /etc/netplan/01-netcfg.yaml

2. 写入以下配置内容(严格遵守YAML缩进,用空格而非Tab)

yaml 复制代码
network:
  ethernets:
    ens2:  # 系统实际网卡名(核心,不可修改)
      dhcp4: true  # 开启IPv4自动获取(DHCP)
      dhcp6: false  # 关闭IPv6(按需可改为true)
      optional: true  # 避免开机等待网络连接
  version: 2  # Netplan配置版本,固定值
  renderer: networkd  # 指定网络管理工具(服务器版默认)

3. 保存并退出编辑器

  • Ctrl + O → 按 Enter 确认保存 → 按 Ctrl + X 退出nano。

4. 修复配置文件权限(Netplan安全要求)

bash 复制代码
sudo chmod 600 /etc/netplan/01-netcfg.yaml  # 仅root可读写
sudo chown root:root /etc/netplan/01-netcfg.yaml  # 归属root用户组

5. 生成并应用配置(触发自动DHCP)

bash 复制代码
sudo netplan generate  # 生成配置(无报错则语法正确)
sudo netplan apply     # 应用配置(立即生效)
sudo systemctl restart systemd-networkd  # 重启网络服务确保生效

6. 验证配置结果

bash 复制代码
# 查看自动获取的IPv4地址(有inet开头即为成功)
echo "=== 自动获取的IP ==="
ip addr show ens2 | grep inet

# 查看自动获取的默认网关
echo "=== 自动获取的网关 ==="
ip route | grep default

# 测试网络连通性
echo "=== 联网测试 ==="
ping -c 2 8.8.8.8

三、关键验证标准

执行验证命令后,出现以下输出即为配置成功:

复制代码
=== 自动获取的IP ===
inet 192.168.x.xxx/24 scope global ens2  # 非127/169开头的IPv4地址
=== 自动获取的网关 ===
default via 192.168.x.1 dev ens2 proto dhcp  # 匹配物理机网关
=== 联网测试 ===
64 bytes from 8.8.8.8: icmp_seq=1 ttl=128 time=xx.ms  # 能ping通外网

四、常见问题排查

1. 报错:Permissions for /etc/netplan/01-netcfg.yaml are too open

原因:配置文件权限过高,执行以下命令修复:

bash 复制代码
sudo chmod 600 /etc/netplan/01-netcfg.yaml

2. 报错:Error in network definition: expected mapping

原因:YAML缩进错误/拼写错误,重新执行步骤2的配置内容(直接复制避免手动输入错误)。

3. 无IP但配置无报错

原因:飞牛虚拟机桥接模式未绑定物理机上网网卡,解决:

  • 登录飞牛虚拟机控制台 → 网络设置 → 桥接模式 → 绑定物理机的有线/无线网卡 → 重启虚拟机后重新执行 sudo netplan apply

五、注意事项

  1. 配置文件中 ens2 为系统实际网卡名,不可替换为飞牛显示的 eno1-ovs
  2. 桥接模式下,物理机所在网络需开启DHCP服务(家用路由器默认开启);
  3. 配置生效后,重启虚拟机仍会自动获取IP,无需重复配置。
相关推荐
csdn_aspnet4 小时前
TCP/IP协议栈深度解析:从基石到前沿
服务器·网络·tcp/ip
lcreek4 小时前
Linux信号机制详解:阻塞信号集与未决信号集
linux·操作系统·系统编程
shandianchengzi4 小时前
【记录】Tailscale|部署 Tailscale 到 linux 主机或 Docker 上
linux·运维·docker·tailscale
John Song5 小时前
Linux机器怎么查看进程内存占用情况
linux·运维·chrome
sichuanwuyi5 小时前
Wydevops工具的价值分析
linux·微服务·架构·kubernetes·jenkins
LaoZhangGong1235 小时前
学习TCP/IP的第3步:和SYN相关的数据包
stm32·单片机·网络协议·tcp/ip·以太网
持戒波罗蜜6 小时前
ubuntu20解决intel wifi 驱动问题
linux·驱动开发·嵌入式硬件·ubuntu
不做无法实现的梦~6 小时前
使用ros2来跑通mid360的驱动包
linux·嵌入式硬件·机器人·自动驾驶
点云SLAM6 小时前
C++内存泄漏检测之Windows 专用工具(CRT Debug、Dr.Memory)和Linux 专业工具(ASan 、heaptrack)
linux·c++·windows·asan·dr.memory·c++内存泄漏检测·c++内存管理
LuiChun6 小时前
Docker Compose 容器服务查询与文件查看操作指南(Windows Docker Desktop 版)【一】
linux·运维·windows·docker·容器