Linux系统如何修改本机IP地址?

在Linux系统中修改本机IP地址是日常运维和开发中的常见操作,根据网络环境的不同(如临时修改或永久生效),以及Linux发行版之间的差异(如RedHat系、Debian系等),操作方法略有不同,本文将详细介绍通过命令行和配置文件修改IP地址的步骤,涵盖主流发行版的使用场景。

linux如何修改本机ip

前提:确认网络接口名称

在修改IP前,需先确定本机的网络接口名称(如eth0、ens33、enp0s3等),可通过以下命令查看:

ip addr show  # 或 ifconfig

命令输出中,“inet”字段对应IPv4地址,“link/ether”字段对应MAC地址,第一行的“2: eth0”或“3: ens33”即为网络接口名称。

临时修改IP地址(重启后失效)

临时修改IP适用于测试场景,重启网络服务或系统后配置会恢复,主流方法有两种:

使用ifconfig命令(传统工具)

若系统安装了net-tools包(默认部分系统未安装,可通过yum install net-toolsapt install net-tools安装),操作如下:

sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0  # 设置IP和子网掩码
sudo ifconfig eth0 up  # 确保接口启动(若未启动)

若需添加网关,需通过route命令:

sudo route add default gw 192.168.1.1  # 添加默认网关

使用ip命令(推荐,现代Linux默认支持)

ip命令是iproute2包的工具,功能更全面,推荐使用:

sudo ip addr add 192.168.1.100/24 dev eth0  # 设置IP(/24表示255.255.255.0)
sudo ip link set eth0 up  # 启用接口
sudo ip route add default via 192.168.1.1  # 添加默认网关

临时配置无需保存,重启后自动失效。

linux如何修改本机ip

永久修改IP地址(重启后生效)

永久修改需编辑对应系统的网络配置文件,不同发行版文件位置和格式不同,以下是主流发行版的操作方法:

RedHat/CentOS(7及以上版本)

使用NetworkManagerifcfg文件配置,若通过ifcfg文件(适用于禁用NetworkManager的场景):

  • 编辑配置文件:sudo vim /etc/sysconfig/network-scripts/ifcfg-eth0
  • 添加/修改以下内容:
    TYPE=Ethernet
    BOOTPROTO=static  # 静态IP,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
  • 重启网络服务:sudo systemctl restart network

Debian/Ubuntu

传统版本使用/etc/network/interfaces文件,Ubuntu 18.04+推荐使用Netplan(YAML格式)。

编辑interfaces文件

sudo vim /etc/network/interfaces
```  根据接口名称调整):  
```ini
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 networkingsudo /etc/init.d/networking restart

Netplan配置(Ubuntu 18.04+)
编辑配置文件(路径可能为/etc/netplan/01-netcfg.yaml/etc/netplan/50-cloud-init.yaml):

network:
  version: 2
  ethernets:
    eth0:
      dhcp4: no  # 禁用动态IP
      addresses:
        - 192.168.1.100/24  # IP和子网掩码
      gateway4: 192.168.1.1  # 网关
      nameservers:
          addresses: [8.8.8.8, 114.114.114.114]  # DNS

应用配置:sudo netplan apply

linux如何修改本机ip

Arch Linux

使用systemd-networkdnetctl,通过systemd-networkd配置:

  • 创建配置文件:sudo vim /etc/systemd/network/eth0.network 如下:

    [Match]
    Name=eth0
    [Network]
    Address=192.168.1.100/24
    Gateway=192.168.1.1
    DNS=8.8.8.8 114.114.114.114
  • 启动并启用服务:sudo systemctl enable --now systemd-networkd

不同发行版配置对比

为方便查阅,以下表格总结主流发行版的永久配置关键信息:

发行版 配置文件路径 核心配置参数 重启命令
RedHat/CentOS /etc/sysconfig/network-scripts/ifcfg-eth0 BOOTPROTO=static, IPADDR, NETMASK, GATEWAY systemctl restart network
Debian/Ubuntu /etc/network/interfaces iface eth0 inet static, address, gateway systemctl restart networking
Ubuntu 18.04+ /etc/netplan/*.yaml dhcp4: no, addresses, gateway4 netplan apply
Arch Linux /etc/systemd/network/*.network Address, Gateway, DNS systemctl enable –now systemd-networkd

相关问答FAQs

Q1:修改IP后无法联网,如何排查?
A:首先检查IP、子网掩码、网关配置是否正确(确保IP与同一网段,网关为路由器地址);然后使用ping 8.8.8.8测试外网连通性,若不通则检查网关是否可达(ping 网关地址);最后确认DNS配置(cat /etc/resolv.conf查看),可临时修改为公共DNS(如8.8.8.8)测试。

Q2:如何查看当前IP配置是否生效?
A:使用以下命令查看:

  • ip addr show eth0:查看接口IP、子网掩码状态;
  • ip route show:查看路由表(确认默认网关是否正确);
  • cat /etc/resolv.conf:查看DNS服务器配置;
  • ping 域名(如ping www.baidu.com):测试DNS解析和网络连通性。

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

(0)
酷番叔酷番叔
上一篇 2小时前
下一篇 1小时前

相关推荐

  • 释放Linux cache的正确方法有哪些?操作时需注意什么?

    Linux系统中的Cache(缓存)是内核为了提升文件读写性能而设计的内存区域,主要分为Page Cache(页缓存,用于缓存文件数据)、dentries(目录项缓存,用于缓存文件目录结构)和inodes(索引节点缓存,用于缓存文件元数据),这些缓存能有效减少磁盘I/O操作,但当系统内存紧张或需要释放内存时,手……

    1天前
    400
  • Linux下C程序如何运行?

    环境准备:安装GCC编译器GCC(GNU Compiler Collection)是Linux下标准的C编译器,安装命令(根据发行版选择):Ubuntu/Debian:sudo apt update && sudo apt install build-essentialCentOS/RHEL:s……

    2025年7月30日
    2200
  • 为什么首次安装前必须更新软件源列表?

    通过包管理器安装(推荐)包管理器是Linux最安全高效的软件安装方式,自动处理依赖关系和更新,不同发行版的命令如下:Debian/Ubuntu系(APT)# 搜索软件(如搜索Firefox)apt search firefox# 安装软件sudo apt install firefox# 卸载软件sudo ap……

    2025年6月27日
    3300
  • Linux系统如何快速配置SMTP服务?

    安装Postfix更新系统包sudo apt update # Ubuntu/Debiansudo yum update # CentOS/RHEL安装Postfixsudo apt install postfix # Ubuntu/Debiansudo yum install postfix # CentOS……

    2025年7月29日
    2000
  • Linux如何查看系统版本?有哪些常用方法?

    在Linux系统中,了解当前系统版本信息是系统管理、软件安装、问题排查的基础操作,由于Linux发行版众多(如Ubuntu、CentOS、Debian、openSUSE等),且不同版本可能存在命令差异,掌握多种查看方法能应对不同场景,本文将详细介绍Linux查看系统版本的常用命令、适用场景及输出解析,帮助用户快……

    2025年8月25日
    2600

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信