Linux

dhclient 附加來自多個 DHCP 伺服器的設置

  • January 17, 2011

我有一個伺服器,有兩個介面連接到兩個單獨的網路,兩者都使用 DHCP。當 dhclient 正在寫入/etc/resolv.conf時,我希望它附加不存在的設置。例如,如果我從一台 DHCP 伺服器接收:

nameserver 10.0.0.1
search one.mydomain.com

從另一個:

nameserver 10.1.1.254
search two.mydomain.com

然後 resolv.conf 應該如下所示:

search one.mydomain.com two.mydomain.com
nameserver 10.0.0.1
nameserver 10.1.1.254

目前,似乎最後一個 dhclient 覆蓋了那裡的所有內容。我知道我可以使用supercedeor預配置 dhclient.conf 中的設置append,但是我必須對這些值進行硬編碼。我已經搜尋了 dhclient 的手冊頁,但似乎 dhclient 更喜歡單獨工作(即不與任何其他 dhclient 一起工作)……或者我錯過了什麼?

看來,最合適的方法是為每個介面使用自定義 dhclient-script 並將 DNS 參數寫入單獨的文件(即 /etc/resolv.d/eth

$$ 01 $$) 然後呼叫將所有這些文件合併到全域 /etc/resolv/conf 中的腳本

據我所知,dhclient 不支持這一點,因為它不夠聰明,無法合併配置,而且大多數人不使用它。

您唯一的選擇是使用supercedeappend但是由於這並不能滿足您的要求,因此您幾乎處於無法解決的情況。

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