如何使用虚拟 DNS 查找虚拟机?

如何使用虚拟 DNS 查找虚拟机?

我动态重启了多个 qemu VM。每个 VM 都在 NAT 虚拟网络中使用 DHCP,并且具有唯一的主机名。从任何 VM 中我都可以看到 resolv.conf 使用 192.168.122.1 作为名称服务器。

我想使用主机名访问虚拟机,而不是在每个虚拟机中设置静态 IP 配置。

我的虚拟网络是 192.168.122.*,我可以在我的主机中列出接口:

$ ip addr
...
4: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether fe:54:00:a4:49:cd brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
5: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 52:54:00:40:7f:76 brd ff:ff:ff:ff:ff:ff
...

将名称服务器 192.168.122.1 添加到 /etc/resolv.conf 不起作用。我做错了什么?

答案1

在开始时将名称服务器 192.168.122.1 添加到 /etc/resolv.conf 可以解决问题,但面临另一个问题:每次重新启动主机时,NetworkManager 都会重写 resolv.conf 文件。

相关内容