如何配置 dhcpcd 以与默认 dns 一起工作?

如何配置 dhcpcd 以与默认 dns 一起工作?

我有一个连接到 wifi 的嵌入式 Linux 设备。它配置了 DHCP,并配置为使用特定的 DNS 服务器。当前配置有效。

但是,我想删除 DNS 配置并让 DHCP 为我提供自动 DNS(据我所知,这可以与 IP 响应一起完成)。当我从中删除名称服务器时,/etc/resolv.conf我可以 ping 通,但名称解析不起作用。

nslookup: write to '127.0.0.1': Connection refused

我可能缺少一些配置。有人能帮忙吗?我正在使用wpa_supplicantdhcpcd我们没有运行网络管理器/绑定等)。我需要额外的守护进程吗?或者这只是一个配置问题?

答案1

DNS 服务器地址必须写入/etc/resolv.conf文件。程序希望在此处找到它 – dhcpcd 没有其他标准位置来存储 DHCP 提供的服务器地址;所有 DHCP 客户端都需要更新 resolv.conf 文件。

(如果您的 /etc 是只读的,则该文件可以是指向 /run 或 /tmp 中某处的符号链接。)

dhcpcd 将使用dhcpcd-hooks/20-resolv.conf标准 dhcpcd 安装中附带的钩子脚本自动更新 /etc/resolv.conf。请确保此脚本和通用dhcpcd-run-hooks脚本存在于您的嵌入式系统中。

(在我的系统上,这些脚本位于/usr/lib/dhcpcd,但路径可能根据编译选项而变化。)

相关内容