CentOS7物理机网络如何配置?

在CentOS 7物理机上配置网络需编辑/etc/sysconfig/network-scripts/ifcfg-网卡名文件,设置IP地址、子网掩码、网关和DNS服务器,最后重启network服务使配置生效。

CentOS 7 物理机网络配置详细指南

前言:理解物理机网络配置的核心
在 CentOS 7 物理服务器上进行网络配置是系统管理的基础任务,与虚拟机不同,物理机直接操作硬件网卡(如 eno1, ens33),配置的可靠性直接影响服务器对外服务能力,CentOS 7 默认使用 NetworkManager 服务结合传统的 ifcfg 脚本来管理网络,提供了灵活且强大的配置方式。

CentOS7物理机网络如何配置?

核心配置方法:nmcli 与配置文件
*方法 1:使用 nmcli 命令行工具 (推荐)**
nmcli 是 NetworkManager 的命令行客户端,功能强大且能动态生效配置。

  1. 查看现有网络连接与设备:

    nmcli connection show
    nmcli device status

    记录下你要配置的连接名(如 ens33)或设备名。

  2. 配置静态 IP 地址 (示例配置):

    sudo nmcli connection modify "ens33" 
    ipv4.addresses 192.168.1.100/24 
    ipv4.gateway 192.168.1.1 
    ipv4.dns "8.8.8.8, 8.8.4.4" 
    ipv4.method manual 
    connection.autoconnect yes
    • "ens33": 替换为你的实际连接名或设备名。
    • 168.1.100/24: 静态 IP 地址和子网掩码 (CIDR 格式)。
    • 168.1.1: 默认网关。
    • "8.8.8.8, 8.8.4.4": DNS 服务器地址,用逗号分隔。
    • ipv4.method manual: 设置为静态 IP。
    • connection.autoconnect yes: 确保开机自动连接。
  3. 配置 DHCP 获取 IP 地址:

    sudo nmcli connection modify "ens33" 
    ipv4.method auto 
    connection.autoconnect yes
  4. 应用并激活配置:

    sudo nmcli connection down "ens33" && sudo nmcli connection up "ens33"
    # 或者使用 reload 命令(CentOS 7.9 及更新版本更推荐)
    sudo nmcli connection reload
    sudo nmcli connection up "ens33"

*方法 2:编辑网络配置文件 (传统方法)**
配置文件位于 /etc/sysconfig/network-scripts/,命名规则为 ifcfg-<连接名> (如 ifcfg-ens33)。

  1. 备份原始配置 (重要!):

    sudo cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens33.bak
  2. 编辑配置文件:

    sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33
  3. 静态 IP 配置示例:

    CentOS7物理机网络如何配置?

    TYPE=Ethernet
    BOOTPROTO=none # 静态设置为 none, DHCP 设置为 dhcp
    DEFROUTE=yes
    NAME=ens33
    DEVICE=ens33
    ONBOOT=yes # 确保开机启动
    IPADDR=192.168.1.100
    PREFIX=24 # 或者使用 NETMASK=255.255.255.0
    GATEWAY=192.168.1.1
    DNS1=8.8.8.8
    DNS2=8.8.4.4
  4. DHCP 配置示例:

    TYPE=Ethernet
    BOOTPROTO=dhcp
    DEFROUTE=yes
    NAME=ens33
    DEVICE=ens33
    ONBOOT=yes
  5. 重启网络服务 (或使用 nmcli):

    sudo systemctl restart network

    注意:在远程连接中直接重启 network 服务可能导致连接中断,使用 nmcli connection up/down 更安全。

关键辅助配置

  • 设置主机名:

    sudo hostnamectl set-hostname your-server-name # 瞬时生效且永久
    # 检查
    hostnamectl status
  • 配置 DNS 解析 (/etc/resolv.conf):
    通常由 NetworkManager 根据连接配置自动管理,如需手动设置(不推荐,可能被覆盖),可编辑此文件,但优先使用 nmcliifcfg 文件中的 DNS1/DNS2 选项。

  • 管理 NetworkManager 服务:

    sudo systemctl enable NetworkManager # 开机自启
    sudo systemctl start NetworkManager  # 立即启动
    sudo systemctl status NetworkManager # 查看状态

验证网络配置

  • 检查 IP 地址与路由:

    ip addr show ens33     # 查看指定网卡 IP
    ip route show          # 查看路由表
  • 测试网络连通性:

    CentOS7物理机网络如何配置?

    ping -c 4 192.168.1.1    # 测试网关
    ping -c 4 8.8.8.8        # 测试外部 IP
    ping -c 4 www.baidu.com  # 测试 DNS 解析与外网
  • 检查 DNS 解析:

    nslookup www.baidu.com
    dig www.baidu.com

防火墙与 SELinux 注意事项

  • 防火墙 (firewalld): 确保所需端口开放(如 SSH 的 22 端口)。
    sudo firewall-cmd --permanent --add-service=ssh # 开放 SSH
    sudo firewall-cmd --reload
    sudo firewall-cmd --list-all # 查看规则
  • SELinux: 在绝大多数标准网络配置场景下,SELinux 默认策略不会阻止网络功能,如遇特殊问题,可先尝试 setenforce 0 (临时禁用) 测试,但生产环境应调查具体原因并调整策略而非直接禁用。

故障排查要点

  1. 物理层: 网线是否插好?网卡指示灯是否正常?交换机端口状态?
  2. 驱动: lspci | grep -i ethernet 查看网卡型号,dmesg | grep -i eth 检查驱动加载信息。
  3. 服务状态: systemctl status NetworkManager, systemctl status network
  4. 配置错误: 仔细检查 IP、子网掩码、网关、DNS 是否输入正确,配置文件语法无误(尤其 ifcfg 文件)。
  5. 冲突: 是否同时激活了 networkNetworkManager 服务?CentOS 7 建议主要使用 NetworkManager,确保 ifcfg 文件中的 ONBOOT=yes
  6. 日志: 查看日志获取线索:journalctl -xe, /var/log/messages

常见问题解答 (FAQ)

  • Q:修改配置后网络没反应?
    A:确保执行了 nmcli connection up <连接名>sudo systemctl restart network (谨慎使用) 使配置生效,检查 ip addr 看新 IP 是否分配。
  • Q:ping 通网关但 ping 不通外网?
    A:检查网关配置是否正确 (ip route),检查防火墙是否阻止出站 (firewall-cmd --list-all),检查 DNS 解析 (nslookup)。
  • Q:如何彻底禁用 NetworkManager?
    A:一般不推荐,但如需使用纯 network 服务:

    sudo systemctl stop NetworkManager
    sudo systemctl disable NetworkManager
    sudo systemctl enable network
    sudo systemctl start network
  • Q:多网卡如何配置?
    A:为每个物理网卡(ens33, ens34 等)创建独立的连接配置文件(ifcfg-ens33, ifcfg-ens34)或使用 nmcli 分别配置,明确各网卡的用途(如业务、管理、存储网络)并设置正确的 IP 和路由。

重要安全提示:

  • 在远程配置物理机网络时,务必确保有物理控制台访问权限(如 iDRAC, iLO, KVM over IP),或在操作前设置好备用连接(如多网卡配置一个管理口),避免配置错误导致失联。
  • 修改关键配置文件前必须备份

掌握 CentOS 7 物理机的网络配置 (nmcliifcfg 文件) 是 Linux 系统管理的核心技能,理解 NetworkManager 的工作原理,熟练使用验证命令 (ip, ping, nslookup),并重视防火墙和物理访问权限,能确保服务器网络的稳定可靠,配置后务必进行多维度测试验证。

引用说明:

  • 本文所述方法基于 CentOS 7 及兼容发行版(如 RHEL 7)的标准网络管理机制。
  • 核心工具与概念参考 Red Hat Enterprise Linux 7 官方文档:NetworkManager (nmcli), ifcfg 文件格式, firewalld
  • 故障排查思路结合了 Linux 网络管理通用实践与常见问题解决方案。

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

(0)
酷盾叔的头像酷盾叔
上一篇 2025年6月17日 16:24
下一篇 2025年6月17日 16:30

相关推荐

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN