在 NetworkManager 中配置连接共享启动的 dnsmasq 实例

bla*_*erg 10 network-manager networking pxe tftp dnsmasq

我有一台运行 Ubuntu 12.04 的笔记本电脑,它使用 NetworkManager 通过 eth0 接口与另一台机器共享其 wifi 连接。这似乎是由 dnsmasq 完成的。

现在我需要在另一台机器上设置 PXE/TFTP 启动,所以我想配置通过 NetworkManager 产生的 dnsmasq 实例为 PXE/TFTP 添加几行。这是怎么做的?它似乎忽略了 /etc/dnsmasq.conf。

以前的答案似乎表明配置被硬编码到 NetworkManager 中。现在还是这样吗?如果是这样,是否有一种简单的方法可以实现我在这里要做的事情?我想我可以在 NetworkManager 中禁用网络共享并手动设置它,但如果可能的话,我宁愿将这一切都集中在一个地方。

编辑:确实,似乎 dnsmasq 配置仍然在 NetworkManager 中硬编码。请参阅此处的来源。在我看来,在这里简单地指定一个备用的 dnsmasq.conf 文件会是一个更好的解决方案,但我确信有些问题我没有考虑过。

jdt*_*ood 8

Dnsmasq 不“共享连接”。NetworkManager 控制的 dnsmasq 的作用是路由 DNS 流量。

您无法在 Precise 中配置 NetworkManager 控制的 dnsmasq 进程。在 Quantal 中,您可以通过 /etc/NetworkManager/dnsmasq.d/ 中的文件对其进行配置。参见 dnsmasq(8)。

另一种可能性是使用独立的 dnsmasq 服务器,即使在 Precise 中也是完全可配置的。要在 Precise 中与 NM-dnsmasq 一起运行独立的 dnsmasq,您需要为独立的 dnsmasq 提供“except-interface=lo”选项。这在 Quantal 中不是必需的。