修改Ubuntu DHCP服務器設置的完整步驟
修改配置文件前,務必備份原始文件以避免配置錯誤導致服務中斷:
sudo cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.bak # 備份主配置文件
sudo cp /etc/default/isc-dhcp-server /etc/default/isc-dhcp-server.bak # 備份接口配置文件
若系統未安裝DHCP服務器,通過以下命令安裝:
sudo apt update
sudo apt install isc-dhcp-server -y
配置文件路徑為/etc/dhcp/dhcpd.conf
,使用文本編輯器(如nano
)打開:
sudo nano /etc/dhcp/dhcpd.conf
根據網絡需求調整以下關鍵參數:
option domain-name "example.com"; # 域名(可選)
option domain-name-servers 8.8.8.8, 8.8.4.4; # DNS服務器(替換為你的DNS)
default-lease-time 600; # 默認租約時間(秒,如10分鐘)
max-lease-time 7200; # 最大租約時間(秒,如2小時)
authoritative; # 聲明此服務器為權威DHCP(避免客戶端拒絕配置)
subnet 192.168.1.0 netmask 255.255.255.0 { # 子網地址及掩碼(需與本地網絡一致)
range 192.168.1.100 192.168.1.200; # 可分配的IP地址范圍(避免與靜態IP沖突)
option routers 192.168.1.1; # 默認網關(替換為你的網關IP)
option subnet-mask 255.255.255.0; # 子網掩碼(通常與子網定義一致)
option broadcast-address 192.168.1.255; # 廣播地址(自動計算,可省略)
}
host printer { # 主機名(自定義)
hardware ethernet 00:1a:2b:3c:4d:5e; # 設備MAC地址(需替換為實際值)
fixed-address 192.168.1.50; # 分配的固定IP
}
option ntp-servers 192.168.1.10; # NTP服務器地址(替換為實際值)
編輯/etc/default/isc-dhcp-server
文件,設置DHCP服務器監聽的網絡接口:
sudo nano /etc/default/isc-dhcp-server
找到INTERFACESv4
行,修改為你的網絡接口名稱(可通過ip a
命令查看,如eth0
、enp0s3
):
INTERFACESv4="eth0" # 若有多個接口,用空格分隔(如"eth0 eth1")
修改完成后,重啟服務以使更改生效:
sudo systemctl restart isc-dhcp-server
若需設置開機自啟(推薦):
sudo systemctl enable isc-dhcp-server
檢查服務是否正常運行:
sudo systemctl status isc-dhcp-server
若顯示active (running)
,則表示服務已啟動。
在客戶端設備(如另一臺電腦或手機)上,將網絡設置為“自動獲取IP地址”,然后執行以下命令驗證是否獲取到配置范圍內的IP:
ip addr show dev eth0 # Linux客戶端(替換為實際接口名)
ipconfig /all # Windows客戶端
若獲取到的IP在range
指定的范圍內,且網關、DNS符合配置,則說明修改成功。
sudo tail -f /var/log/syslog | grep dhcpd # 實時查看DHCP日志
sudo dhcpd -t # 測試配置文件語法(不會重啟服務)
ufw
防火墻,需允許DHCP流量(UDP 67/68端口):sudo ufw allow 67/udp
sudo ufw allow 68/udp
sudo ufw reload
通過以上步驟,你可完成Ubuntu DHCP服務器的設置修改。根據實際網絡環境調整參數(如子網地址、IP范圍、DNS服務器等),確保與現有網絡架構兼容。