Linux设置IP地址如何永久生效?

通用原则

  1. 临时 vs 永久配置
    • ip addr addifconfig 命令:临时生效(重启失效)。
    • 修改配置文件或使用工具:永久保存
  2. 操作前备份
    sudo cp /etc/network/interfaces /etc/network/interfaces.bak  # Debian/Ubuntu
    sudo cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0.bak  # CentOS/RHEL

不同发行版的保存方法

Debian/Ubuntu(使用 netplaninterfaces

  • 方法1:netplan(Ubuntu 18.04+)
    编辑YAML配置文件(如 /etc/netplan/01-netcfg.yaml):

    network:
      version: 2
      ethernets:
        ens33:  # 网卡名
          dhcp4: no
          addresses: [192.168.1.100/24]
          gateway4: 192.168.1.1
          nameservers:
            addresses: [8.8.8.8, 1.1.1.1]

    应用配置:

    sudo netplan apply
  • 方法2:interfaces(旧版)
    编辑 /etc/network/interfaces

    auto ens33
    iface ens33 inet static
      address 192.168.1.100
      netmask 255.255.255.0
      gateway 192.168.1.1
      dns-nameservers 8.8.8.8

    重启网络服务:

    sudo systemctl restart networking

CentOS/RHEL(7+)

  • 步骤:
    编辑网卡配置文件(如 /etc/sysconfig/network-scripts/ifcfg-ens33):

    TYPE=Ethernet
    BOOTPROTO=static  # 静态IP
    DEVICE=ens33
    ONBOOT=yes
    IPADDR=192.168.1.100
    NETMASK=255.255.255.0
    GATEWAY=192.168.1.1
    DNS1=8.8.8.8

    重启网络服务:

    sudo systemctl restart NetworkManager
    # 或旧版
    sudo service network restart

Arch/Manjaro(使用 systemd-networkd

  • 创建配置文件 /etc/systemd/network/20-wired.network

    [Match]
    Name=eth0
    [Network]
    Address=192.168.1.100/24
    Gateway=192.168.1.1
    DNS=8.8.8.8

    启用服务:

    sudo systemctl enable --now systemd-networkd

使用网络管理工具

  • nmcli(通用)
    1. 修改连接配置:
      sudo nmcli con mod "Wired Connection" ipv4.addresses 192.168.1.100/24 \
      ipv4.gateway 192.168.1.1 ipv4.dns "8.8.8.8" ipv4.method manual
    2. 保存并生效:
      sudo nmcli con up "Wired Connection"

注意事项

  1. 网卡名称确认
    使用 ip linkls /sys/class/net 查看正确网卡名。
  2. DNS配置
    若未生效,需额外编辑 /etc/resolv.conf(但避免手动修改,优先在配置文件中指定)。
  3. 防火墙
    确保防火墙未拦截(如 sudo ufw allow 80/tcp)。
  4. 验证配置
    ip addr show      # 检查IP
    ping 8.8.8.8      # 测试网络
    nslookup google.com  # 测试DNS

故障排查

  • 网络服务失败
    • 检查配置文件语法(如YAML缩进、分号缺失)。
    • 使用 journalctl -xe 查看日志。
  • IP冲突
    arp-scan -l 扫描局域网内重复IP。

重要提示:操作前务必备份配置文件!生产环境建议在非高峰时段操作,避免断网风险。


通过以上步骤,IP配置将永久保存至系统重启后,根据发行版选择对应方法,并验证网络连通性,对于云服务器或虚拟机,部分配置可能受平台管理工具影响(如Cloud-init),需参考服务商文档调整。

引用说明参考Linux官方文档(netplan.io、RHEL Networking Guide)及主流发行版实践指南,确保方法可靠。

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

(0)
酷番叔酷番叔
上一篇 2025年6月28日 05:55
下一篇 2025年6月28日 06:38

相关推荐

  • 如何刻录光盘安装linux

    刻录软件,如 Nero,将 Linux 镜像文件载入,选择刻录到光盘,设置

    2025年8月18日
    12900
  • Linux如何导入cer证书?

    在Linux系统中导入.cer证书(通常指X.509格式的证书)是确保安全通信(如HTTPS、SSL/TLS连接)或应用程序信任特定证书颁发机构(CA)的关键操作,根据使用场景(系统级信任、用户级信任或应用程序级配置),导入方法有所不同,以下是详细操作步骤和注意事项,系统级证书导入(影响整个系统)系统级导入后……

    2025年8月23日
    14300
  • Linux系统下如何通过命令重启防火墙服务?

    Linux防火墙是系统安全的第一道防线,用于控制进出网络的数据流,保护系统免受未授权访问,在实际运维中,当防火墙规则配置修改、服务异常或策略需要即时生效时,重启防火墙是常见操作,但不同Linux发行版使用的防火墙工具不同,重启方法也存在差异,本文将详细介绍主流防火墙的重启步骤、注意事项及常见问题解决方案,主流L……

    2025年9月23日
    11000
  • Linux如何高效截图录屏?

    原生截图工具(无需安装)全局快捷键(适用大多数桌面环境)PrtSc:捕获整个屏幕,图片自动保存至~/Pictures/Alt + PrtSc:仅捕获当前活动窗口Shift + PrtSc:自定义区域截图(光标变为十字,拖选区域)注:GNOME、KDE Plasma、Xfce等主流环境均支持终端工具scrot……

    2025年7月9日
    13300
  • Linux代码如何添加库文件?

    在Linux开发中,库文件(Library)是代码复用的核心组件,分为静态库(.a)和动态库(.so),通过编译和链接阶段将库中的函数、变量等符号集成到程序中,正确添加库文件需理解库的类型、编译选项及运行时依赖,以下是具体操作流程和注意事项,库文件类型与基本概念静态库(.a)在链接时会将目标代码完整复制到可执行……

    2025年9月28日
    12400

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信