温馨提示×

Ubuntu怎样设置静态IP地址

小樊
87
2025-12-25 19:10:38
栏目: 智能运维

Ubuntu 设置静态 IP 的实用步骤

一、先确认你的系统与网络管理方式

  • 查看系统版本与网络管理工具:
    • 查看版本:cat /etc/os-release
    • 查看网卡名:ip a(常见如 ens33、enp0s3、eth0
    • 查看默认网关:ip route show default
  • 管理工具与配置文件路径对照:
    • Ubuntu 18.04 及以后(默认):使用 netplan,配置在 /etc/netplan/*.yaml,应用命令:sudo netplan apply
    • 桌面版或明确使用 NetworkManager:可用 GUI 或 nmcli 命令行
    • 旧版(16.04 等)或 ifupdown:编辑 /etc/network/interfaces 并重启网络服务
      以上路径与命令为 Ubuntu 常见默认配置,便于快速定位与修改。

二、方法一 Netplan(Ubuntu 18.04+ 服务器常用)

  • 步骤
    1. 查看网卡名与当前网关:ip aip route show default
    2. 备份并编辑 netplan 配置(文件名可能不同,如 01-netcfg.yaml、00-installer-config.yaml):
      • 备份:sudo cp /etc/netplan/*.yaml /etc/netplan/.bak
      • 编辑:sudo nano /etc/netplan/01-netcfg.yaml
    3. 写入静态 IP(示例,注意 YAML 缩进为空格):
      network:
        version: 2
        renderer: networkd   # 服务器常用;桌面版若由 NetworkManager 管理可改为 NetworkManager
        ethernets:
          ens33:            # 替换为你的网卡名
            dhcp4: no
            addresses: [192.168.1.100/24]
            gateway4: 192.168.1.1
            nameservers:
              addresses: [8.8.8.8, 8.8.4.4]
      
      • 提示:新版 netplan 中 gateway4 在新版本可能被 routes 取代,若你的系统或云镜像较新,请按实际模板调整。
    4. 应用并验证:
      • 应用:sudo netplan apply(如有报错可用 sudo netplan --debug apply 排错)
      • 验证:ip aip routeping 8.8.8.8nslookup example.com
  • 要点
    • YAML 对缩进敏感,使用空格;接口名、地址、网关、DNS 请按实际环境替换。

三、方法二 NetworkManager(桌面版或 nmcli 命令行)

  • GUI
    • 打开:设置 → 网络 → 有线/Wi‑Fi → 齿轮图标 → IPv4 → 方法选 Manual
    • 填写:IP 地址/子网掩码(如 192.168.1.100/24)网关DNS → 应用
  • nmcli 命令行
    • 查看连接名:nmcli con show(记下有线连接名称)
    • 配置静态 IP(按需替换名称与参数):
      nmcli con mod "有线连接 1" ipv4.addresses 192.168.1.100/24
      nmcli con mod "有线连接 1" ipv4.gateway 192.168.1.1
      nmcli con mod "有线连接 1" ipv4.dns "8.8.8.8,8.8.4.4"
      nmcli con mod "有线连接 1" ipv4.method manual
      nmcli con up "有线连接 1"
      
  • 验证:ip anmcli con show "有线连接 1" | grep ipv4

四、方法三 传统 ifupdown(旧版 Ubuntu 16.04 等)

  • 编辑配置文件:
    sudo nano /etc/network/interfaces
    
    写入示例:
    auto eth0
    iface eth0 inet static
        address 192.168.1.100
        netmask 255.255.255.0
        gateway 192.168.1.1
        dns-nameservers 8.8.8.8 8.8.4.4
    
  • 使配置生效:
    • 重启网络:sudo systemctl restart networking
    • 验证:ip aroute -n
      该方法适用于仍使用 /etc/network/interfaces 的旧环境。

五、验证与常见问题

  • 验证要点
    • 查看地址与路由:ip aip route
    • 外网连通:ping 8.8.8.8
    • DNS 解析:nslookup example.com
  • 常见问题与处理
    • 配置未生效或语法错误:netplan 请用 sudo netplan --debug apply 检查缩进与字段;确保 YAML 使用空格。
    • 多个网络管理工具冲突:避免同时启用 netplanNetworkManager 管理同一接口,保持管理方式统一。
    • 新版本 netplan 无 gateway4:改用 routes 字段配置默认路由(参考系统自带模板或 man netplan)。
    • IP 冲突或网段不匹配:确认静态 IP 与局域网网段一致,且未被 DHCP 分配。

0