Linux命令行如何修改IP地址?临时与永久配置方法详解?

在Linux系统中,通过命令行修改IP地址是系统管理和运维中的基础操作,无论是临时调整网络配置还是永久设置静态IP,都需要掌握正确的方法,本文将详细介绍不同Linux发行版下临时与永久修改IP的步骤、参数说明及注意事项,帮助读者顺利完成网络配置。

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

临时修改IP适用于临时测试或网络调试场景,修改后配置不会写入配置文件,系统重启或网络服务重启后会恢复原样,操作前需确认当前网络状态及网卡名称,常用命令为ip a(显示网卡及IP信息)或ifconfig(旧版系统)。

查看当前网络信息

执行ip a命令,会列出所有网卡及其IP配置

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:1a:2b:3c:4d:5e brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::21a:2bff:fe3c:4d5e/64 scope link
       valid_lft forever preferred_lft forever

其中eth0为网卡名称,168.1.100/24为当前IP地址(/24表示子网掩码255.255.255.0)。

修改IP地址

使用ip addr add命令添加新的IP地址,格式为:
ip addr add <IP地址>/<子网掩码> dev <网卡名>
eth0的IP修改为168.1.200,子网掩码保持/24
ip addr add 192.168.1.200/24 dev eth0

若需删除临时IP,使用:
ip addr del <IP地址>/<子网掩码> dev <网卡名>

修改网关

网关是局域网访问外网的出口,使用ip route add命令设置:
ip route add default via <网关IP> dev <网卡名>
网关为168.1.1
ip route add default via 192.168.1.1 dev eth0

删除网关命令:
ip route del default via <网关IP> dev <网卡名>

修改DNS

DNS用于域名解析,临时修改可直接编辑/etc/resolv.conf文件:
echo "nameserver 8.8.8.8" >> /etc/resolv.conf # 添加Google DNS
echo "nameserver 114.114.114.114" >> /etc/resolv.conf # 添加国内DNS

若需覆盖原有DNS,使用>重定向:
echo "nameserver 8.8.8.8" > /etc/resolv.conf

验证配置

修改完成后,通过以下命令验证:

  • ip a:确认IP地址已更新
  • ip route:确认网关已添加
  • ping 8.8.8.8:测试外网连通性

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

永久修改需编辑系统的网络配置文件,不同Linux发行版的配置文件路径和格式不同,主要分为CentOS/RHEL(使用ifcfg文件)和Ubuntu/Debian(使用netplan或NetworkManager)。

(一)CentOS/RHEL系统(ifcfg配置文件)

CentOS 7及以后版本使用NetworkManager管理网络,配置文件位于/etc/sysconfig/network-scripts/下,文件名格式为ifcfg-<网卡名>(如ifcfg-eth0)。

编辑配置文件

使用vinano打开配置文件,
vi /etc/sysconfig/network-scripts/ifcfg-eth0

关键参数说明:
| 参数 | 含义及示例 |
|—————|———————————————|
| BOOTPROTO | 启动协议,static(静态IP)或dhcp(动态) |
| IPADDR | IP地址,如168.1.200 |
| NETMASK | 子网掩码,如255.255.0 |
| GATEWAY | 网关地址,如168.1.1 |
| DNS1/DNS2 | DNS服务器,如8.8.8114.114.114 |
| ONBOOT | 是否开机启动网络,yes(启用)或no(禁用) |

示例配置:

TYPE=Ethernet
BOOTPROTO=static
IPADDR=192.168.1.200
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=114.114.114.114
ONBOOT=yes

重启网络服务

保存配置文件后,执行以下命令重启网络:
systemctl restart network

若提示“Failed to restart network”,可检查配置文件语法是否正确(如参数名拼写错误、缺少引号等)。

验证配置

执行ip a查看IP是否永久生效,或使用ping测试网络连通性。

(二)Ubuntu/Debian系统(netplan配置)

Ubuntu 18.04及以后版本默认使用netplan,配置文件位于/etc/netplan/下,文件名格式为*.yaml(如01-network-manager-all.yaml)。

编辑配置文件

打开netplan配置文件,
vi /etc/netplan/01-network-manager-all.yaml

配置格式为YAML,需注意缩进(使用空格,非Tab),示例配置:

network:
  version: 2
  ethernets:
    eth0:  # 网卡名
      dhcp4: no  # 禁用DHCP,使用静态IP
      addresses:
        - 192.168.1.200/24  # IP地址及子网掩码(/24表示255.255.255.0)
      gateway4: 192.168.1.1  # 网关
      nameservers:
        addresses: [8.8.8.8, 114.114.114.114]  # DNS服务器

应用配置

保存文件后,执行以下命令使配置生效:
netplan apply

若提示错误,可使用netplan --debug apply查看详细日志排查问题。

验证配置

通过ip a确认IP已修改,或使用nslookup www.baidu.com测试DNS解析是否正常。

不同发行版配置对比

为方便理解,以下表格总结CentOS/RHEL与Ubuntu/Debian永久修改IP的核心差异:

项目 CentOS/RHEL Ubuntu/Debian
配置文件路径 /etc/sysconfig/network-scripts/ifcfg-<网卡名> /etc/netplan/*.yaml
配置格式 键值对(如IPADDR=192.168.1.200 YAML格式(缩进敏感)
重启命令 systemctl restart network netplan apply
关键参数 BOOTPROTO、IPADDR、NETMASK、GATEWAY dhcp4、addresses、gateway4、nameservers

注意事项

  1. 网卡名确认:不同系统或虚拟环境下网卡名可能不同(如eth0ens33enp0s3),务必通过ip a确认,避免配置错误。
  2. 备份配置文件:修改前建议备份原配置文件(如cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0.bak),防止配置错误导致无法联网。
  3. 参数匹配:IP地址、子网掩码、网关需在同一网段,例如IP168.1.200、子网掩码255.255.0、网关168.1.1,否则无法通信。
  4. DNS优先级:若配置了多个DNS,系统会按顺序尝试解析,建议配置一个公共DNS(如8.8.8.8)和一个国内DNS(如114.114.114.114)。

相关问答FAQs

临时修改和永久修改有什么区别?

解答:临时修改通过ip addrip route等命令直接修改网络配置,不涉及配置文件,重启系统或网络服务后会恢复原状,适用于临时测试或网络故障排查;永久修改通过编辑系统配置文件(如CentOS的ifcfg文件、Ubuntu的netplan文件)实现,配置会写入磁盘,重启后仍然生效,适合长期使用的固定IP场景。

修改IP后无法上网怎么办?

解答:可按以下步骤排查:

  1. 检查IP配置:确认IP、子网掩码、网关是否正确(ip a查看IP,ip route查看网关),确保在同一网段(如IP168.1.200、网关168.1.1、子网掩码255.255.0)。
  2. 检查DNS:执行nslookup www.baidu.com测试域名解析,若无法解析,检查/etc/resolv.conf中的DNS配置是否正确,或临时添加公共DNS(如echo "nameserver 8.8.8.8" > /etc/resolv.conf)。
  3. 检查网卡状态:确认网卡是否启用(ip a查看网卡状态,UP表示启用),若未启用,使用ip link set <网卡名> up激活。
  4. 检查配置文件语法:永久修改后若无法上网,检查配置文件语法(如CentOS ifcfg文件中的参数名是否拼写错误,Ubuntu netplan文件缩进是否正确)。
  5. 重启网络服务:临时修改后可尝试重启网络(CentOS用systemctl restart network,Ubuntu用netplan apply)。

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

(0)
酷番叔酷番叔
上一篇 2025年8月25日 18:55
下一篇 2025年8月25日 19:08

相关推荐

  • 安全情报促销是什么?包含哪些关键信息?

    在当前数字化浪潮席卷全球的背景下,网络安全已成为企业生存与发展的生命线,随着网络攻击手段日益复杂化、产业化,企业对安全情报的需求从“被动防御”转向“主动预警”,而如何将专业的安全情报转化为客户可感知的价值,成为安全厂商突破市场瓶颈的关键,“安全情报促销”正是这一趋势下的创新实践——它不再局限于传统的价格战或功能……

    2025年11月7日
    13400
  • 安全应急报告应如何系统梳理应急风险并提出有效应对措施?

    安全应急报告是组织或机构在突发事件发生后,系统记录事件经过、应急处置情况、原因分析及整改措施的关键文书,其核心价值在于通过客观、全面的信息梳理,为事故调查、责任认定、风险防控及管理优化提供依据,是安全管理闭环中的重要环节,一份规范的安全应急报告不仅能反映组织应对突发事件的能力,更能为同类事件的预防提供经验借鉴……

    2025年10月29日
    13900
  • 安全事故伤亡数据背后有何深层原因?

    安全事故伤亡数据是衡量一个地区、行业乃至国家安全生产水平的核心指标,它不仅是对过往事故的量化记录,更是揭示风险规律、指导安全预防的“导航仪”,从企业车间的违规操作到城市道路的交通事故,从矿山的坍塌到化工企业的爆炸,每一组数据背后都是鲜活的生命和沉重的教训,准确、全面地掌握这些数据,是制定科学安全策略、减少悲剧重……

    2025年10月31日
    14000
  • 国内业务中台服务模板,有何独特优势?

    支持核心能力复用与快速组装,降低研发成本,提升业务响应速度,助力敏捷创新。

    2026年2月24日
    7100
  • linux的日志怎么查看命令

    Linux中,可以使用cat、less、more等命令查看日志文件

    2025年8月16日
    16800

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信