当前位置:首页 > 虚拟主机 > 正文

如何给linux服务器配置ip?linux服务器静态ip设置教程

在 Linux 服务器中配置 IP 地址是网络管理的基础操作,但具体步骤高度依赖于操作系统版本及其使用的网络管理工具,目前主流的 Linux 发行版主要分为两类:一类使用传统的 ifcfg 脚本(如 CentOS 7/8, RHEL 7/8),另一类使用 NetworkManager 或 netplan(如 Ubuntu 18.04+, CentOS 9, Fedora),以下将分别详细说明这两种主流场景的配置方法。

传统 ifcfg 脚本配置法(适用于 CentOS/RHEL 7/8)

在基于 Red Hat 系的旧版本系统中,网络接口配置文件通常位于 /etc/sysconfig/network-scripts/ 目录下,文件名格式为 ifcfg-<接口名>(ifcfg-eth0 或 ifcfg-enp0s3)。

需要确定当前的网络接口名称,可以通过命令 ip addr 或 ifconfig 查看,假设接口名为 eth0,我们需要编辑对应的配置文件。

配置项 说明 示例值
TYPE 网络类型 Ethernet
DEVICE 物理设备名称 eth0
ONBOOT 开机是否启动网卡 yes
BOOTPROTO 获取 IP 方式 static (静态) 或 dhcp (动态)
IPADDR 静态 IP 地址 168.1.100
NETMASK 子网掩码 255.255.0
GATEWAY 默认网关 168.1.1
DNS1 首选 DNS 服务器 8.8.8

编辑文件后,保存并退出,重启网络服务以应用更改,在 CentOS 7/8 中,通常使用以下命令:

systemctl restart network # 或者在某些版本中 nmcli connection reload nmcli connection up eth0

NetworkManager 命令行配置法(适用于 Ubuntu/CentOS 9/Fedora)

现代 Linux 发行版普遍采用 NetworkManager 作为网络管理守护进程,使用 nmcli 工具可以更方便地管理连接,且无需手动编辑文本文件,减少了语法错误。

列出当前的网络连接:

假设我们要配置名为 Wired connection 1 的连接,并设置静态 IP,配置步骤如下:

  1. 设置 IP 地址和子网掩码

    nmcli connection modify "Wired connection 1" ipv4.addresses 192.168.1.100/24

    注意:子网掩码以 CIDR 格式表示,/24 代表 255.255.255.0。

  2. 设置默认网关

    如何给linux服务器配置ip?linux服务器静态ip设置教程 第1张

    nmcli connection modify "Wired connection 1" ipv4.gateway 192.168.1.1
  3. 设置 DNS 服务器

    nmcli connection modify "Wired connection 1" ipv4.dns "8.8.8.8 114.114.114.114"
  4. 将连接模式从自动(dhcp)改为手动(manual)

    nmcli connection modify "Wired connection 1" ipv4.method manual
  5. 重新加载连接以生效

    nmcli connection up "Wired connection 1"
  6. Netplan 配置法(适用于 Ubuntu 18.04+)

    Ubuntu 18.04 及更高版本默认使用 netplan 进行网络配置,配置文件位于 /etc/netplan/ 目录下,通常为 YAML 格式。

    编辑配置文件(01-netcfg.yaml):

    如何给linux服务器配置ip?linux服务器静态ip设置教程 第2张

    network: version: 2 ethernets: eth0: # 接口名称 dhcp4: no addresses: 192.168.1.100/24 routes: to: default via: 192.168.1.1 nameservers: addresses: 8.8.8.8 114.114.114.114

    保存文件后,应用配置:

    sudo netplan apply

    验证配置

    无论使用哪种方法,配置完成后都应验证网络连通性:

    1. 检查 IP 是否生效: ip addr show eth0
    2. 测试网关连通性: ping -c 4 192.168.1.1
    3. 测试外网连通性: ping -c 4 8.8.8.8


    相关问题与解答

    问题 1:配置完 IP 后无法上网,但 ping 网关正常,可能是什么原因?

    解答:

    ping 网关(局域网 IP)正常,说明物理链路和本地 IP 配置基本正确,问题通常出在 DNS 解析或路由策略上。

    1. DNS 问题:检查 /etc/resolv.conf 文件,确认是否配置了有效的 nameserver,可以尝试 ping www.baidu.com,ping IP 通但 ping 域名不通,则是 DNS 问题。
    2. 防火墙拦截:检查服务器本地的防火墙(如 iptables 或 firewalld)是否放行了出站流量,以及云服务商的安全组是否允许出站访问。
    3. 路由缺失:使用 ip route show 检查是否存在默认路由(default via <网关IP>),如果没有,需手动添加或检查配置文件中的 gateway 设置是否正确。

    问题 2:如何在不重启网络服务的情况下,让 IP 配置立即生效?

    解答:

    这取决于所使用的网络管理工具:

    1. ifcfg 脚本(CentOS 7/8):可以使用 ifdown <接口名> 和 ifup <接口名> 来单独重启某个网卡接口,ifdown eth0 && ifup eth0。
    2. NetworkManager:使用 nmcli connection down <连接名> 和 nmcli connection up <连接名>。
    3. Netplan(Ubuntu):直接运行 sudo netplan apply 即可即时应用更改,无需重启服务。

      注意:在生产环境中,如果通过 SSH 远程连接服务器,修改 IP 前务必确认新 IP 的连通性,或在本地控制台操作,以免配置错误导致失联。

    如何给linux服务器配置ip?linux服务器静态ip设置教程 第3张

0