我试图在这里遵循本教程:
https://www.itwonderlab.com/en/ansible-kubernetes-vagrant-tutorial/
使用 Debian 10 作为 vagrant 主机,并且由于 Debian 不再支持 Virtual Box,所以我使用 libvirt。
因此,我不得不将图像更改为generic/ubuntu2010
.
不幸的是,DNS 似乎在虚拟机内不起作用。
curl google.com
curl: (6) Could not resolve host: google.com
/etc/resolv.conf
看起来像这样:
nameserver 127.0.0.53
options edns0 trust-ad
一旦我将名称服务器行更改为知名名称服务器的 IP,它就可以正常工作。
所以应该像编辑一样简单/etc/resolv.conf
,但我也看到:
This file is managed by man:systemd-resolved(8). Do not edit.
因此,在查看文档后,看来我需要编辑:
/etc/systemd/resolved.conf
打开该文件后,我可以看到其中已经存在一些不匹配的名称服务器 ip /etc/resolv.conf
。
那么我到底如何/etc/resolv.conf
在/etc/systemd/resolved.conf
Ubuntu 20.10 上重新生成呢?
答案1
问题出在 DNSSEC。
添加这个:
- name: Fix DNS
lineinfile:
path: /etc/systemd/resolved.conf
regex: '^DNSSEC='
line: 'DNSSEC=no'
- name: Restart resolved
service:
name: systemd-resolved
state: restarted
解决roles/common/add_packages/tasks/main.yml
问题。
我不确定generic/ubuntu2010
对于 DNS 损坏的人来说有什么用处。