我正在使用 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 服务器的行为。