Ubuntu 设置静态IP

7 阅读2分钟

Ubuntu 静态 IP 配置记录与指北

1. 背景溯源与变更目标

原生系统中,服务器的网络通常会因为 DHCP 自动下发策略而在每次意外重启或网络重连后分配新的随机 IP(如曾用过的 192.168.0.4192.168.0.7 等)。 为了提供基础架构的高可用性,必须将其核心网卡固定为不变的主机 IP。

  • 配置的全新静态 IP192.168.0.2(子网掩码视作 /24 即 255.255.255.0
  • 内网通用默认网关192.168.0.1

2. 配置步骤分解(基准 Netplan 操作)

自 Ubuntu 18.04 往后的发行版,默认抛弃了老旧的 /etc/network/interfaces 而采用声明式的 netplan 服务统管网络协议栈。

步骤 1:重写 Netplan 配置文件 首先正常以 SSH 形式登录服务器后,用 nano 或 vim 及 sudo 提权编辑其网络核心配置文件:

bash
sudo nano /etc/netplan/50-cloud-init.yaml

(注:文件名有时也可能是 01-netcfg.yaml 等,可根据 /etc/netplan/ 目录下实际存在的 YAML 文件为准)

直接覆盖或将其参数修改为纯静态模式(如下参考代码):

yaml
network:
  version: 2
  ethernets:
    ens33:                  # 锁定硬件网卡名(有时是 eth0)
      dhcp4: no             # [关键点] 封禁 DHCP 自动获取行为
      addresses: 
        - 192.168.0.2/24    # 将 IP 彻底转为静态 192.168.0.2 与 /24 掩码
      routes:
        - to: default
          via: 192.168.0.1  # 指引所有外网通信发往 192.168.0.1 默认网关
      nameservers:
        addresses: 
          - 192.168.0.1     # 配置网关为首选 DNS,兜底再配常规公共 DNS
          - 114.114.114.114
          - 8.8.8.8

步骤 2:应用配置至内核网络栈 上述文本内容写入并无误保存后。直接下发重载命令(无需繁琐的重新启动机器):

bash
sudo netplan apply

⚠️ 关于连接中断的预警:  在你按下回车的瞬间,因为系统中正在运行的老网卡驱动会瞬间拉起新的 192.168.0.2 地址,并抛弃目前你用作支撑 SSH 连接的旧地址,你现在的 SSH 终端会瞬间卡死然后报 "Connection Reset" 或 "broken pipe" 掉线,这是应用成功后预料中的连接断开行为。

步骤 3:验证长效固化 由于连接已经断开,你可以关闭失效的旧窗口。继而在本地终端发起向新 IP 地址的验证指令:

bash
ssh xqk@192.168.0.2

若能顺利唤出输入密码阶段,则代表配置完成。

3. 验收总结

经过替换,上述服务器网卡的动态分发特性已被掐断。后续一旦该主机(不论是物理断电还是系统级指令)遭遇重启,其对外呈现的出口及入口将永久稳固在 192.168.0.2,不会再受内网其他设备的干扰和 DHCP 池刷新影响。