在Linux和Unix-like系统中,命令行配置IP地址是系统管理和网络调试的基础技能,通过命令行工具,管理员可以快速、灵活地设置网络接口参数,适用于无图形界面的服务器环境或自动化运维场景,以下将详细介绍不同发行版中配置IP地址的常用方法,包括临时配置和永久配置的区别,以及常见问题的解决方案。

在开始配置前,首先需要确认系统中的网络接口名称,使用ip addr或ifconfig命令(需安装net-tools包)可以列出所有网络接口及其状态。eth0、ens33或wlan0等是常见的接口名称,配置IP地址时,需确保目标接口处于活动状态,否则可通过ifup [接口名]命令激活。
临时配置IP地址
临时配置适用于当前会话,重启系统后配置将失效,在大多数现代Linux发行版(如Ubuntu 18.04+、CentOS 7+)中,推荐使用ip命令,为eth0接口配置静态IP地址168.1.100,子网掩码255.255.0,网关168.1.1,可执行以下命令:
sudo ip addr add 192.168.1.100/24 dev eth0 # 设置IP地址和子网掩码 sudo ip link set eth0 up # 激活接口 sudo ip route add default via 192.168.1.1 # 设置默认网关
若需配置DNS服务器,可编辑/etc/resolv.conf文件(临时配置)或使用systemd-resolve命令(如sudo systemd-resolve --set-dns=8.8.8.8 --interface=eth0)。
永久配置IP地址
永久配置需要修改系统的网络配置文件,具体方法因发行版而异,以下是主流发行版的配置方式:

-
基于Debian/Ubuntu的系统
使用Netplan(Ubuntu 18.04+)或/etc/network/interfaces(旧版本),以Netplan为例,编辑/etc/netplan/01-netcfg.yaml如下:network: version: 2 ethernets: eth0: dhcp4: no addresses: [192.168.1.100/24] gateway4: 192.168.1.1 nameservers: addresses: [8.8.8.8, 1.1.1.1]保存后执行
sudo netplan apply使配置生效。 -
基于RHEL/CentOS的系统
使用NetworkManager或/etc/sysconfig/network-scripts/目录下的配置文件,以CentOS 7为例,编辑ifcfg-eth0文件:TYPE=Ethernet BOOTPROTO=static IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8 ONBOOT=yes
保存后执行
sudo systemctl restart network或sudo ifdown eth0 && sudo ifup eth0重启网络服务。
(图片来源网络,侵删) -
基于Arch Linux的系统
编辑/etc/network/interfaces或使用netctl工具,在/etc/network/interfaces中添加:auto eth0 iface eth0 inet static address 192.168.1.100 netmask 255.255.255.0 gateway 192.168.1.1执行
sudo systemctl restart dhcpcd或sudo netctl start eth0-static(若使用netctl)。
验证配置
配置完成后,可通过以下命令验证网络连通性:
ip addr show eth0:查看接口IP地址配置。ping 192.168.1.1:测试网关连通性。ping 8.8.8.8:测试外网连通性。nslookup www.google.com:测试DNS解析。
常见问题与解决方案
-
配置后IP地址未生效
检查接口是否激活(ip link show eth0),确认配置文件语法正确(如Netplan的YAML格式),并重启网络服务,若仍无效,尝试手动关闭并重新激活接口(sudo ip link set eth0 down && sudo ip link set eth0 up)。 -
无法访问外网但内网连通
检查默认网关配置(ip route),确认网关地址正确且可达,若使用防火墙(如iptables或firewalld),需检查是否放行了出站流量(sudo iptables -L或sudo firewall-cmd --list-all)。
相关问答FAQs
Q1: 如何查看当前系统的IP地址配置?
A1: 使用ip addr show或ifconfig命令(需安装net-tools)可以查看所有网络接口的IP地址、子网掩码和状态。ip addr show eth0将显示eth0接口的详细配置信息。
Q2: 临时配置和永久配置有什么区别?何时使用?
A2: 临时配置通过命令直接设置,重启后失效,适用于快速测试或临时网络调试;永久配置通过修改系统文件实现,重启后仍保留,适用于服务器等需要长期稳定网络的场景,建议生产环境使用永久配置,避免意外重启导致网络中断。
