Dhcp

dhclient.conf - 附加到系統主機名

  • September 27, 2019

我在一堆 Raspberry Pi 上執行 Raspbian。它們每個都設置了唯一的主機名,/etc/hostname並且 dhcp 客戶端正確地向我的路由器註冊了該名稱。

我遇到的問題源於將這些 Pi 連接到同一個網路,然後通過乙太網WiFi 連接到同一個 DHCP 伺服器 - 當使用名稱來解決這些問題時,存在類似競爭的情況,這意味著網路的其餘部分Pis,不能確定地喜歡乙太網連接而不是 WiFi。

在根據它們連接的介面獲取租約時,我想讓 Pis 向網路 DHCP 伺服器報告不同的主機名。這似乎可以通過在/etc/dhcp/dhclient.conf.

interface "wlan0" {
 send host-name "MyHostname-1234-WiFi";
}

我要解決的問題是如何以程式方式定義該行。像這樣的東西:

interface "wlan0" {
 send host-name "<hostname>-WiFi";
}

查看文件dhclient.conf(5),它表明我可以使用該concat功能,dhcp-eval(5)但我沒有成功。我正在嘗試這個:

interface "wlan0" {
 send host-name concat(gethostname(), "-WiFi");
}

就像在相關option語句中一樣,您必須使用=符號顯式標記表達式:

 send host-name "static-value";
 send host-name = concat(gethostname(), "dynamic-value");

如果您以詳細模式 ( dhclient -cf myconfig.conf -v) 呼叫 dhclient,它會告訴您語法錯誤,否則它會默默地忽略。

引用自:https://serverfault.com/questions/985955