Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

CentOS 6/7 靜態 IP 配置全攻略:網卡、網關、DNS 一文搞定

編輯:Linux 教學

靜態 IP 是服務器上架、集群互通、服務發布的基石。本文以 CentOS 6/7 為例,系統講解網卡配置文件結構、網關/ DNS 設置、驗證方法,並對比 network 與 NetworkManager 兩套管理體系的差異。

一、核心配置文件

文件用途適用版本
/etc/sysconfig/network-scripts/ifcfg-ethX單網卡 IP/掩碼/啟動模式CentOS 6/7
/etc/sysconfig/network主機名、網關、IPv6 全局開關CentOS 6/7
/etc/resolv.confDNS 解析器配置全版本
/etc/hostname持久化主機名CentOS 7+

二、網卡配置詳解(ifcfg-eth0)

DEVICE="eth0"                    # 設備名,必須與文件名後綴一致
TYPE="Ethernet"                  # 接口類型
BOOTPROTO="static"               # static|dhcp|bootp
HWADDR="08:00:27:F8:E3:10"       # MAC 地址(可選,防止網卡名漂移)
IPADDR=192.168.1.88              # 靜態 IP
NETMASK=255.255.255.0            # 子網掩碼(等同 PREFIX=24)
NETWORK=192.168.1.0              # 網絡地址(可選,系統自動推導)
BROADCAST=192.168.1.255          # 廣播地址(可選)
IPV6INIT="no"                    # 禁用 IPv6
IPV6_AUTOCONF="no"
ONBOOT="yes"                     # 開機自動啟動
NM_CONTROLLED="no"               # 【關鍵】交由 network 服務管理,不受 NetworkManager 干擾

關鍵參數對照表

參數說明CIDR 等價
NETMASK=255.255.255.0傳統掩碼寫法PREFIX=24
NETMASK=255.255.255.192/26PREFIX=26

三、網關配置(/etc/sysconfig/network)

NETWORKING=yes
HOSTNAME=web01.example.com       # 需與 /etc/hosts 內容一致
GATEWAY=192.168.1.1              # 默認網關
GATEWAYDEV=eth0                  # 多網卡時指定出口設備(可選)

四、DNS 配置(/etc/resolv.conf)

nameserver 192.168.1.1           # 內網 DNS(通常為網關/AD)
nameserver 8.8.8.8               # Google 公共 DNS
nameserver 8.8.4.4               # 備用
search example.com               # 域名補全後綴(可選)
options timeout:2 attempts:1 rotate single-request-reopen  # 性能優化參數(可選)

CentOS 7 注意:若啟用 NetworkManager,resolv.conf 由其動態生成,手動修改會被覆蓋。建議靜態 IP 场景下執行 systemctl disable NetworkManager && systemctl stop NetworkManager,改用傳統 network 服務。

五、應用配置與驗證

# CentOS 6/7 通用
service network restart
# 或 CentOS 7
systemctl restart network

# 驗證 IP
ip addr show eth0
# 或
ifconfig eth0

# 驗證路由
ip route show
# 默認路由應指向 GATEWAY

# 驗證解析
ping -c 3 www.baidu.com
dig @8.8.8.8 www.baidu.com

# 驗證連通性
ping -c 3 192.168.1.1

六、多 IP/虛擬接口配置

同一物理網卡綁定多個 IP,創建 ifcfg-eth0:0、ifcfg-eth0:1 等別名文件:

# ifcfg-eth0:0
DEVICE="eth0:0"
TYPE="Ethernet"
BOOTPROTO="static"
IPADDR=192.168.1.89
NETMASK=255.255.255.0
ONBOOT="yes"
NM_CONTROLLED="no"

七、常見坑點

  1. NM_CONTROLLED="no" 缺失:NetworkManager 接管導致靜態 IP 不生效、resolv.conf 被覆蓋。
  2. HWADDR 與實際 MAC 不符:克隆 VM 後常見,導致網卡重命名為 eth1,需同步修改文件名與 DEVICE。
  3. /etc/hosts 缺少主機名映射:導致 sudo、hostname -f 卡頓、郵件發送失敗。
  4. 防火牆/安全組未放行:配置無誤但不通,檢查 iptables/firewalld 及雲廠商安全組。

八、CentOS 7 新工具:nmcli / nmtui

# 交互式 TUI(推薦新手)
nmtui

# 命令行批量配置
nmcli con add type ethernet con-name eth0 ifname eth0 ip4 192.168.1.88/24 gw4 192.168.1.1
nmcli con mod eth0 ipv4.dns "8.8.8.8 8.8.4.4"
nmcli con up eth0

nmcli 修改即時生效並持久化,適合自動化腳本與 Ansible 劇本。

總結

靜態 IP 配置核心三步:網卡文件定 IP/掩碼 → network 文件定網關 → resolv.conf 定 DNS。生產環境強烈建議關閉 NetworkManager,使用 network 服務或 nmcli 統一管理,避免「雙管齊下」導致配置衝突。

Copyright © Windows教程網 All Rights Reserved