首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何配置AWS EC2实例以有选择地绕过所有区域中的默认DNS解析器?

如何配置AWS EC2实例以有选择地绕过所有区域中的默认DNS解析器?
EN

Server Fault用户
提问于 2022-12-02 19:57:22
回答 1查看 137关注 0票数 0

我有一个AWS EC2实例网络。它们中的大多数都使用默认的VPC的DNS解析器来防止外接和解析内部域(使用自定义TLD)。一切都很好。

然而,有一个(Ubuntu)实例需要使用通用的公共解析器才能到达整个Internet (例如8.8.8.8)

我设法通过用/etc/systemd/ work替换/etc/systemd/work来完成这项工作--east-1

代码语言:javascript
复制
[Resolve]
DNS=8.8.8.8 208.67.222

并添加一个/etc/systemd/ adding /adding

代码语言:javascript
复制
[Resolve]
Domains=MYTLD
DNS=10.6.0.2

在重新启动systemd解析之后,实例可以很好地解决所有域。但是当我把这个完全相同的配置应用到我们东部2的一个几乎相同的网络时,公共DNS就不起作用了。

我在StackExchange上发现的一项建议是,将符号链接/etc/presv.conf转到/run/systemd/ found /surv.conf。这使得公共DNS开始解析,但是内部TLD停止了。

如何使DNS在任何区域持续解决?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2022-12-05 21:12:01

我找到了解决办法。

DNS Resolver被设置为默认块(很明显。这是这项工作的重点。)但是响应被设置为NODATA。这就创建了一个竞赛条件:systemd使用链接-本地多播名称解析来获得DNS结果。这意味着它同时查询AWS内部服务器和公共服务器之一。LLMNR返回它获得的第一个成功结果或最后一个失败(如果所有结果都失败)。

从技术上讲,来自DNS Resolver的NODATA结果是成功的,因此如果该结果首先到达,则返回该结果。将操作更改为NXDOMAIN --这是systemd解决方案的失败结果--解决了问题。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1117166

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档