Azure Private endpoint DNS 记录是如何解析的

Private endpoint 从本质上来说是Azure 服务在Azure 虚拟网络中安插的一张带私有地址的网卡。

举例来说如果Storage account在没有绑定private endpoint之前,查询Storage account的DNS记录会是如下情况:

Seq Name Type Record Value

1 HOSTNAME.blob.core.windows.net CNAME blob.sn1prdstr01a.store.core.windows.net

2 blob.sn1prdstr01a.store.core.windows.net HOST (A) 20.38.104.164

首先, HOSTNAME.blob.core.windows.net 会被解析到CNAME blob.sn1prdstr01a.store.core.windows.net

然后, blob.sn1prdstr01a.store.core.windows.net 会被解析到公网地址 20.38.104.164。

那么,当Storage account绑定了private endpoint之后,从公网的Storage account DNS记录解析顺序会变成如下情况:

Seq Name Type Record Value

1 HOSTNAME.blob.core.windows.net CNAME HOSTNAME.privatelink.blob.core.windows.net

2 HOSTNAME. privatelink.blob.core.windows.net CNAME blob.sn1prdstr01a.store.core.windows.net

3 blob.sn1prdstr01a.store.core.windows.net HOST (A) 20.38.104.164

可以看到 HOSTNAME.blob.core.windows.net 解析到了 CNAME HOSTNAME.privatelink.blob.core.windows.net, 之后HOSTNAME. privatelink.blob.core.windows.net 才会解析到 CNAME blob.sn1prdstr01a.store.core.windows.net, 然后解析到公网地址 20.38.104.164。

从Azure内网访问Storage account DNS 记录解析顺序会变成如下情况:

Seq Name Type Record Value

1 HOSTNAME.blob.core.windows.net CNAME HOSTNAME.privatelink.blob.core.windows.net

2 HOSTNAME.privatelink.blob.core.windows.net HOST (A) 10.0.0.5

在这种情况下 HOSTNAME.blob.core.windows.net 会解析到 HOSTNAME.privatelink.blob.core.windows.net, 然后 HOSTNAME.privatelink.blob.core.windows.net 直接解析到Azure 内网地址 10.0.0.5。

用一张图解释上述三种DNS记录解析情况:

那么private endpoint 的dns是怎样集成到Azure virtual network的呢?

以下这个图提供了从VNET中的虚拟机解析 Private endpoint DNS记录的详细过程。

  1. VM向Azure DNS 服务器 168.63.129.16 发送查询 HOSTNAME.blob.core.windows.net 的DNS请求。
  2. Azure DNS服务器向拥有blob.core.windows.net zone 的authoritative DNS服务器发送请求。
  3. Authoritative DNS 服务器向Azure DNS 服务器返回 CNAME记录 HOSTNAME.privatelink.blob.core.windows.net
  4. Azure DNS 服务器 发现 Private DNS zone 里面有 privatelink.blob.core.windows.net 这个域名于是查询Private DNS zone获取到A记录的Priave endpoint的IP地址 10.0.0.5。
  5. Private DNS Zone 向 Azure DNS 服务器返回 Private endpoint的IP地址。
  6. Azure DNS 服务器将 Private endpoint的IP地址返回给VM。
  7. VM 通过 Private endpoint 的 IP地址 10.0.0.5 访问Storage Account。
相关推荐
2601_962299243 天前
Azure python操作系统列表
python·操作系统·azure·虚拟机·存储配置文件
编码者卢布4 天前
【Azure Fabric Service】Service Fabric 节点 Error:数据盘挂载失败与 CHKDSK 修复
microsoft·azure·fabric
Miya_Ye4 天前
Azure AI Search(1)
microsoft·azure·ai search
福大大架构师每日一题8 天前
RAGFlow v0.27.1 发布:新增 Azure DevOps、You.com 搜索,修复海量 Bug,性能大幅提升!
bug·azure·devops
编码者卢布10 天前
【Azure Developer】通过 API 获取 Azure VM 信息实践指南 Part 2(Azure China)
python·flask·azure
liuqs33214 天前
AWS、Azure接连宕机后,“云存储”的这个软肋被重新摆上台面
云计算·azure·aws
编码者卢布19 天前
【Azure Key Vault】资源组被误删后,如何恢复 Azure Key Vault?
microsoft·flask·azure
宝桥南山1 个月前
Azure - 检查一下是否需要在Microsoft Extra ID中配置Passkeys认证方法
microsoft·微软·sass·azure
mit6.8241 个月前
AKS--Azure Managed Kubernetes
kubernetes·flask·azure
编码者卢布1 个月前
【Azure APIM】通过 API Management 公开API为 MCP Server 的试验 (二)
microsoft·flask·azure