如何使用网络管理器解析 DNS?

如何使用网络管理器解析 DNS?

我正在使用 Network Manager( nmcli) 建立与基于 Linux 的嵌入式设备的网络连接。但客户端应用程序在连接到 aws 后端时遇到问题。在 中/etc/NetworkManager/conf.d设置dns=dnsmasq了 并且/etc/resolv.conf包含

# Generated by NetworkManager
nameserver 127.0.0.1

它是否正确?

但是 aws 端点 dns 具有动态 IP,我认为这会导致解析 dns 的问题。但是,我可以成功 ping 到 aws 端点,因此我很困惑这是否真的是 dns 查找问题或我的应用程序的错误。我应该添加任何条目吗resolv.conf?因为相同的应用程序在其他设备上运行没有问题。

nslookup example.amazonaws.com

节目

Server:         127.0.0.1
Address:        127.0.0.1:53

Non-authoritative answer:
Name:   example.amazonaws.com
Address: x.xxx.133.168
Name:   example.amazonaws.com
Address: x.xxx.141.141
Name:   example.amazonaws.com
Address: xx.xxx.236.119
Name:   example.amazonaws.com
Address: x.xxx.216.149
Name:   example.amazonaws.com
Address: xx.xx.120.62

但是应用程序在解析 DNS 时超时,并且没有报告进一步的错误消息。

有人能帮我调试这个问题吗?

附言:如果这里缺少任何信息,请告诉我

答案1

您实际上还没有解释这里的问题是什么。

使用 NM 和 DNSMasq 的 DNS 设置就很好。

这里 DNSMasq 充当缓存 DNS 代理,但假设动态 DNS 上的 TTL 值设置得足够低,它应该可以正常工作。它可能会返回一个旧的 IP 地址,直到 TTL 到期,但这是任何缓存 DNS 服务器的行为。

相关内容