KVM DNS 使用主机名访问客户机(Ubuntu 14.04)

KVM DNS 使用主机名访问客户机(Ubuntu 14.04)

我有一台在运行 KVM/QEMU 的 Ubuntu 14.04 主机上运行 ubuntu 14.04 的客户机。

一切正常,除了一件事。鉴于我的客户机的主机名是virtual-machine-1,我希望能够从主机上找到它。

特别是,如果我host virtual-machine-1在主机上使用,我希望它返回客户机的 IP 地址。

文档KVM/网络状态:

如果在主机上,您将 192.168.122.1(libvirt 中主机的默认 IP)添加为 /etc/resolv.conf 中的第一个名称服务器 [...] blabla 它应该可以工作]

这确实有效。但resolv.conf文件经常被覆盖,额外添加的行会丢失。

这就引出了我的问题:反映这一变化的适当方式是什么?

以下是我尝试过但无济于事的方法:

  • 将其添加到/etc/resolvconf/resolv.conf.d/base
  • 将 dns-nameserver 添加到我的/etc/network/interfaces文件中

似乎名称服务器 192.168.122.1 需要位于任何其他名称服务器(包括 127.0.1.1)之前。文档指出这是正常的,dnsmasq 会正确处理它。我只是不知道如何以持久的方式配置它。

答案1

resolvconf/etc/resolv.conf使用来自的文件生成/etc/resolvconf/resolvconf.d/,通常包含一个head、一个base,也可能是一个tail。从手册页

   The dynamically generated resolver  configuration  file  always  starts
   with  the  contents of /etc/resolvconf/resolv.conf.d/head and ends with
   the contents of /etc/resolvconf/resolv.conf.d/tail.  Between  head  and
   tail  the  libc  script inserts dynamic nameserver information compiled
   from, first, information provided for  configured  interfaces;  second,
   static  information  from /etc/resolvconf/resolv.conf.d/base.

您可能已经注意到,生成的文件/etc/resolv.conf有一个标题警告,内容是生成的,不应手动编辑文件。此标题存储在中/etc/resolvconf/resolvconf.d/head,因此不要对中的警告感到困惑head。中的文件/etc/resolvconf/resolvconf.d不是生成的,如果需要,可以手动编辑。因此,如果任何条目必须出现在的顶部resolv.conf,请将它们添加到中head。如果条目必须出现在末尾(例如,search始终使用最后一个条目),请将它们添加到中tail

相关内容