Azure DNS 转发器不适用于公共资源

Posted

技术标签:

【中文标题】Azure DNS 转发器不适用于公共资源【英文标题】:Azure DNS Forwarder not working with public resource 【发布时间】:2021-04-12 01:57:30 【问题描述】:

我正在尝试解析 Azure 中数据库的私有和公共 IP 地址。我通过 *** 连接做到这一点。我目前在 Azure 中有 2 个 DNS 转发器 vm,它们在我的 *** 配置中被指定为 DNS 服务器。 DNS转发配置如下:

acl goodclients 
    10.0.0.0/8;
    localhost;
    localnets;
;

options 
        directory "/var/cache/bind";

        recursion yes;
        allow-query  goodclients; ;

        forwarders 
            168.63.129.16;
        ;
        forward only;

        dnssec-enable yes;
        dnssec-validation yes;

        auth-nxdomain no;    # conform to RFC1035
        listen-on  any; ;
;

我在 Azure 中有两台数据库服务器,一台有一个私有终结点,在私有 DNS 区域中有记录,另一个没有。当我现在尝试使用 nslookup 解析 ips 时,我得到以下结果:

具有私有链接的那个会按预期返回其私有 ip 没有私链的找不到:** server can't find db1.database.windows.net: NXDOMAIN

这是否意味着我不能将私有 DNS 区域与同一域上的非私有资源结合使用?我期待 Azure DNS 解决这两个问题(超过 168.63.129.16)

更新 我能够缩小一点。似乎当您添加私有端点并且不在您的私有 DNS 区域中注册它时,它不再起作用。我希望仍然能够解析公共 IP,因为 DNS 那时对私有端点一无所知,而且我没有更改数据库服务器上的防火墙设置? 在此特定场景中,我使用 Azure 数据工厂上的新托管 VNet 选项来私下访问数据库。我暂时也希望能用公网IP。

【问题讨论】:

【参考方案1】:

在this doc 中找到以下内容:

已经使用给定类型的私有 DNS 区域的私有网络,如果它们没有任何私有终结点连接,则只能连接到公共资源,否则需要在私有 DNS 区域上进行相应的 DNS 配置才能完成DNS 解析顺序。

这证实了我在问题更新中发现和解释的内容。

【讨论】:

以上是关于Azure DNS 转发器不适用于公共资源的主要内容,如果未能解决你的问题,请参考以下文章

Azure 管道不适用于生产

EasyCVR在公共资源交易中心监控视频汇聚项目中的场景应用方案

webpack分项目打包,用于多个项目的公共资源相同时

检索 Azure VM 的公共 IP 地址的更简单方法

Azure 队列触发器不适用于 Java

Azure 专用 DNS 区域解析