为什么必须用固定网络地址?

在Linux系统中固定IP地址是服务器管理、网络配置的常见需求,尤其适用于避免DHCP动态分配导致的IP变化,确保服务稳定访问,以下是详细操作指南,涵盖主流发行版(Ubuntu/Debian/CentOS)的两种主流方法:

  • 稳定性:服务器、NAS等设备需永久地址供外部访问。
  • 端口转发:路由器需固定IP映射端口(如SSH、Web服务)。
  • 避免冲突:防止DHCP分配地址与关键设备冲突。

固定IP的两种方法

方法1:使用NetworkManager(推荐桌面/图形界面用户)

适用系统:Ubuntu, Fedora, CentOS(带GUI)

  1. 打开终端,执行以下命令查看网络连接名称:

    nmcli connection show

    记录目标连接名(如ens33Wired connection 1)。

  2. 修改连接配置(以ens33为例):

    sudo nmcli connection modify ens33 ipv4.method manual \
    ipv4.addresses 192.168.1.100/24 \
    ipv4.gateway 192.168.1.1 \
    ipv4.dns 8.8.8.8
    • 168.1.100/24:静态IP及子网掩码(/24=255.255.255.0)
    • 168.1.1:路由器网关地址
    • 8.8.8:DNS服务器(可替换为本地DNS如168.1.1
  3. 应用配置并重启网络

    sudo nmcli connection down ens33 && sudo nmcli connection up ens33

方法2:手动修改配置文件(服务器/无GUI环境)

▍ Ubuntu/Debian 系统(配置文件:/etc/netplan/*.yaml

  1. 编辑配置文件(示例为01-netcfg.yaml):
    sudo nano /etc/netplan/01-netcfg.yaml
  2. 写入配置(根据实际网卡名修改ens33):
    network:
      version: 2
      renderer: networkd
      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]
  3. 应用配置
    sudo netplan apply

▍ CentOS/RHEL 系统(配置文件:/etc/sysconfig/network-scripts/ifcfg-ens33

  1. 编辑网卡配置文件:
    sudo nano /etc/sysconfig/network-scripts/ifcfg-ens33
  2. 修改以下参数
    BOOTPROTO="static"       # 改为static
    IPADDR=192.168.1.100     # 静态IP
    NETMASK=255.255.255.0    # 子网掩码
    GATEWAY=192.168.1.1      # 网关
    DNS1=8.8.8.8             # DNS1
    DNS2=192.168.1.1         # DNS2(可选)
    ONBOOT="yes"             # 开机自启
  3. 重启网络服务
    sudo systemctl restart network

验证配置

  1. 检查IP地址

    ip addr show ens33

    输出应显示配置的静态IP(如168.1.100)。

  2. 测试网络连通性

    ping -c 4 google.com  # 测试DNS解析和外网
    ping -c 4 192.168.1.1 # 测试网关

故障排除

  • IP冲突:若无法联网,检查局域网内是否有其他设备占用相同IP。
  • 网关错误GATEWAY必须与路由器地址一致(通过ip route | grep default查看)。
  • DNS失效:替换为114.114.114或本地ISP提供的DNS。
  • 配置未生效
    • Ubuntu:sudo netplan --debug apply 查看错误日志。
    • CentOS:journalctl -xe 检查网络服务状态。

安全建议

  1. 避免IP暴露:对公网服务使用防火墙(如ufw)限制访问IP。
  2. 子网隔离:将固定IP设备置于独立VLAN,减少内网攻击面。
  3. 定期更新:及时修补系统漏洞(sudo apt update && sudo apt upgrade)。

引用说明
本文参考Linux官方网络管理文档(Netplan、NetworkManager)及Red Hat企业级网络配置指南,确保内容符合最佳实践,实际操作前请备份配置文件,不同硬件环境需调整网卡名称(通过ip link命令获取)。

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

(0)
酷番叔酷番叔
上一篇 2025年6月23日 15:44
下一篇 2025年6月23日 16:33

相关推荐

  • Linux系统中如何显示用户名和密码?密码是否可以直接获取并显示?

    在Linux系统中,用户名和密码的管理涉及安全性与权限控制,由于密码通常以加密形式存储,直接“显示密码”在正常操作中并不被允许(除非是用户主动输入或特定授权场景),本文将详细说明Linux中如何查看用户名、理解密码存储机制,以及在合法合规的前提下处理密码相关操作,Linux中用户名的显示方法用户名是Linux系……

    2025年9月19日
    17700
  • 如何启动SELinux?系统安全配置操作步骤详解

    SELinux(Security-Enhanced Linux)是Linux内核中的安全模块,通过强制访问控制(MAC)机制增强系统安全性,有效防止未授权访问和恶意操作,正确启动并配置SELinux对系统安全至关重要,以下是详细操作步骤和注意事项,启动SELinux的前提条件在启动SELinux前,需确保系统满……

    2025年8月27日
    17100
  • linux如何调用动态库

    Linux中,可以使用ldconfig命令配置动态库路径,通过-L和-l选项编译时链接动态库,

    2025年8月16日
    15100
  • 如何在Linux系统中搭建C语言开发环境并编写代码?

    Linux环境下进行C语言开发是许多开发者的首选,其强大的命令行工具链和开源生态为C语言提供了高效、灵活的编程环境,本文将详细介绍从环境搭建到代码编写、编译运行、调试及项目管理的完整流程,帮助读者快速上手Linux下的C语言开发,开发环境的准备是基础,Linux系统通常默认安装了GCC(GNU Compiler……

    2025年9月23日
    16100
  • 手机充电到100%真的伤电池吗

    在Linux系统中,hosts文件是一个用于本地域名解析的关键配置文件,它允许用户手动指定域名与IP地址的映射关系,绕过DNS服务器直接生效,以下是如何安全、高效配置hosts文件的完整指南:hosts文件的作用与重要性核心功能:当访问域名(如www.example.com)时,系统首先查询hosts文件,若存……

    2025年6月20日
    19200

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信