# 安裝
rpm -ivh dhcp-3.0.5-18.el5.rpm
# 查看配置檔位置
rpm -qc dhcp
# 複製樣本
cp /usr/share/doc/dhcp-*/dhcpd.conf.sample /etc/dhcpd.conf
/etc/dhcpd.conf 詳細解析# 全域設定
ddns-update-style interim;
ignore client-updates;
option domain-name-servers 222.88.88.88, 222.85.85.85; # 超級作用域 DNS
# === 作用域 1:192.168.60.0/24 ===
subnet 192.168.60.0 netmask 255.255.255.0 {
option routers 192.168.60.254; # 閘道
option subnet-mask 255.255.255.0; # 子網掩碼
option nis-domain "domain.org";
option domain-name "test"; # 作用域名稱
filename "pxelinux.0"; # PXE 啟動檔
option time-offset -18000; # 東八區
range dynamic-bootp 192.168.60.1 192.168.60.10; # 動態分配範圍
default-lease-time 21600; # 6 小時
max-lease-time 43200; # 12 小時
# 固定 IP 範例(註解中)
# host AAA { hardware ethernet 00:0C:29:68:2F:9D; fixed-address 192.168.60.2; }
}
# === 作用域 2:192.168.70.0/24 ===
subnet 192.168.70.0 netmask 255.255.255.0 {
option routers 192.168.70.254;
option subnet-mask 255.255.255.0;
option nis-domain "domain.org";
option domain-name "test1";
filename "pxelinux.0";
option time-offset -18000;
range dynamic-bootp 192.168.70.1 192.168.70.10;
default-lease-time 21600;
max-lease-time 43200;
}
# === 空作用域:匹配伺服器自身 IP 所在網段 ===
subnet 192.168.10.0 netmask 255.255.255.0 {
# 無 range,僅為讓 dhcpd 在此介面監聽
}
將多個作用域邏輯分組:
shared-network "SuperNet" {
option domain-name-servers 222.88.88.88, 222.85.85.85;
subnet 192.168.60.0 netmask 255.255.255.0 { ... }
subnet 192.168.70.0 netmask 255.255.255.0 { ... }
}
在第 7 行後加入 shared-network AAA {,檔案末尾加 } 即可。
編輯 /etc/sysconfig/dhcpd:
DHCPDARGS="eth0 eth1" # 指定監聽介面
service dhcpd start
# 客戶端設定為自動獲取 IP 即可驗證
| 參數 | 說明 |
|---|---|
| ddns-update-style | DDNS 更新模式(interim/none/ad-hoc) |
| option domain-name-servers | 推送給客戶端的 DNS 伺服器 |
| subnet ... netmask | 定義一個作用域(網段) |
| option routers | 預設閘道 |
| range dynamic-bootp | 動態分配 IP 範圍(支援 BOOTP) |
| default-lease-time / max-lease-time | 預設/最大租約秒數 |
| host ... { hardware ethernet ...; fixed-address ...; } | MAC 綁定固定 IP |
| filename | PXE/無盤啟動檔案名 |
| shared-network | 超級作用域(邏輯分組多個 subnet) |