CentOS 6.7 网络设置全指南:从临时调试到永久配置
CentOS 6.7 作为一款经典的企业级 Linux 发行版,至今仍被大量 legacy 系统、老设备及特定生产环境采用。网络配置是服务器运维的基础,直接关系到服务的可用性与稳定性。本文将从基础概念入手,详细讲解 CentOS 6.7 下的临时网络调试、永久配置、服务管理、DNS 设置及常见问题排查,同时结合最佳实践帮助用户高效完成网络配置。
目录#
- 网络基础概念回顾
- 命令行临时网络配置(调试专用)
- 永久网络配置(生产环境核心)
- 网络服务管理与冲突规避
- DNS 配置与优化
- 常见网络问题排查指南
- 配置最佳实践
- 参考资料
1. 网络基础概念回顾#
在开始配置前,先明确 CentOS 6.7 网络相关的核心概念,避免后续配置误区:
- 网络接口命名:CentOS 6.7 采用传统的接口命名规则,如
eth0、eth1(不同于 CentOS 7+ 的ens33等可预测命名)。 - IP 地址:服务器在网络中的唯一标识,分为静态(手动指定,适合生产)和动态(DHCP 自动分配,适合测试/办公环境)。
- 子网掩码:用于划分网络段,区分本地与远程网络(如
255.255.255.0对应 C 类网段)。 - 默认网关:本地网络与外部网络的中转节点,所有跨网段流量需通过网关转发。
- DNS 服务器:负责将域名解析为 IP 地址,是服务器访问互联网域名的核心依赖。
2. 命令行临时网络配置(调试专用)#
临时配置仅在当前会话生效,服务器重启或网络服务重启后会丢失,适合快速调试网络连通性。CentOS 6.7 默认使用 ifconfig、route 等命令完成临时配置。
2.1 配置静态 IP 与子网掩码#
通过 ifconfig 直接设置接口的 IP 地址、子网掩码并启用接口:
# 为 eth0 设置静态 IP 并启用
ifconfig eth0 192.168.1.100 netmask 255.255.255.0 up
# 查看当前接口配置(确认生效)
ifconfig eth0参数说明:
eth0:目标网络接口名称192.168.1.100:指定的静态 IP 地址netmask 255.255.255.0:子网掩码up:启用该接口(等价于ifup eth0)
2.2 配置默认网关#
通过 route 命令添加默认网关:
# 添加默认网关
route add default gw 192.168.1.1
# 查看路由表(确认网关生效)
route -n若需删除网关,执行:
route del default gw 192.168.1.12.3 启用/禁用网络接口#
# 禁用 eth0 接口
ifdown eth0
# 启用 eth0 接口
ifup eth03. 永久网络配置(生产环境核心)#
永久配置通过修改系统配置文件实现,重启服务器或网络服务后配置依然保留,是生产环境的标准配置方式。
3.1 配置文件路径#
CentOS 6.7 的网络接口配置文件存放在 /etc/sysconfig/network-scripts/ 目录下,每个接口对应一个 ifcfg-ethX 文件(如 ifcfg-eth0 对应 eth0 接口)。
3.2 配置文件参数解析#
以下为静态 IP 配置文件的核心参数,每个参数的作用需明确:
| 参数 | 取值示例 | 说明 |
|---|---|---|
TYPE | Ethernet | 网络类型,固定为 Ethernet |
BOOTPROTO | static/dhcp | IP 分配方式:static 为静态IP,dhcp 为动态获取 |
IPADDR | 192.168.1.100 | 静态 IP 地址(仅当 BOOTPROTO=static 时生效) |
NETMASK | 255.255.255.0 | 子网掩码(仅当 BOOTPROTO=static 时生效) |
GATEWAY | 192.168.1.1 | 默认网关地址 |
DNS1/DNS2 | 8.8.8.8/114.114.114.114 | 主/备 DNS 服务器 |
ONBOOT | yes/no | 开机是否自动启用该接口(生产环境建议设为 yes) |
NM_CONTROLLED | yes/no | 是否允许 NetworkManager 管理该接口(静态IP配置建议设为 no 避免冲突) |
HWADDR | 00:0C:29:3F:4D:1E | 网卡 MAC 地址,需与实际网卡一致 |
USERCTL | yes/no | 是否允许普通用户控制该接口(生产环境建议设为 no) |
PEERDNS | yes/no | 是否允许覆盖 /etc/resolv.conf 文件(设为 no 可保留手动修改的 DNS) |
3.3 静态 IP 配置示例#
编辑 ifcfg-eth0 文件:
vi /etc/sysconfig/network-scripts/ifcfg-eth0写入以下配置:
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME=eth0
UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 # 自动生成,无需手动修改
ONBOOT=yes
HWADDR=00:0C:29:3F:4D:1E # 替换为实际网卡MAC地址
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
DNS2=114.114.114.114
NM_CONTROLLED=no
PEERDNS=yes
USERCTL=no3.4 DHCP 自动获取 IP 配置示例#
若需通过 DHCP 自动分配 IP,修改 ifcfg-eth0 为:
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME=eth0
UUID=5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03
ONBOOT=yes
HWADDR=00:0C:29:3F:4D:1E
NM_CONTROLLED=yes
PEERDNS=yes
USERCTL=no3.5 配置生效#
修改配置文件后,需重启网络服务或重新加载接口使配置生效:
# 重启整个网络服务(影响所有接口)
service network restart
# 仅重新加载单个接口(推荐,不影响其他服务)
ifdown eth0 && ifup eth04. 网络服务管理与冲突规避#
CentOS 6.7 同时存在 network 服务与 NetworkManager 服务,二者可能因配置权限冲突导致网络异常,需合理管理:
4.1 服务状态查看与控制#
# 查看 network 服务状态
service network status
# 启动/停止/重启 network 服务
service network start
service network stop
service network restart
# 查看 NetworkManager 服务状态
service NetworkManager status
# 停止并禁用 NetworkManager(静态IP环境推荐)
service NetworkManager stop
chkconfig NetworkManager off4.2 冲突规避最佳实践#
- 静态 IP 环境:建议完全禁用
NetworkManager服务,避免其自动覆盖静态配置。 - DHCP 环境:可保留
NetworkManager服务,但需确保NM_CONTROLLED=yes与配置文件一致。 - 开机自启设置:确保
network服务开机自启:chkconfig network on
5. DNS 配置与优化#
DNS 配置负责域名解析,CentOS 6.7 提供两种配置方式:
5.1 通过接口配置文件设置 DNS#
如 3.3 节所示,直接在 ifcfg-eth0 中添加 DNS1、DNS2 参数,该方式配置的 DNS 会自动同步到 /etc/resolv.conf 文件,且重启后不会丢失(需确保 PEERDNS=yes)。
5.2 手动修改 /etc/resolv.conf#
直接编辑 /etc/resolv.conf 文件可快速设置 DNS,但需注意若 NM_CONTROLLED=yes 或 PEERDNS=yes,重启网络服务后该文件会被覆盖:
vi /etc/resolv.conf写入以下内容:
nameserver 8.8.8.8 # 谷歌公共DNS
nameserver 114.114.114.114 # 国内公共DNS若需保留手动修改的 DNS,需在接口配置文件中设置:
PEERDNS=no5.3 本地域名解析:/etc/hosts#
/etc/hosts 文件的解析优先级高于 DNS,适合配置内部服务的域名映射:
vi /etc/hosts添加映射关系:
192.168.1.100 web.example.com # 将域名指向内部Web服务器6. 常见网络问题排查指南#
遇到网络异常时,可按以下步骤逐步排查:
6.1 接口状态与配置排查#
- 查看所有接口状态(包括未启用的接口):
ifconfig -a - 检查接口配置文件是否存在语法错误:重点核对
ONBOOT、BOOTPROTO、HWADDR参数是否正确。
6.2 连通性排查#
- 本地回路测试:确认网络协议栈正常:
ping -c 4 127.0.0.1 - 同网段主机连通性:确认子网掩码配置正确:
ping -c 4 192.168.1.50 # 同网段另一主机IP - 网关连通性:确认路由配置正确:
ping -c 4 192.168.1.1 # 默认网关IP - 公网IP连通性:确认外部网络可达:
ping -c 4 8.8.8.8 # 谷歌DNS IP - 域名解析排查:确认DNS配置正确:
若域名无法解析,可通过ping -c 4 www.baidu.comnslookup或dig工具诊断DNS服务:nslookup www.baidu.com
6.3 防火墙与路由排查#
- 临时关闭防火墙测试是否为防火墙阻挡:
service iptables stop - 查看路由表是否存在默认网关:
route -n
7. 配置最佳实践#
- 生产环境优先使用静态IP:避免DHCP地址变化导致服务中断,同时记录IP地址与网络拓扑。
- 配置前备份原始文件:修改配置文件前先备份,避免配置错误无法回滚:
cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0.bak - 单一接口单独生效:修改单个接口配置时,优先使用
ifdown eth0 && ifup eth0而非重启整个网络服务,减少对其他接口的影响。 - 配置多DNS服务器:设置主备DNS提高域名解析的可靠性,如同时配置谷歌DNS与国内公共DNS。
- 禁用不必要的服务:静态IP环境下禁用
NetworkManager服务,避免配置冲突。 - 记录配置变更:对生产环境的网络配置变更进行文档记录,便于后续维护与故障排查。
8. 参考资料#
- CentOS 6 官方文档:Network Configuration
ifconfig命令手册:man ifconfigroute命令手册:man route- Linux 网络配置指南:TLDP Networking Guide