🐧 Linux DHCP Server 架設教學(從安裝到自動分配設定)
在企業或學校網路環境中,DHCP(Dynamic Host Configuration Protocol)伺服器 負責自動分配 IP、子網路遮罩、閘道與 DNS 等網路參數。 本文將以 isc-dhcp-server 為例,說明如何在 Linux 上安裝、設定與測試 DHCP 環境。
📘 一、環境準備
系統:Ubuntu 22.04 / Rocky Linux 9
服務:isc-dhcp-server 或 dhcp-server
網段:192.168.1.0/24
伺服器 IP:192.168.1.10
更新系統套件:
sudo apt update && sudo apt upgrade -y # Ubuntu / Debian
sudo dnf update -y # CentOS / Rocky Linux
⚙️ 二、安裝 DHCP Server 套件
Ubuntu / Debian:
sudo apt install isc-dhcp-server -y
CentOS / Rocky Linux:
sudo dnf install dhcp-server -y
主要設定檔:
/etc/dhcp/dhcpd.conf
🧩 三、設定 DHCP 配置檔
編輯設定檔並加入自訂網段:
sudo vi /etc/dhcp/dhcpd.conf
# 範例設定:192.168.1.0/24 網段
option domain-name "example.local";
option domain-name-servers 8.8.8.8, 8.8.4.4;
default-lease-time 600;
max-lease-time 7200;
authoritative;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option broadcast-address 192.168.1.255;
option domain-name-servers 8.8.8.8, 8.8.4.4;
}
若需要固定 IP 分配:
host printer1 {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.50;
}
🧠 四、設定介面與啟動服務
指定 DHCP 運作介面:
# Ubuntu
sudo vi /etc/default/isc-dhcp-server
INTERFACESv4="ens33"
# CentOS / Rocky
sudo vi /etc/sysconfig/dhcpd
DHCPDARGS=ens33
啟動並設為開機自動執行:
sudo systemctl enable isc-dhcp-server
sudo systemctl start isc-dhcp-server
sudo systemctl status isc-dhcp-server
若顯示 active (running) 即代表成功啟動。
🧰 五、防火牆設定與測試
# 開放 DHCP 埠(UDP 67/68)
sudo ufw allow 67/udp
sudo ufw allow 68/udp
sudo ufw reload
# 或 Firewalld(CentOS / Rocky)
sudo firewall-cmd --add-service=dhcp --permanent
sudo firewall-cmd --reload
在客戶端測試:
sudo dhclient -v eth0
若能取得 IP,表示 DHCP 分配成功。
🧭 行動清單
✅ 安裝並設定 isc-dhcp-server 套件 ✅ 設定 dhcpd.conf 網段與選項 ✅ 測試 IP 分配並確認網路連線正常 ✅ (選擇性)新增固定 IP 綁定設備
📘 結語
至此,你已成功在 Linux 上建立 DHCP Server 並完成自動 IP 分配設定。 DHCP 可與 DNS / PXE / TFTP 等服務整合,用於網路開機或自動化部署。 在中大型網路環境中,它是維持設備一致性與減少人工配置的關鍵工具。
🔗 延伸閱讀
— WWFandy・系統與網路筆記
沒有留言: