Ubuntu 网络配置演进:从 20.04 到 24.04 的静态 IP 设置指南

如果你是一位 Ubuntu 用户或系统管理员,可能会发现不同版本的 Ubuntu 在配置网络静态 IP 的方式上有所不同。特别是从早期的版本升级到最新的 Ubuntu 24 LTS (Noble Numbat) 后,这种变化更加明显。

演进概览:一图看懂配置方式变化

从 Ubuntu 17.10 开始,Netplan 就逐渐取代了传统的 /etc/network/interfaces 文件方式,成为默认的网络配置工具。

flowchart TD A[Ubuntu 网络配置方式演进] --> B["Ubuntu 20.04 LTS
过渡与并存期"] A --> C["Ubuntu 22.04 LTS
Netplan 稳定期"] A --> D["Ubuntu 24.04 LTS
Netplan 强化与云集成期"] B --> B1["主要使用 Netplan
(默认渲染器 networkd 或 NetworkManager)"] B --> B2["备用:ifupdown
(/etc/network/interfaces)"] C --> C1["全面普及 Netplan
成为绝对标准"] C --> C2["淘汰 ifupdown
默认未安装"] D --> D1["继续强化 Netplan
为云优化"] D --> D2["NetworkManager
作为默认渲染器更常见"] D --> D3["彻底告别 ifupdown"] B2 -.->|逐渐废弃| C2 C2 -.->|彻底淘汰| D3

Ubuntu 20.04 & 22.04:Netplan 的引入与确立

配置方式

这两版本标志着 Netplan 的过渡和确立期,配置方式非常相似。

  1. 配置文件位置 :Netplan 配置文件位于 /etc/netplan/ 目录下,通常命名为:

    • 01-netcfg.yaml
    • 00-installer-config.yaml (Ubuntu Server 安装程序生成)
    • 01-network-manager-all.yaml (Ubuntu Desktop 安装程序生成)
  2. 修改步骤

    bash 复制代码
    # 使用 sudo 权限编辑配置文件
    sudo nano /etc/netplan/00-installer-config.yaml
    # 或
    sudo nano /etc/netplan/01-network-manager-all.yaml
  3. 配置示例

    yaml 复制代码
    network:
      version: 2
      renderer: networkd  # Server 版常用。Desktop 版常用 NetworkManager
      ethernets:
        ens33:            # 网卡名称,请使用 `ip a` 命令查看实际名称
          dhcp4: no       # 禁用 IPv4 DHCP
          dhcp6: no       # 禁用 IPv6 DHCP
          addresses: [192.168.1.100/24]     # 静态 IP 地址和子网掩码
          routes:
            - to: default
              via: 192.168.1.1              # 默认网关
          nameservers:
            addresses: [8.8.8.8, 1.1.1.1]   # DNS 服务器

    渲染器 (Renderer) 说明

    • networkd:通常用于服务器版,由 systemd-networkd 管理网络
    • NetworkManager:通常用于桌面版,提供图形界面支持
  4. 应用配置

    bash 复制代码
    # 测试并应用配置(有确认等待)
    sudo netplan try
    # 或直接应用配置
    sudo netplan apply

版本间差异

  • Ubuntu 20.04 :处于过渡期,可能还保留了 ifupdown 包,两种方式并存
  • Ubuntu 22.04 :Netplan 已成为绝对标准,ifupdown 默认未安装

Ubuntu 24.04 LTS:Netplan 的强化与云集成

24.04 版本继续使用 Netplan 作为核心配置工具,但有一些重要变化和优化。

核心变化

  1. 彻底告别 ifupdown :传统配置方式所需的 ifupdown默认不再安装,Netplan 成为唯一推荐的配置方式

  2. 强化的云集成 :更深入地集成了 cloud-init,特别是在云镜像和服务器安装中:

    • 初始网络配置可能由 cloud-init 生成
    • 修改由 cloud-init 管理的配置时,可能需要调整 /etc/cloud/cloud.cfg.d/ 下的设置
    • 避免配置被覆盖,可能需要禁用 cloud-init 对网络的管理
  3. 桌面版优化:默认使用 NetworkManager 作为渲染器,图形界面操作更加成熟稳定

配置方法

桌面用户(推荐使用 GUI)

  1. 打开"设置" → "网络"
  2. 点击齿轮图标进入有线连接设置
  3. 在"IPv4"或"IPv6"选项卡中,将方法改为"手动"
  4. 填写地址、网关、DNS等信息
  5. 应用更改

注意 :图形界面实际上是在后台修改 /etc/netplan/ 下的配置文件

服务器用户(直接编辑配置文件)

bash 复制代码
sudo nano /etc/netplan/00-installer-config.yaml

配置内容与之前版本相同,应用配置仍使用:

bash 复制代码
sudo netplan apply

版本对比总结

特性 Ubuntu 20.04 Ubuntu 22.04 Ubuntu 24.04 说明
配置工具 Netplan (主流) Netplan (标准) Netplan (唯一标准) 20.04 是过渡期
传统方式 ifupdown (可能已安装) ifupdown (默认未安装) ifupdown (默认未安装) 24.04 彻底告别旧方式
配置文件 /etc/netplan/*.yaml /etc/netplan/*.yaml /etc/netplan/*.yaml 核心方式不变
应用命令 netplan apply netplan apply netplan apply 核心方式不变
渲染器 networkdNetworkManager networkdNetworkManager networkdNetworkManager 取决于安装类型
云集成 更强 24.04 需注意 cloud-init 的影响
桌面版推荐 Netplan 文件或 GUI Netplan 文件或 GUI GUI (设置应用) 24.04 图形界面更成熟

实践建议

  1. 桌面用户 :优先使用图形界面(Settings → Network)修改 IP 地址,简单且不易出错
  2. 服务器用户 :继续编辑 /etc/netplan/ 下的 YAML 文件,然后运行 sudo netplan apply
  3. 云服务器用户 :在 24.04 上特别注意 cloud-init 的配置,避免修改被覆盖
  4. 通用提示
    • 使用 ip anmcli device 命令确认正确的网络接口名称
    • 修改前备份原始配置文件:sudo cp /etc/netplan/config.yaml /etc/netplan/config.yaml.bak
    • 使用 sudo netplan try 在应用前验证配置语法,防止配置错误导致网络断开
相关推荐
一张假钞4 小时前
Ubuntu SSH 免密码登陆
linux·ubuntu·ssh
Wang's Blog5 小时前
Linux小课堂: 文件操作警惕高危删除命令与深入文件链接机制
linux·运维·服务器
QX_hao5 小时前
【Go】--map和struct数据类型
开发语言·后端·golang
MC丶科6 小时前
【SpringBoot 快速上手实战系列】5 分钟用 Spring Boot 搭建一个用户管理系统(含前后端分离)!新手也能一次跑通!
java·vue.js·spring boot·后端
G探险者6 小时前
为何一个系统上线要经过N轮测试?带你看懂企业级发布体系
后端
水月wwww6 小时前
操作系统——进程管理
linux·操作系统·vim·进程·进程调度
我科绝伦(Huanhuan Zhou)7 小时前
分享一个可以一键制作在线yum源的脚本
linux·运维
Paper_Love8 小时前
Linux-查看硬件接口软件占用
linux·运维·服务器
wydaicls8 小时前
Linux 系统下 ZONE 区域的划分
linux·运维·服务器