Linux
dhclient 附加來自多個 DHCP 伺服器的設置
我有一個伺服器,有兩個介面連接到兩個單獨的網路,兩者都使用 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 覆蓋了那裡的所有內容。我知道我可以使用
supercede
or預配置 dhclient.conf 中的設置append
,但是我必須對這些值進行硬編碼。我已經搜尋了 dhclient 的手冊頁,但似乎 dhclient 更喜歡單獨工作(即不與任何其他 dhclient 一起工作)……或者我錯過了什麼?
看來,最合適的方法是為每個介面使用自定義 dhclient-script 並將 DNS 參數寫入單獨的文件(即 /etc/resolv.d/eth
$$ 01 $$) 然後呼叫將所有這些文件合併到全域 /etc/resolv/conf 中的腳本
據我所知,dhclient 不支持這一點,因為它不夠聰明,無法合併配置,而且大多數人不使用它。
您唯一的選擇是使用
supercede
,append
但是由於這並不能滿足您的要求,因此您幾乎處於無法解決的情況。