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,无需重复配置。
相关推荐
QT 小鲜肉2 小时前
【Linux命令大全】001.文件管理之split命令(实操篇)
linux·运维·服务器·网络·笔记
musk12122 小时前
在 Win11 PowerShell 中通过 SSH 密钥实现无密码访问 Linux 服务器,公钥使用 方法2 手动复制
linux·ssh·win11
松涛和鸣2 小时前
42、SQLite3 :字典入库与数据查询
linux·前端·网络·数据库·udp·sqlite
QT 小鲜肉2 小时前
【Linux命令大全】001.文件管理之rcp命令(实操篇)
linux·服务器·网络·chrome·笔记
Tipriest_2 小时前
Linux 下开发 C/C++ 程序为什么头文件引用路径这么多和复杂
linux·c语言·c++
oMcLin2 小时前
Linux 容器技术实战:从 Docker 到 Podman 的无 root 权限部署
linux·docker·podman
Tipriest_2 小时前
ubuntu快速查看一个apt包的描述信息和依赖等
linux·运维·ubuntu·apt
AI云原生2 小时前
如何解决 pip install 代理报错 SOCKS5 握手失败 ReadTimeoutError 问题
网络·爬虫·python·网络协议·tcp/ip·scikit-learn·pip
时空无限4 小时前
EFK 中使用 ruby 和 javascript 脚本去掉日志中颜色字符详解
linux·javascript·elk·ruby