Ubuntu 和 CentOS 中配置静态 IP

在 Ubuntu 和 CentOS 中配置静态 IP 的方法有所不同,主要因为两者使用的网络管理工具不同。以下是详细步骤:


Ubuntu(18.04 及更新版本,使用 netplan

1. 查看网卡名称

bash 复制代码
ip a

记录网卡名称(如 ens33eth0)。

2. 编辑 netplan 配置文件

bash 复制代码
sudo nano /etc/netplan/00-installer-config.yaml

(文件名可能不同,但位于 /etc/netplan/ 下,格式为 .yaml

3. 配置静态 IP

修改文件内容如下(示例):

yaml 复制代码
network:
  version: 2
  renderer: networkd  # 或 NetworkManager(桌面版)
  ethernets:
    ens33:  # 你的网卡名称
      dhcp4: no
      addresses: [192.168.1.100/24]  # IP/子网掩码
      gateway4: 192.168.1.1  # 网关
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]  # DNS

📌 注意

  • gateway4 在较新版本中可能已弃用,改用 routes(如 Ubuntu 22.04+)。
  • 桌面版建议使用 renderer: NetworkManager

4. 应用配置

bash 复制代码
sudo netplan apply

CentOS 7(使用 ifcfg 文件)

1. 查看网卡名称

bash 复制代码
ip a

记录网卡名称(如 ens33eth0)。

2. 编辑网卡配置文件

bash 复制代码
sudo nano /etc/sysconfig/network-scripts/ifcfg-ens33

修改内容如下:

ini 复制代码
DEVICE=ens33
BOOTPROTO=none  # 静态 IP
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0  # 或 PREFIX=24
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=1.1.1.1
TYPE=Ethernet

3. 重启网络服务

bash 复制代码
sudo systemctl restart network

CentOS 8/Stream(使用 nmcliifcfg

方法 1:使用 nmcli(推荐)

bash 复制代码
sudo nmcli con modify "ens33" \
  ipv4.method manual \
  ipv4.addresses "192.168.1.100/24" \
  ipv4.gateway "192.168.1.1" \
  ipv4.dns "8.8.8.8,1.1.1.1"

激活配置:

bash 复制代码
sudo nmcli con up "ens33"

方法 2:手动编辑 ifcfg 文件(同 CentOS 7)

配置文件路径仍为 /etc/sysconfig/network-scripts/ifcfg-ens33,但需安装传统网络服务:

bash 复制代码
sudo dnf install network-scripts -y

验证配置

bash 复制代码
ip a show ens33  # 检查 IP
ping 8.8.8.8     # 测试网络连通性
nslookup google.com  # 测试 DNS

常见问题

1. 网络服务重启失败

  • Ubuntu :检查 netplan 文件缩进(YAML 对格式敏感)。

  • CentOS 7 :确保 ONBOOT=yes

  • CentOS 8+ :如果使用 network-scripts,需禁用 NetworkManager

    bash 复制代码
    sudo systemctl disable --now NetworkManager
    sudo systemctl enable --now network

2. 网关无法访问

  • 确认网关 IP 是否正确(如 ip route show)。

  • 检查防火墙是否拦截:

    bash 复制代码
    sudo systemctl stop firewalld  # 临时关闭(CentOS)
    sudo ufw disable              # Ubuntu

总结对比

系统 配置工具 配置文件路径 生效命令
Ubuntu netplan /etc/netplan/*.yaml sudo netplan apply
CentOS 7 ifcfg /etc/sysconfig/network-scripts/ifcfg-* sudo systemctl restart network
CentOS 8+ nmcliifcfg 同上(需安装 network-scripts sudo nmcli con up <名称>

💡 提示

  • 云服务器(如 AWS/Aliyun)可能需要额外配置云平台网络接口。
  • 无线网卡配置需指定 wifis:(Ubuntu)或 TYPE=WiFi(CentOS)。
相关推荐
IPIDEA全球IP代理1 小时前
IPIDEA:全球领先的企业级代理 IP 服务商
网络·网络协议·tcp/ip
十年一梦实验室1 小时前
工业机器人控制系统 IP-PP-EXEC 流水线
网络·人工智能·网络协议·tcp/ip·机器人
iナナ1 小时前
TCP协议与UDP协议
网络·tcp/ip·udp
信必诺2 小时前
网络 —— 笔记本(主机)、主机虚拟机(Windows、Ubuntu)、手机(笔记本热点),三者进行相互ping通
网络·ubuntu·智能手机
绿箭柠檬茶3 小时前
Ubuntu 下编译 SQLCipher 4.8.0
linux·运维·ubuntu·sqlite3
锦鲤飞上天10 小时前
CentOS卸载、安装MySQL8(yum操作)
linux·adb·centos
mortimer10 小时前
一次搞懂 rsync:从入门到解决真实世界中的权限难题
linux·运维·centos
爱玩电脑的L11 小时前
网络原理 - TCP/IP
网络·网络协议·tcp/ip
清朝牢弟13 小时前
Ubuntu系统VScode实现opencv(c++)图像像素类型转换和归一化
c++·opencv·ubuntu
失因14 小时前
Linux 权限管理与 ACL 访问控制
linux·运维·服务器·数据库·centos