Ubuntu22.04 修改网卡IP(Netplan,默认)

Ubuntu22.04 默认使用 netplan 管理网络,不是旧的 /etc/network/interfaces。

我的场景:PVE宿主机是Debian,现在如果是Ubuntu22.04虚拟机改IP,下面命令适用。

1. 查看网卡名称

ip a

常见名称:ens33 / eth0 / enp0s3

2. 找到netplan配置文件

ls /etc/netplan/

一般文件名类似:00-installer-config.yaml 或者 01-netcfg.yaml

编辑yaml(yaml严格缩进,用空格,不能用Tab)

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

示例:静态IP配置

network:
  ethernets:
    ens33: # 改成你自己网卡名
      addresses: [10.26.100.XX/24]
      gateway4: 10.26.100.1
      nameservers:
        addresses: [223.5.5.5,114.114.114.114]
  version: 2

注意:冒号后面必须空格,缩进2个空格,yaml语法错直接网络失效。

DHCP自动获取IP

network:
  ethernets:
    ens33:
      dhcp4: true
  version: 2

3. 应用配置(推荐先测试)

# 先测试,120秒内没确认会自动回滚,防止断网
netplan try

确认网络正常后,回车确认保存。

直接永久应用(不回滚,谨慎!远程连接容易翻车)

netplan apply

4. 验证

ip a
ping 网关IP

补充:如果你是要改PVE里的网桥vmbr0(宿主机是Proxmox,不是Ubuntu)

⚠️ PVE宿主机不要用netplan,PVE用 /etc/network/interfaces

nano /etc/network/interfaces

示例vmbr0:

auto vmbr0
iface vmbr0 inet static
        address 10.26.100.20/24
        gateway 10.26.100.1
        bridge-ports nic0
        bridge-stp off
        bridge-fd 0

重启网络:

systemctl restart networking

你现在需求是什么?

你是要:

  1. Ubuntu22.04虚拟机内部改IP?
    还是
  2. PVE宿主机(debian)修改vmbr0网桥IP?

把 ip a 的输出贴给我,我直接给你写好完整yaml配置。

作者:月影鹏鹏  创建时间:2026-10-04 00:42
最后编辑:月影鹏鹏  更新时间:2026-10-04 00:43