dhclient
是一個在 Linux 系統中用于與 DHCP 服務器交互的命令行工具
當你在 Ubuntu 系統上啟動或重啟網絡接口時,dhclient
會自動運行并與 DHCP 服務器進行通信。以下是 dhclient
與 DHCP 服務交互的基本過程:
當網絡接口啟動或重啟時,dhclient
會被觸發并開始運行。
dhclient
向本地網絡發送一個 DHCPDISCOVER 廣播消息,以尋找可用的 DHCP 服務器。
DHCP 服務器收到 DHCPDISCOVER 消息后,會從其地址池中選擇一個可用的 IP 地址,并將這個 IP 地址以及其他網絡配置信息(如子網掩碼、默認網關、DNS 服務器等)封裝在一個 DHCPOFFER 廣播消息中發送回客戶端。
當 dhclient
收到 DHCPOFFER 消息后,它會發送一個 DHCPREQUEST 消息給 DHCP 服務器,表示客戶端接受這個 IP 地址和其他網絡配置信息。
DHCP 服務器收到 DHCPREQUEST 消息后,會將這個 IP 地址分配給客戶端,并發送一個 DHCPACK 消息確認分配。
dhclient
收到 DHCPACK 消息后,會將 IP 地址和其他網絡配置信息寫入系統的網絡配置文件(如 /etc/network/interfaces
或 /etc/netplan/*.yaml
),并更新系統的路由表和 DNS 配置。
至此,dhclient
與 DHCP 服務器的交互完成,客戶端已經成功獲取了 IP 地址和其他網絡配置信息。
如果你需要手動運行 dhclient
來更新網絡配置,可以在終端中執行以下命令:
sudo dhclient -r # 釋放當前的 IP 地址
sudo dhclient # 請求新的 IP 地址
請注意,手動運行 dhclient
可能會導致 IP 地址沖突,因此請確保在執行此操作之前與網絡管理員進行溝通。