排查Debian DHCP故障可以按照以下步驟進行:
首先,確保DHCP服務器正在運行。
sudo systemctl status isc-dhcp-server
如果服務未運行,啟動它:
sudo systemctl start isc-dhcp-server
DHCP服務器的配置文件通常位于 /etc/dhcp/dhcpd.conf。檢查該文件是否有語法錯誤。
sudo nano /etc/dhcp/dhcpd.conf
確保配置文件中的所有選項和子網聲明都是正確的。
DHCP服務器使用租約文件來跟蹤已分配的IP地址。檢查租約文件是否存在并且沒有損壞。
sudo ls -l /var/lib/dhcp/dhcpd.leases
如果文件不存在或損壞,可以嘗試刪除它并重啟DHCP服務:
sudo rm /var/lib/dhcp/dhcpd.leases
sudo systemctl restart isc-dhcp-server
確保DHCP服務器綁定的網絡接口是正確的,并且該接口處于活動狀態。
ip addr show
確保防火墻允許DHCP流量通過。DHCP使用UDP端口67(服務器)和68(客戶端)。
sudo ufw status
如果使用的是其他防火墻工具(如iptables),請相應地檢查規則。
查看DHCP服務器的日志文件以獲取更多信息。日志文件通常位于 /var/log/syslog 或 /var/log/messages。
sudo tail -f /var/log/syslog | grep dhcpd
在客戶端機器上,嘗試釋放并重新獲取IP地址。
sudo dhclient -r
sudo dhclient
確保DHCP服務器配置了正確的DNS服務器地址。
sudo nano /etc/dhcp/dhcpd.conf
在配置文件中添加或檢查以下行:
option domain-name-servers 8.8.8.8, 8.8.4.4;
確保DHCP服務器配置的子網掩碼和網關是正確的。
sudo nano /etc/dhcp/dhcpd.conf
在配置文件中檢查以下行:
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.100;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8, 8.8.4.4;
}
在完成所有檢查和修改后,重啟DHCP服務以應用更改。
sudo systemctl restart isc-dhcp-server
通過以上步驟,您應該能夠排查并解決大多數Debian DHCP故障。如果問題仍然存在,請考慮查看更詳細的日志信息或尋求社區幫助。