it编程 > 游戏开发 > ar

Ubuntu 26.04配置静态IP地址的方法步骤

188人参与 • 2026-08-05 • ar

本教程将指导你将 ubuntu 26.04 服务器的网络从 dhcp(动态分配)切换为静态 ip 地址。配置静态 ip 可以确保服务器拥有固定地址,避免因 dhcp 租约过期或重启导致的 ip 变动,特别适合服务器、数据库、nas 等需要稳定网络标识的场景。

适用环境:ubuntu 26.04 lts (resolute raccoon) / 使用 netplan 网络管理工具
本例配置:ip 地址 192.168.6.102 / 子网掩码 255.255.255.0(/24)/ 网关 192.168.6.2 / dns 114.114.114.114, 8.8.8.8

一键配置脚本(整体执行)

如果你追求效率,可以直接以 root 权限执行以下脚本。它会自动检测网卡、备份配置、写入静态 ip 设置并应用。

#!/bin/bash
# =============================================
# ubuntu 26.04 静态 ip 一键配置脚本
# 功能:配置静态 ip 192.168.6.102/24,网关 192.168.6.2
# =============================================

set -e  # 遇到错误立即退出

echo "🚀 开始配置静态 ip 地址..."

# 1. 自动检测网卡名称
interface=$(ip route | grep default | awk '{print $5}' | head -1)

if [ -z "$interface" ]; then
    echo "❌ 错误:无法自动检测网卡名称,请手动指定"
    echo "  执行 ip a 查看网卡名称,然后修改脚本中的 interface 变量"
    exit 1
fi
echo "✅ 检测到网卡: $interface"

# 2. 备份现有 netplan 配置
echo "📁 备份现有配置..."
sudo cp /etc/netplan/01-netcfg.yaml /etc/netplan/01-netcfg.yaml.bak 2>/dev/null || echo "⚠️ 未找到现有配置文件,跳过备份"

# 3. 写入新的静态 ip 配置
echo "📝 写入静态 ip 配置..."
sudo tee /etc/netplan/01-netcfg.yaml > /dev/null <<eof
network:
  version: 2
  renderer: networkd
  ethernets:
    $interface:
      dhcp4: false
      addresses:
        - 192.168.6.102/24
      routes:
        - to: default
          via: 192.168.6.2
      nameservers:
        addresses:
          - 114.114.114.114
          - 8.8.8.8
eof

# 4. 设置正确的文件权限
sudo chmod 600 /etc/netplan/01-netcfg.yaml

# 5. 测试并应用配置
echo "🔍 测试配置..."
if sudo netplan try --timeout 5; then
    echo "✅ 配置测试通过"
else
    echo "❌ 配置测试失败,正在恢复备份..."
    sudo cp /etc/netplan/01-netcfg.yaml.bak /etc/netplan/01-netcfg.yaml 2>/dev/null || true
    sudo netplan apply
    exit 1
fi

# 6. 应用配置
echo "🔄 应用网络配置..."
sudo netplan apply

# 7. 显示配置结果
echo ""
echo "=========================================="
echo "✅ 静态 ip 配置完成!"
echo "=========================================="
echo "📌 网卡: $interface"
echo "📌 ip 地址: 192.168.6.102/24"
echo "📌 网关: 192.168.6.2"
echo "📌 dns: 114.114.114.114, 8.8.8.8"
echo ""
echo "📌 验证命令:"
echo "  ip addr show $interface"
echo "  ip route | grep default"
echo "  ping -c 3 114.114.114.114"
echo "=========================================="

分步详解

第一步:理解 netplan 网络管理工具

ubuntu 26.04 使用 netplan 作为默认的网络配置工具。它是一个基于 yaml 的配置抽象层,可以将配置渲染为 networkd 或 networkmanager 的后端配置。

netplan 配置文件位置:

netplan 的 yaml 格式要求:

第二步:查看当前网络状态

在配置之前,先了解当前的网络状态:

# 1. 查看所有网卡和 ip 地址
ip a

# 2. 查看当前路由表
ip route

# 3. 查看当前 dns 配置
cat /etc/resolv.conf

输出示例:

2: ens33: <broadcast,multicast,up,lower_up> mtu 1500 qdisc pfifo_fast state up group default qlen 1000
    link/ether 00:0c:29:c1:96:2c brd ff:ff:ff:ff:ff:ff
    inet 192.168.6.101/24 brd 192.168.6.255 scope global dynamic ens33
       valid_lft 86385sec preferred_lft 86385sec

从输出中可以看到:

第三步:找到你的网卡名称

在配置中,你需要指定正确的网卡名称。使用以下命令之一查看:

# 方法1:使用 ip 命令
ip a | grep -e "^[0-9]+:" | awk '{print $2}' | sed 's/://g'

# 方法2:列出 /sys/class/net 目录
ls /sys/class/net/

# 方法3:查看连接状态(最直观)
ip link show | grep -e "^[0-9]+:" | grep up

常见网卡名称:

类型名称示例
传统命名eth0、eth1
可预测命名(pcie)enp0s3、enp2s1
可预测命名(虚拟机)ens33、ens37

本文示例使用 ens33,请替换为你的实际网卡名称。

第四步:备份当前 netplan 配置

修改前务必备份,以便出错时恢复:

sudo cp /etc/netplan/01-netcfg.yaml /etc/netplan/01-netcfg.yaml.bak

如果文件不存在(比如使用默认配置),可以跳过这一步。

第五步:编辑 netplan 配置文件

使用 vim 或 nano 编辑配置文件:

sudo vim /etc/netplan/01-netcfg.yaml

或使用 nano(更简单):

sudo nano /etc/netplan/01-netcfg.yaml

第六步:写入静态 ip 配置

将以下内容粘贴到文件中(注意:将 ens33 替换为你的实际网卡名称):

network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:                     # ⚠️ 替换为你的实际网卡名
      dhcp4: false             # 关闭 dhcp(禁用动态 ip)
      addresses:
        - 192.168.6.102/24     # 静态 ip 地址 / 子网掩码(/24 = 255.255.255.0)
      routes:                  # 【重要】新版格式,替代弃用的 gateway4
        - to: default          # 默认路由
          via: 192.168.6.2     # 网关地址
      nameservers:             # dns 服务器配置
        addresses:
          - 114.114.114.114    # 国内通用 dns(主)
          - 8.8.8.8            # google dns(备用)

配置项详解:

字段含义本例值说明
version: 2netplan 配置版本2固定值,不可修改
renderer后端渲染引擎networkd服务器推荐,桌面版可用 networkmanager
ethernets以太网配置块--
dhcp4: false关闭 ipv4 dhcpfalse启用静态 ip 必须设为 false
addressesip 地址和子网掩码192.168.6.102/24/24 = 255.255.255.0(254个可用ip)
routes路由配置-新版格式,替代 gateway4
to: default目标地址(默认路由)default表示所有外部流量
via网关地址192.168.6.2网络出口设备地址
nameserversdns 服务器列表--

重要提醒:ubuntu 26.04 的 netplan 已弃用 gateway4 字段,必须使用 routes 格式,否则会报错 gateway4 has been deprecated。

子网掩码对照表:

cidr子网掩码可用 ip 数
/24255.255.255.0254
/25255.255.255.128126
/26255.255.255.19262
/16255.255.0.065,534

第七步:设置正确的文件权限

netplan 要求配置文件仅 root 用户可读写:

sudo chmod 600 /etc/netplan/01-netcfg.yaml

600 表示 -rw-------,即只有所有者(root)有读写权限。

第八步:测试配置(安全验证)

在正式应用前,先测试配置是否正确:

sudo netplan try

执行效果:

do you want to keep these settings?

press enter before the timeout to accept the new configuration

changes will revert in 112 seconds
configuration accepted.

为什么使用 netplan try:如果配置错误(比如 ip 和网关不在同一网段),系统会在 60 秒后自动回滚,避免因配置错误导致无法连接服务器。

第九步:应用配置

如果 netplan try 测试通过,或者你确定配置正确,可以直接应用:

sudo netplan apply

第十步:验证配置是否生效

# 1. 检查 ip 地址是否已更新
ip addr show ens33 | grep inet

# 2. 检查默认网关是否正确
ip route | grep default

# 3. 测试外网连通性
ping -c 3 114.114.114.114

# 4. 测试 dns 解析
nslookup mirrors.aliyun.com

# 5. 查看完整的网络状态
ip a

成功标志:

inet 192.168.6.102/24 brd 192.168.6.255 scope global ens33
default via 192.168.6.2 dev ens33 proto static
64 bytes from 114.114.114.114: icmp_seq=1 ttl=128 time=0.949 ms

常见问题与解决方案

1.netplan apply报错 “gateway4 has been deprecated”

原因:旧版配置使用了 gateway4 字段,ubuntu 26.04 已弃用。

解决:改用 routes 格式:

routes:
  - to: default
    via: 192.168.6.2

删除原有的 gateway4 行。

2. 配置静态 ip 后无法 ping 通外网

排查流程:

# 1. 检查默认网关是否配置正确
ip route | grep default
# 应显示:default via 192.168.6.2 dev ens33

# 2. 检查网关本身是否可达
ping -c 2 192.168.6.2

# 3. 检查 dns 配置
cat /etc/resolv.conf

# 4. 检查是否有多个默认网关冲突
ip route | grep "^default"
# 如果有两行,删除多余的网关:sudo ip route del default via 错误的网关

3.netplan apply报错 “conflicting default route declarations”

原因:netplan 配置中存在多个网关定义(比如同时有 gateway4 和 routes)。

解决:确保配置中只有一个网关定义,删除 gateway4 行,只保留 routes 部分。

4. 配置后 ssh 连接断开

原因:修改了 ip 地址,旧 ip 不再可用。

解决:

5. 网卡名称不对(如实际是 eth0 但配置写的是 ens33)

解决:

# 查看实际网卡名称
ip a

# 修改配置文件中的网卡名称
sudo vim /etc/netplan/01-netcfg.yaml
# 将 ens33 改为实际的名称(如 eth0)

# 重新应用
sudo netplan apply

6. 如何恢复到 dhcp(自动获取 ip)?

# 1. 编辑配置文件
sudo vim /etc/netplan/01-netcfg.yaml
# 2. 修改为:
network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: true      # 开启 dhcp
      # 删除 addresses、routes、nameservers 部分
# 3. 应用配置
sudo netplan apply

配置校验清单

检查项命令预期结果
ip 地址ip a show ens33包含 192.168.6.102/24
默认网关ip route | grep defaultdefault via 192.168.6.2 dev ens33
网关可达ping -c 2 192.168.6.20% 丢包
外网连通ping -c 3 114.114.114.1140% 丢包
dns 解析nslookup mirrors.aliyun.com返回 ip 地址

总结

通过本文,你应该已经掌握了:

  1. netplan 基础:ubuntu 26.04 的网络配置工具及其 yaml 格式要求。
  2. 静态 ip 配置:使用 routes 格式替代已弃用的 gateway4。
  3. 配置步骤:查看网卡 → 备份 → 编辑 → 测试 → 应用 → 验证。
  4. 问题排查:常见报错及解决方案。

下一步:配置好静态 ip 后,建议配置阿里云镜像源,加速软件安装;或安装 docker ce,搭建容器化环境。

以上就是ubuntu 26.04配置静态ip地址的方法步骤的详细内容,更多关于ubuntu 26.04配置静态ip地址的资料请关注代码网其它相关文章!

赞 (0)

您想发表意见!!点此发布评论

推荐阅读

Nginx 413 Request Entity Too Large错误排查与修复指南

08-05

Tomcat部署在内网只能自己看?用cpolar穿透5分钟搞定全球访问

07-30

MariaDB 基础教程从安装到主从复制

08-16

Apache StreamPark 功能和使用场景介绍、使用步骤详细示例

08-18

华为鸿蒙 HarmonyOS 7.0.0.102 SP8 版本推送:附更新内容汇总

08-18

HarmonyOS 6.0应用级事件总线与组件间通信实例详解

07-29

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论