LOADING

加载过慢请开启缓存 浏览器默认开启

Unbuntu修改静态IP地址

本教程试用于 Ubuntu22.04。

1 查看当前 IP 地址

输入

ip addr

输出

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
  • lo 是回环接口(loopback),用于本地通信
  • mtu 65536 表示最大传输单元为 65536 字节
  • inet 127.0.0.1/8 是 IPv4 地址, ::1/128 是 IPv6 地址
  • scope host 表示该地址仅在本地主机有效
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:62:2f:df brd ff:ff:ff:ff:ff:ff
    altname enp2s1
    inet 192.168.242.130/24 metric 100 brd 192.168.242.255 scope global dynamic ens33
       valid_lft 927sec preferred_lft 927sec
    inet6 fe80::20c:29ff:fe62:2fdf/64 scope link
       valid_lft forever preferred_lft forever
  • ens33 是主网络接口, enp2s1 是它的备用名称
  • 192.168.242.130/24 是当前分配的 IPv4 地址,子网掩码为 24 位
  • metric 100 表示路由优先级
  • scope global 表示该地址在全局网络有效
  • dynamic 表示该地址是通过 DHCP 动态获取的
  • valid_lft 927sec 表示该地址的有效期为 927 秒

2 修改配置文件

Ubuntu 22.04 中,网络配置存放在 /etc/netplan/ 目录下的一个或多个 YAML 文件中。
查看该文件夹下的文件

cd /etc/netplan/
ls

输出

50-cloud-init.yaml

/*
50-cloud-init.yaml:表明你的 Ubuntu 是通过 云镜像(Cloud Image) 或 自动化工具(如 cloud-init) 安装的。

常见于云平台(AWS、OpenStack、Proxmox 等)或使用 cloud-init 工具初始化的虚拟机。

cloud-init 会在首次启动时自动生成网络配置,并写入此文件。

01-network-manager-all.yaml:通常出现在 Ubuntu 桌面版 或手动安装的系统中,由 NetworkManager 管理网络。

即使文件名不同,操作步骤是相同的!
你只需直接编辑现有的 *.yaml 文件即可:
*/

在我的系统中,输入

sudo vim 50-cloud-init.yaml

输出以下内容

# This file is generated from information provided by the datasource.  Changes
# to it will not persist across an instance reboot.  To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
    ethernets:
        ens33:
            dhcp4: true
    version: 2

使用以下yaml文件覆盖上述文件

network:
  version: 2
  ethernets:
    ens33:
      addresses:
        - 192.168.242.50/24
      routes:
        - to: default
          via: 192.168.242.1
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]

使用 :wq 保存并退出。

3应用配置

sudo netplan apply