【问题标题】:Access Azure Private Endpoint from on-premise从本地访问 Azure 专用终结点
【发布时间】:2021-09-05 19:39:36
【问题描述】:

上下文

我在 Azure 中有一个 hub-spoke network architecture,并且中心 vnet 具有与本地的站点到站点 VPN 连接。

我有一个想要私下访问的存储帐户。因此,我在分支 vnet 中创建了一个专用终结点,并将集线器 vnet 连接到 privatelink.blob.core.windows.net 专用 DNS 区域。

为了从本地解析存储帐户专用链接,我在集线器 vnet 中添加了一个 Azure 防火墙作为 DNS 代理,privatelink.core.windows.net 的所有流量都发送到此防火墙。

此设置汇总here

问题

当我执行nslookup [xxx].blob.core.windows.net 时,我第一次获得了存储帐户专用 IP。但是,随后,我获得了存储帐户公共 IP。

问题

这怎么可能?

我的猜测

第一次尝试

  • 客户端向本地 DNS 服务器发送 [xxx].blob.core.windows.net 请求
  • 本地 DNS 服务器将请求转发到中心防火墙
  • 中心防火墙将请求转发到 Azure DNS
  • Azure DNS 响应 [xxx].blob.core.windows.net[xxx].privatelink.blob.core.windows.net 的 CNAME,而后者又是 blob.[yyy].store.core.windows.net 的 CNAME 并解析为专用 IP

后续尝试

  • 客户端向本地 DNS 服务器发送 [xxx].blob.core.windows.net 请求
  • 本地 DNS 服务器在其缓存中看到 [xxx].blob.core.windows.netblob.[yyy].store.core.windows.net 的 CNAME,并尝试解析该名称
  • 本地 DNS 服务器解析公共 IP

【问题讨论】:

    标签: azure networking dns azure-virtual-network azure-dns


    【解决方案1】:

    为存储帐户创建专用终结点时,并不意味着无法从 Internet 访问该存储帐户。这仅意味着您可以从 VNet 和 Internet 访问存储帐户。你可以从下面的截图中理解:

    因此,如果您只希望只能从中心 VNet 访问存储帐户,则需要将 Allow access from 更改为 Selected networks,然后将所选网络在中心 VNet 中。

    【讨论】:

    • 感谢您的回复。在我的情况下,只允许从选定的网络进行访问,并且下面没有选择虚拟网络,因为我不想通过其公共终结点与存储帐户通信。但是,我有两个专用端点连接:一个用于 blob,一个用于 dfs。
    • @flappy 好的,那么您需要添加网络规则以将默认操作设置为拒绝,并且只允许来自所选 VNet 的流量。步骤here。然后您只能从 VNet 访问存储帐户,而不能从 Internet 访问。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-11
    • 2020-06-29
    • 2021-11-16
    • 2021-07-24
    • 1970-01-01
    • 2021-08-07
    • 2022-10-18
    相关资源
    最近更新 更多