Linux系统下如何修改IP地址?

在Linux系统中,修改IP地址是网络管理的基础操作之一,无论是临时调试还是长期网络配置,都需要掌握正确的方法,Linux修改IP地址的方式主要分为临时修改和永久修改两大类,不同发行版(如RedHat系、Debian系)的具体操作略有差异,且可通过命令行或图形界面实现,本文将详细讲解各类方法的具体步骤、适用场景及注意事项。

linux如何修改ip地址

临时修改IP地址

临时修改IP地址是指配置在当前会话中生效,重启系统或网络服务后配置会失效,适用于临时调试、网络测试等场景,主要命令行工具包括ifconfig(传统工具)和ip(推荐,现代Linux默认支持)。

使用ifconfig命令(传统方法)

ifconfig是早期的网络配置工具,部分系统(如CentOS 7之前)默认安装,但新版本可能需手动安装net-tools包。
基本语法

ifconfig [网卡名称] IP地址 netmask 子网掩码 [up|down]

示例:为eth0网卡配置IP地址168.1.100,子网掩码255.255.0

ifconfig eth0 192.168.1.100 netmask 255.255.255.0 up

验证配置

ifconfig eth0  # 查看eth0网卡配置信息

注意事项

  • ifconfig在CentOS 7/Ubuntu 20.04等新版本中默认未安装,可通过sudo yum install net-tools(RedHat系)或sudo apt install net-tools(Debian系)安装。
  • 临时修改后,重启网络服务或系统配置将丢失。

使用ip命令(推荐方法)

ip命令是iproute2包中的工具,功能更强大,是现代Linux系统的首选网络配置工具。
基本语法

ip addr add IP地址/子网前缀 dev 网卡名称

示例:为eth0网卡配置IP地址168.1.100,子网掩码24(即255.255.0):

sudo ip addr add 192.168.1.100/24 dev eth0

启用网卡(若网卡未启动):

sudo ip link set eth0 up

验证配置

ip addr show eth0  # 查看eth0网卡IP配置

删除临时IP

sudo ip addr del 192.168.1.100/24 dev eth0

优势ip命令支持更复杂的网络操作(如路由管理、VLAN配置等),且是未来发展的主流方向。

永久修改IP地址

永久修改IP地址是指配置写入系统配置文件,重启后仍生效,适用于服务器、长期使用的桌面环境等场景,不同Linux发行版的配置文件位置和格式不同,需区分处理。

RedHat/CentOS系列(使用ifcfg文件)

RedHat系(如CentOS、RHEL、Fedora)通过修改/etc/sysconfig/network-scripts/目录下的网卡配置文件实现,文件名格式为ifcfg-网卡名称

linux如何修改ip地址

操作步骤
(1)编辑网卡配置文件,以eth0为例:

sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0

(2)修改或添加以下参数(根据实际网络配置调整):

TYPE=Ethernet               # 网络类型
BOOTPROTO=static            # 静态IP,若为DHCP则填dhcp
NAME=eth0                   # 网卡名称
DEVICE=eth0                 # 网卡设备名
ONBOOT=yes                  # 开机自启
IPADDR=192.168.1.100        # IP地址
NETMASK=255.255.255.0       # 子网掩码
GATEWAY=192.168.1.1         # 默认网关
DNS1=8.8.8.8                # DNS服务器
DNS2=114.114.114.114

参数说明

  • BOOTPROTOstatic为静态IP,dhcp为自动获取IP。
  • ONBOOTyes表示开机启动网卡,避免手动ifconfig启用。
  • IPADDRNETMASKGATEWAYDNS需根据网络环境填写,DNS通常需单独配置(/etc/resolv.conf文件会被网络服务自动覆盖)。

(3)保存文件后,重启网络服务或网卡:

sudo systemctl restart network  # 重启网络服务(CentOS 7+)
# 或
sudo ifdown eth0 && sudo ifup eth0  # 重启单个网卡

(4)验证配置:

ip addr show eth0
ping 192.168.1.1  # 测试网通性

Debian/Ubuntu系列(使用Netplan或NetworkManager)

Debian系(如Ubuntu、Debian)的网络配置方式因版本而异,Ubuntu 18.04+默认使用netplan,Ubuntu 16.04及之前版本使用/etc/network/interfaces文件;也可通过NetworkManager图形化或命令管理。

(1)使用Netplan(Ubuntu 18.04+)

Netplan通过YAML格式的配置文件管理网络,文件位于/etc/netplan/目录下(如01-netcfg.yaml)。

操作步骤
(1)编辑Netplan配置文件:

sudo vi /etc/netplan/01-netcfg.yaml

(2)配置静态IP(示例为eth0网卡):

network:
  version: 2
  renderer: networkd  # 使用systemd-networkd渲染,或改为NetworkManager
  ethernets:
    eth0:
      dhcp4: no       # 禁用DHCP
      addresses:
        - 192.168.1.100/24  # IP地址/子网前缀
      gateway4: 192.168.1.1  # 默认网关
      nameservers:
        addresses: [8.8.8.8, 114.114.114.114]  # DNS服务器

注意:缩进必须使用空格(不可用Tab键),YAML对格式敏感。

(3)应用配置:

sudo netplan apply

(4)验证配置:

ip addr show eth0
ping 8.8.8.8

(2)使用/etc/network/interfaces(Ubuntu 16.04及之前)

传统方式,直接编辑接口配置文件:

linux如何修改ip地址

sudo vi /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 114.114.114.114

重启网络服务

sudo systemctl restart networking

使用NetworkManager命令(nmcli

无论是RedHat系还是Debian系,若安装了NetworkManager(桌面版默认安装),均可通过nmcli命令永久修改IP,无需手动编辑配置文件。

基本语法

nmcli con mod "连接名称" ipv4.method manual ipv4.addresses IP地址/前缀 ipv4.gateway 网关 ipv4.dns DNS

示例:修改名为eth0的有线连接为静态IP:

sudo nmcli con mod "有线连接 1" ipv4.method manual 
ipv4.addresses 192.168.1.100/24 
ipv4.gateway 192.168.1.1 
ipv4.dns 8.8.8.8,114.114.114.114

激活连接

sudo nmcli con down "有线连接 1" && sudo nmcli con up "有线连接 1"

验证配置

nmcli con show "有线连接 1" | grep ipv4

不同修改方法对比

为方便选择,以下表格总结各类方法的特点:

修改方式 适用场景 命令/工具 优点 缺点
临时修改(ip) 临时调试、网络测试 ip addr add 快速生效,无需修改配置文件 重启后失效
临时修改(ifconfig) 兼容旧系统 ifconfig 传统工具,易记 功能有限,新系统需安装
永久修改(ifcfg) RedHat系服务器 编辑/etc/sysconfig/network-scripts/ifcfg-* 配置稳定,适合生产环境 文件路径复杂,需手动重启服务
永久修改(Netplan) Ubuntu 18.04+桌面/服务器 编辑/etc/netplan/*.yaml YAML格式清晰,支持多网络管理 依赖systemd-networkd,格式要求严格
永久修改(nmcli) 图形化环境、批量管理 nmcli 无需编辑文件,支持图形/命令双模式 需安装NetworkManager,理解连接概念

常见问题排查

修改IP后若无法上网,可按以下步骤排查:

  1. 检查IP配置:确认IPADDRNETMASKGATEWAY是否正确,且与网络段匹配(如168.1.100需在168.1.0/24网段)。
  2. 检查DNS:执行ping 8.8.8.8测试网络连通性,若通但ping www.baidu.com失败,检查/etc/resolv.conf中的DNS配置。
  3. 检查网卡状态:确认网卡是否启用(ip link show查看状态为UP)。
  4. 检查防火墙:若无法访问外部网络,可能是防火墙规则拦截,临时关闭测试(sudo systemctl stop firewalld)。

相关问答FAQs

Q1:修改IP地址后无法上网,如何排查?
A:首先检查IP、子网掩码、网关配置是否正确(可通过ip addr showip route查看);其次测试网络连通性,ping 8.8.8.8检查是否可访问外网,若通但域名解析失败,检查DNS配置(/etc/resolv.conf);若无法ping通网关,检查网卡是否启用(ip link set eth0 up)及网线连接;最后确认防火墙或安全组未拦截流量(临时关闭防火墙测试:sudo systemctl stop firewalld)。

Q2:临时修改和永久修改IP地址有什么区别?如何选择?
A:临时修改通过ipifconfig命令实现,配置仅在当前会话生效,重启系统或网络服务后失效,适用于临时网络调试、测试等场景;永久修改需编辑系统配置文件(如ifcfg、Netplan文件)或使用nmcli,配置写入磁盘,重启后仍生效,适用于服务器、长期使用的设备等需要固定IP的场景,选择时,若仅需临时调试,用临时修改;若需长期稳定网络,必须用永久修改。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/32591.html

(0)
酷番叔酷番叔
上一篇 2025年9月29日 18:07
下一篇 2025年9月29日 18:28

相关推荐

  • 在Linux系统中如何判断网卡是否处于正常工作状态?

    在Linux系统中,判断网卡是否正常工作需要从多个维度进行综合检查,包括网卡硬件识别、驱动加载状态、链路连通性、网络配置及服务运行状态等,以下是详细的排查步骤和方法,帮助用户全面评估网卡的健康状况,基础识别:确认网卡是否被系统检测到首先需要确认Linux系统是否已识别到网卡硬件,这是判断网卡正常工作的前提,使用……

    2025年8月25日
    5600
  • 占用TCP端口8080如何终止?

    端口占用的原理端口分类0-1023:系统特权端口(需root权限),如HTTP(80)、SSH(22),1024-49151:用户端口,供普通应用程序使用,49152-65535:动态/私有端口,占用本质进程通过调用bind()系统调用绑定IP和端口,再通过listen()进入监听状态,手动占用端口的步骤方法1……

    2025年6月22日
    7600
  • 如何查看NUMA当前状态?

    在Linux系统中,NUMA(Non-Uniform Memory Access,非统一内存访问)是提升多处理器服务器性能的关键技术,它通过将CPU和内存划分为多个”节点”,让每个CPU优先访问本地内存,减少跨节点延迟,以下是详细配置指南:在配置前,先检查系统NUMA支持情况:查看硬件支持执行命令:lscpu……

    2025年7月13日
    7900
  • Linux命令行如何输入中文?正确操作方法是什么?

    在Linux命令行环境中输入中文,通常涉及系统语言环境配置、终端模拟器设置以及输入法支持等多个环节,由于Linux命令行默认以英文为操作语言,若要正确输入和显示中文,需确保系统环境支持UTF-8编码,并正确配置终端与输入法的联动,以下是具体操作步骤和注意事项,检查并配置系统语言环境语言环境是Linux系统处理文……

    2025年10月3日
    3800
  • Linux 7如何重装Linux?详细步骤与方法指南

    重装Linux系统(以CentOS 7为例)是解决系统故障、升级版本或清理数据的常用操作,整个过程需谨慎操作,避免数据丢失,以下是详细步骤及注意事项:准备工作重装前需完成以下准备,确保操作顺利:备份重要数据:将用户目录(/home)、配置文件(如/etc/nginx、/etc/my.cnf)、应用数据(数据库……

    2025年9月28日
    3700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信