与 12.04 相比,dnsmasq 与 12.10 的协作方式又发生了变化。我已在 Ubuntu 文档和 Google 中搜索了更多信息,但没有成功。
基本上,在 12.04 中,您可以在文件中看到传递给 dnsmasq 的上游 DNS 服务器列表/var/run/nm-dns-dnsmasq.conf
。12.10 中的此文件为空,根据我所做的所有阅读,它似乎由 dbus 管理。我只需要知道这些信息存储在哪里,因为它导致 VirtualBox 出现问题,无法正确传递 DHCP 信息。
我知道我可以使用网络管理器服务的开关来关闭这项服务,但我更愿意了解新系统如何运行,并在那里解决问题。
非常感谢任何关于其工作原理的指示。
答案1
NetworkManager 通过 dbus 与 dnsmasq 对话现在。这有一个优点:每次发生变化时,dnsmasq 不必重新启动。
最大的缺点是:你无法真正看到到底发生了什么。
/var/log/syslog
现在有一些条目可以描述发生的事情:
Jan 21 22:10:13 bogo dnsmasq[28993]: vorgelagerte Server von DBus gesetzt
Jan 21 22:10:13 bogo dnsmasq[28993]: Benutze Namensserver 192.168.3.3#53
但在我看来,这并不是一个令人满意的解决方案,尤其是当出现问题时。
答案2
Quantal 发行说明的网络部分中提到了其中一项变化。
https://wiki.ubuntu.com/QuantalQuetzal/ReleaseNotes/UbuntuDesktop
以前在 /var/run/nm-dns-dnsmasq.conf 中的信息不再存在于文件中,但您可以使用 nmcli 或 nm-tool 提取信息,如其他答案中所述,例如