Dnsmasq

/config/config.boot 與 /etc/dnsmasq.d 中的 DNS/DHCP 配置

  • March 20, 2019

我有一個 Edgerouter 4,我試圖理解 DHCP 和 DNS 的配置區域,何時use-dnsmasq enable設置。

我看到可以進行配置的四個地方:

  1. 從命令行(set service dns forwarding ... 似乎是提供 DNS 參數的方式(但不是 DHCP?))
  2. 通過編輯(編輯:副本)/config/config.boot並載入它

這兩個似乎緊密聯繫在一起,命令行配置似乎被寫入/config/config.boot

  1. 通過配置/etc/dnsmasq.conf
  2. 通過將文件添加到/etc/dnsmasq.d

配置遵循dnsmasq配置文件,我/etc/dnsmasq.d/dnsmasq-dhcp-config.conf有為我創建的文件。

注意:我非常喜歡/etc/dnsmasq.conf像今天一樣將所有內容都註釋掉的方法,並將我所有的 DNS 和 DHCP cpnfiguration 文件保存在/etc/dnsmasq.d. 我可以接受從 GUI(在DNS頁面中)看不到此配置。

我的問題

  • 這些配置方法如何協同工作?

  • 是否可以只使用方法 3. 或 4.?

  • 如是:

    • 有缺點嗎?(= 不便之處,例如在升級期間需要備份文件、GUI 中缺乏可見性等)
    • 有不兼容的地方嗎?(= 可以通過 1.、2. 或 3./4. 專門配置某些東西?)

2)通常您永遠不會這樣做,因為需要重新啟動才能應用配置更改。set在部署許多具有類似配置的系統時,應該使用最終保存更改的命令,而不是在特定情況下,例如腳本配置生成。

  1. 不可行,因為任何重新配置​​ dnsmasq 的東西都會覆蓋更改。

  2. 可以工作,但無法在韌體升級後繼續存在,因此不建議這樣做。

set命令是首選。根據您要準確配置的內容,dns forwarding自定義配置可能就足夠了,即使它沒有進入 dnsmasq 配置的 DHCP 部分。

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