我已经安装了 dnsmasq 并禁用了 systemd-resolved。dnsmasq 将仅使用本地 hosts.dnsmasq 并且不会转发任何请求。
addn-hosts=/home/users/hosts.dnsmasq
resolv-file=
问题是我的 /etc/resolv.conf 被覆盖,名称服务器设置为 127.0.0.1,即 dnsmasq,我想将其设置为 8.8.8.8
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
# 127.0.0.53 is the systemd-resolved stub resolver.
# run "systemd-resolve --status" to see details about the actual nameservers.
nameserver 127.0.0.1
如何手动将名称服务器设置为 8.8.8.8?
将名称服务器配置为 /etc/resolvconf/resolv.conf.d/base 不起作用。
Ubuntu 22.04.2 LTS
编辑 1:更改 /etc/netplan/50-cloud-init.yaml 中的服务器不会产生任何影响。这是 OVH 的 VPS 中的默认设置。
nameservers:
addresses:
- 213.186.33.99
search: []
答案1
文件 /etc/default/dnsmasq 中有一个设置 DNSMASQ_EXCEPT
# If the resolvconf package is installed, dnsmasq will tell resolvconf
# to use dnsmasq under 127.0.0.1 as the system's default resolver.
# Uncommenting this line inhibits this behaviour.
#DNSMASQ_EXCEPT="lo"
DNSMASQ_EXCEPT="lo"
将从 /etc/resolv.conf 中删除 127.0.0.1 并且您可以手动添加nameserver 8.8.8.8
。
答案2
您告诉其中一个操作工具/etc/resolv.conf
添加它。如果您使用 wifi,请查看网络设置和选项卡 ipv4;当您禁用“自动”时,它有一个 DNS 选项。
还有网络计划中将会有一个例子,/etc/netplan
但是使用 google DNS 的通用版本将是:
network:
version: 2
renderer: networkd
ethernets:
ens3:
dhcp4: no
addresses:
- 192.168.121.1/24
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
8.8.4.4
作为第二个 DNS。