我有一个 Edgerouter 4,我正在尝试理解 DHCP 和 DNS 的配置区域以及use-dnsmasq enable
设置时间。
我看到有四个地方可以进行配置:
从命令行(
set service dns forwarding ...
似乎是这样提供 DNS 参数(但不提供 DHCP?)通过编辑(编辑:副本)
/config/config.boot
并加载
这两者似乎紧密相连,命令行配置似乎被写入/config/config.boot
通过配置
/etc/dnsmasq.conf
通过添加文件到
/etc/dnsmasq.d
配置如下dnsmasq
配置文件/etc/dnsmasq.d/dnsmasq-dhcp-config.conf
,我拥有为我创建的文件。
注意:我非常倾向于使用/etc/dnsmasq.conf
现在的方法,将所有内容注释掉,并将所有 DNS 和 DHCP 配置保存在文件中。我可以接受此配置在 GUI(在页面中)/etc/dnsmasq.d
中不可见。DNS
我的问题
- 这些配置方法如何协同工作?
- 是否可以只使用方法 3. 或 4.?
- 如果是:
- 有什么缺点吗?(=不便之处,例如升级期间需要备份文件、GUI 缺乏可见性等)
- 是否存在不兼容性?(= 某些东西是否可以通过 1.、2. 或 3./4. 进行专门配置?)
答案1
2) 一般情况下您不会这样做,因为需要重新启动才能应用配置更改。set
除了在部署大量具有类似配置的系统时集体编写配置生成脚本等特定情况外,应该使用最终保存更改的命令。
3) 不可行,因为重新配置 dnsmasq 的任何操作都会覆盖更改。
4) 可以工作,但是无法在固件升级后继续使用,因此不建议使用。
命令set
是首选。根据您要配置的具体内容,dns forwarding
即使自定义配置不进入 dnsmasq 配置的 DHCP 部分,也可能足够了。