如何永久修改Linux IP地址?

临时修改IP(立即生效,重启后失效)

使用 ip 命令(推荐)

   # 查看当前网卡名称(如 ens33、eth0)
   ip addr show
   # 修改IP和子网掩码
   sudo ip addr add 192.168.1.100/24 dev ens33
   # 删除旧IP(可选)
   sudo ip addr del 192.168.1.200/24 dev ens33
   # 设置默认网关
   sudo ip route add default via 192.168.1.1

使用 ifconfig(旧版工具,部分系统需安装)

   sudo ifconfig ens33 192.168.1.100 netmask 255.255.255.0
   sudo route add default gw 192.168.1.1

永久修改IP(需重启网络服务)

不同发行版的配置文件路径不同,修改后需重启网络服务生效。

Ubuntu/Debian(使用 netplan

  • 编辑YAML配置文件:
    sudo nano /etc/netplan/00-installer-config.yaml  # 文件名可能不同
  • 示例:
    network:
      ethernets:
        ens33:
          addresses: [192.168.1.100/24]
          gateway4: 192.168.1.1
          nameservers:
            addresses: [8.8.8.8, 1.1.1.1]
      version: 2
  • 应用配置:
    sudo netplan apply

CentOS/RHEL 7+(使用 nmcli 或配置文件)

方法1:nmcli 命令行工具

   sudo nmcli con mod "ens33" ipv4.addresses 192.168.1.100/24
   sudo nmcli con mod "ens33" ipv4.gateway 192.168.1.1
   sudo nmcli con mod "ens33" ipv4.dns "8.8.8.8"
   sudo nmcli con up "ens33"  # 立即生效

方法2:编辑配置文件

   sudo nano /etc/sysconfig/network-scripts/ifcfg-ens33

修改以下参数:

   BOOTPROTO=static        # 从DHCP改为静态
   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 NetworkManager

Arch Linux/Manjaro(使用 systemd-networkd

  • 创建配置文件:

    sudo nano /etc/systemd/network/ens33.network
    ```示例:
    ```ini
    [Match]
    Name=ens33
    [Network]
    Address=192.168.1.100/24
    Gateway=192.168.1.1
    DNS=8.8.8.8
  • 重启服务:

    sudo systemctl restart systemd-networkd

关键注意事项

  1. 网卡名称确认
    使用 ip linkls /sys/class/net 查看正确网卡名,避免配置错误。
  2. DNS配置
    永久生效需在配置文件中指定DNS(如 nameserversDNS1)。
  3. 防火墙影响
    修改IP后检查防火墙规则(如 iptables/firewalld),确保新IP未被拦截。
  4. 多网卡场景
    若系统有多个网卡,需为每个网卡单独配置,避免网关冲突。
  5. 服务重启命令
    • Ubuntu: sudo systemctl restart systemd-networkd
    • CentOS: sudo systemctl restart NetworkManager
    • 传统SysVinit: sudo service networking restart

验证配置

ip addr show ens33          # 检查IP是否生效
ping 8.8.8.8                # 测试网络连通性
nslookup google.com         # 验证DNS解析
route -n                    # 查看网关配置

总结建议

  • 临时调试:用 ipifconfig 快速修改。
  • 永久配置:优先使用发行版官方工具(如 netplan/nmcli),避免手动编辑出错。
  • 备份配置:修改前备份文件(如 cp ifcfg-ens33 ifcfg-ens33.bak),防止配置丢失。
  • 兼容性:旧系统(如CentOS 6)使用 /etc/init.d/network restart 重启服务。

引用说明参考Linux官方文档(kernel.org)及主流发行版手册(Ubuntu、CentOS、Arch Wiki),确保方法经过实践验证,配置示例基于常见场景,实际参数请根据网络环境调整。

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

(0)
酷番叔酷番叔
上一篇 2025年6月28日 13:28
下一篇 2025年6月28日 13:42

相关推荐

  • Linux系统如何查看硬件信息?

    在Linux系统中,查看硬件信息是系统管理、故障排查、硬件升级等场景的常见需求,Linux提供了多种命令和工具,帮助用户获取CPU、内存、存储设备、外设等硬件的详细信息,本文将详细介绍这些命令的使用方法及输出含义,并结合示例说明实际应用,CPU信息查看CPU作为系统的核心组件,其信息包括型号、核心数、线程数、架……

    2025年9月29日
    6700
  • Linux数据备份,你的安全防线够强吗?

    常用网络备份工具及操作步骤Rsync + SSH(增量备份首选)原理:仅同步变化的文件,节省带宽和时间,示例命令:rsync -avz -e "ssh -p 22" /本地目录/ 用户名@远程IP:/备份目录/-a:归档模式(保留权限、时间戳)-v:显示详细过程-z:压缩传输-e:指定SSH……

    2025年7月27日
    8700
  • Linux系统如何正确挂载exfat格式分区?

    Linux系统默认可能不支持exfat文件系统,因为exfat有专利限制,早期Linux内核未集成其开源驱动,尽管后期专利到期后内核已支持,但多数发行版仍需手动安装工具包才能实现挂载,exfat是微软开发的文件系统,广泛用于U盘、SD卡等移动存储设备,因其支持大容量文件和分区,且兼容Windows和macOS……

    2025年8月25日
    9200
  • Linux如何启动PHP服务?

    在Linux系统中,启动PHP的方式取决于具体的应用场景,例如命令行脚本执行、Web服务器集成(如Apache、Nginx)或独立服务(如PHP-FPM),以下是不同场景下的详细启动方法和注意事项,帮助您根据需求选择合适的启动方式,环境准备:安装PHP及相关依赖在启动PHP前,需确保系统中已安装PHP环境,不同……

    2025年10月2日
    7100
  • 磁盘空间不足怎么办?

    Linux 分区与挂载点详解:从基础到实战为什么需要分区和挂载点?在 Linux 系统中,分区是将物理硬盘划分为逻辑存储单元的过程,而挂载点则是将分区连接到文件系统目录的桥梁,将 /dev/sda1 分区挂载到 /home 目录,意味着所有存储在家目录的文件实际保存在该分区合理的分区方案能提升系统安全性(如隔离……

    2025年7月28日
    8800

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信