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

参数说明:

  • BOOTPROTO:static为静态IP,dhcp为自动获取IP。
  • ONBOOT:yes表示开机启动网卡,避免手动ifconfig启用。
  • IPADDR、NETMASK、GATEWAY、DNS需根据网络环境填写,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配置:确认IPADDR、NETMASK、GATEWAY是否正确,且与网络段匹配(如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 show和ip route查看);其次测试网络连通性,ping 8.8.8.8检查是否可访问外网,若通但域名解析失败,检查DNS配置(/etc/resolv.conf);若无法ping通网关,检查网卡是否启用(ip link set eth0 up)及网线连接;最后确认防火墙或安全组未拦截流量(临时关闭防火墙测试:sudo systemctl stop firewalld)。

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

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

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

相关推荐

  • Linux内存满了导致不足,如何添加内存解决?

    Linux系统内存不足会导致系统响应缓慢、进程频繁被OOM(Out of Memory)杀手终止,甚至服务崩溃,解决内存不足问题需从“诊断-临时缓解-长期扩容”三步入手,以下是详细操作指南,内存不足的表现与诊断典型表现系统卡顿,命令行响应延迟高,应用打开缓慢;频繁出现“Out of memory: Kill p……

    2025年10月7日
    22000
  • Linux环境下如何生成补丁文件?命令与步骤详解?

    在Linux系统中,补丁文件(Patch File)是一种用于记录文件修改差异的文本文件,常用于代码版本控制、团队协作和软件更新场景,通过补丁文件,开发者可以将修改内容应用到原始文件中,而无需传递整个文件,从而节省带宽并清晰展示变更细节,本文将详细介绍Linux中生成补丁文件的常用方法、工具及具体操作步骤,补丁……

    2025年10月7日
    23300
  • 如何在mac上用linux虚拟机

    Mac上可用VirtualBox或VMware Fusion等虚拟机软件,安装Linux

    2025年8月16日
    26100
  • Linux加载硬件驱动的具体步骤和方法是什么?

    Linux驱动加载是操作系统与硬件设备交互的核心环节,其过程涉及内核模块管理、硬件探测、依赖解析等多个层面,理解这一过程有助于系统管理员和开发者高效解决硬件兼容性问题,优化系统性能,以下从驱动基础、加载机制、手动与自动加载方法、故障排查等方面详细阐述Linux如何加载硬件驱动,Linux驱动基础:内核模块与设备……

    2025年10月4日
    24500
  • linux下如何备份数据库

    Linux 下,可使用相应数据库的备份工具,如 MySQL 用 mysqldump

    2025年8月9日
    24000

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信