我在努力让网络计划起作用。(我还以为我还想要resolv.conf --这确实修复了DNS,但在重新启动时会重新编写。)一切似乎都是正确的,但我不能平。
$ sudo netplan --debug apply
** (generate:14256): DEBUG: 00:38:22.887: Processing input file /etc/netplan/50-cloud-init.yaml..
** (generate:14256): DEBUG: 00:38:22.888: starting new processing pass
** (generate:14256): DEBUG: 00:38:22.888: We have some netdefs, pass them through a final round of validation
** (generate:14256): DEBUG: 00:38:22.888: ens160: setting default backend to 1
** (generate:14256): DEBUG: 00:38:22.888: Configuration is valid
** (generate:14256): DEBUG: 00:38:22.888: Generating output files..
** (generate:14256): DEBUG: 00:38:22.888: NetworkManager: definition ens160 is not for us (backend 1)
DEBUG:netplan generated networkd configuration changed, restarting networkd
DEBUG:no netplan generated NM configuration exists
DEBUG:ens160 not found in {}
DEBUG:Merged config:
network:
bonds: {}
bridges: {}
ethernets:
ens160:
critical: true
dhcp4: true
dhcp4-overrides:
use-dns: false
dhcp6: true
dhcp6-overrides:
use-dns: false
ipv6-privacy: true
nameservers:
addresses:
- 10.10.11.200
- 1.1.1.1
search:
- home
vlans: {}
wifis: {}
DEBUG:Skipping non-physical interface: lo
DEBUG:device ens160 operstate is up, not changing
DEBUG:Skipping non-physical interface: docker0
DEBUG:Skipping non-physical interface: hassio
DEBUG:Skipping non-physical interface: vethecdde1c
DEBUG:{}
DEBUG:netplan triggering .link rules for lo
DEBUG:netplan triggering .link rules for ens160
DEBUG:netplan triggering .link rules for docker0
DEBUG:netplan triggering .link rules for hassio
DEBUG:netplan triggering .link rules for vethecdde1c
$ ping google.com
ping: google.com: Temporary failure in name resolution根据要求编辑。
我以为我使用的是网络计划,因为它是安装的。
/etc/netplan/50-cloud-init.yaml我没有创建这个文件,它就在那里。
network:
ethernets:
ens160:
critical: true
dhcp4: true
dhcp4-overrides:
use-dns: false
dhcp6: true
dhcp6-overrides:
use-dns: false
ipv6-privacy: true
nameservers:
search: [home]
addresses: [10.10.11.200, 1.1.1.1]
version: 2当我尝试这两个命令时,都会出现错误。
$ sudo systemd-resolve --status
Failed to get global data: Unit dbus-org.freedesktop.resolve1.service not found.
$ sudo resolvectl --status
sudo: resolvectl: command not found发布于 2022-10-28 12:28:51
你想要的是DnsmasqNetplan只允许配置回退DNS,而不允许配置域DNS。
sudo systemctl disable systemd-resolvedsudo systemctl stop systemd-resolvedsudo ls -lh /etc/resolv.confsudo rm /etc/resolv.confsudo echo "nameserver 8.8.8.8" > /etc/resolv.confsudo apt updatesudo apt install dnsmasq具有dnsmasq.d/lxd的
dnsmasq最初启动时,您可能会得到此错误:
dnsmasq:无法访问/etc/dnsmasq.d/lxd:没有这样的文件或目录
要解决这个问题,只需删除符号链接¯_(ツ)_/
sudo rm /etc/dnsmasq.d/lxd
并重新启动:
service dnsmasq restart service dnsmasq status编辑/etc/dnsmasq.conf。
搜索并取消对此选项的注释:
添加域DNS服务器,例如:
server=/mycompany.com.pl/192.168.0.123
server=/some.vlan/10.234.0.123增加通用服务器,例如:
server=1.1.1.1
server=8.8.4.4完成后重新启动:
service dnsmasq restart
service dnsmasq status请注意,状态将显示实际使用的DNS服务器(using nameserver ...)。
sudo echo "nameserver 127.0.0.1" > /etc/resolv.conf- Update `/etc/netplan/` yaml file too.dig (或ping)进行测试。;; ANSWER SECTION:)dig app01.some.vlandig server.mycompany.com.plsystemctl enable dnsmasqhttps://askubuntu.com/questions/1364660
复制相似问题