Ubuntu 24 Server静态IP配置指南:Netplan网络配置详解

本文最后更新于 1 分钟前,文中所描述的信息可能已发生改变。

在Ubuntu 24 Server版本中,网络配置采用Netplan作为默认的网络管理工具。本文将详细介绍如何在Ubuntu 24 Server中配置静态IP地址和网关,帮助你快速完成服务器的网络初始化设置。

一、Netplan简介

Netplan是Ubuntu从17.10版本开始引入的网络配置工具,使用YAML格式的配置文件来定义网络设置。它支持两种后端渲染器:

  • NetworkManager:通常用于桌面版
  • systemd-networkd:通常用于服务器版

Ubuntu Server默认使用systemd-networkd作为后端。

二、查看当前网络配置

查看网卡名称

首先,我们需要确定网卡的名称:

bash
# 查看所有网络接口
ip link show

# 或者使用
ip a

常见的网卡命名格式:

  • eth0:传统命名
  • ens33ens160:VMware虚拟机
  • enp0s3:VirtualBox虚拟机
  • eno1enp2s0:物理服务器

查看现有Netplan配置

bash
# 查看配置文件目录
ls /etc/netplan/

# 查看现有配置
cat /etc/netplan/*.yaml

三、配置静态IP地址

备份原有配置

在修改配置之前,建议先备份原有配置文件:

bash
sudo cp /etc/netplan/00-installer-config.yaml /etc/netplan/00-installer-config.yaml.bak

编辑Netplan配置文件

使用编辑器打开配置文件:

bash
sudo nano /etc/netplan/00-installer-config.yaml

注意:配置文件名可能因安装方式不同而有所变化,常见的还有50-cloud-init.yaml等。

配置示例

将配置文件修改为以下内容(根据实际网卡名称修改ens33):

yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      addresses:
        - 10.72.152.100/24
      routes:
        - to: default
          via: 10.72.152.1
      nameservers:
        addresses:
          - 223.5.5.5
          - 114.114.114.114

配置参数说明

参数说明
versionNetplan配置版本,固定为2
renderer后端渲染器,服务器使用networkd
ethernets以太网配置段
ens33网卡名称,根据实际情况修改
addressesIP地址和子网掩码(CIDR格式)
routes路由配置,to: default表示默认路由
via网关地址
nameserversDNS服务器地址

常用子网掩码对照

CIDR子网掩码可用主机数
/24255.255.255.0254
/25255.255.255.128126
/26255.255.255.19262
/27255.255.255.22430
/28255.255.255.24014

四、应用配置

检查配置语法

在应用配置之前,先检查YAML语法是否正确:

bash
sudo netplan generate

如果没有任何输出,表示配置语法正确。

测试配置

使用try命令可以安全地测试配置,如果配置有问题会自动回滚:

bash
sudo netplan try

系统会提示你在120秒内按Enter确认,如果网络中断,配置会自动恢复。

正式应用配置

确认配置无误后,正式应用:

bash
sudo netplan apply

五、验证配置

查看IP地址

bash
ip addr show ens33

预期输出:

2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet 10.72.152.100/24 brd 10.72.152.255 scope global ens33
       valid_lft forever preferred_lft forever

查看路由表

bash
ip route show

预期输出:

default via 10.72.152.1 dev ens33 proto static
10.72.152.0/24 dev ens33 proto kernel scope link src 10.72.152.100

测试网络连通性

bash
# 测试网关连通性
ping -c 4 10.72.152.1

# 测试外网连通性
ping -c 4 223.5.5.5

# 测试DNS解析
ping -c 4 www.baidu.com

六、多网卡配置示例

如果服务器有多个网卡,可以这样配置:

yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      addresses:
        - 10.72.152.100/24
      routes:
        - to: default
          via: 10.72.152.1
      nameservers:
        addresses:
          - 223.5.5.5
    ens34:
      addresses:
        - 192.168.1.100/24
      # 内网网卡不设置默认网关

七、DHCP配置(可选)

如果需要使用DHCP自动获取IP,配置如下:

yaml
network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: true

八、常见问题排查

配置未生效

bash
# 重启网络服务
sudo systemctl restart systemd-networkd

# 或者重启服务器
sudo reboot

YAML语法错误

YAML文件对缩进非常敏感,常见错误:

  • 使用Tab而不是空格缩进
  • 缩进不一致
  • 冒号后缺少空格

可以使用在线YAML验证工具检查语法。

网卡名称不正确

确保配置文件中的网卡名称与ip link show显示的一致。

DNS解析失败

检查/etc/resolv.conf是否正确生成:

bash
cat /etc/resolv.conf

如果DNS配置不正确,可以手动添加:

bash
sudo nano /etc/systemd/resolved.conf

添加:

[Resolve]
DNS=223.5.5.5 114.114.114.114

然后重启resolved服务:

bash
sudo systemctl restart systemd-resolved

九、使用传统方式配置(可选)

如果你更习惯使用传统的/etc/network/interfaces方式,可以安装ifupdown:

bash
sudo apt install ifupdown

但不建议这样做,因为Netplan是Ubuntu推荐的网络配置方式。

总结

本文详细介绍了在Ubuntu 24 Server中使用Netplan配置静态IP地址和网关的方法。关键步骤包括:

  1. 确定网卡名称
  2. 备份原有配置
  3. 编辑Netplan YAML配置文件
  4. 使用netplan try测试配置
  5. 使用netplan apply应用配置
  6. 验证网络连通性

Netplan的YAML配置方式虽然需要一定的学习成本,但配置结构清晰,易于管理和版本控制。掌握Netplan的使用,对于管理Ubuntu服务器的网络配置非常重要。

Arthas工具使用详解:Java诊断利器实战指南
H3C IE4320-28S 工业交换机服务器接入网络配置手册