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。
相关推荐
Leinwin5 天前
OpenAI已正式开放ChatGPT Projects
大数据·人工智能·microsoft·copilot·azure
Miya_Ye7 天前
Azure AI-102 自学记录
microsoft·flask·azure
Linux运维技术栈7 天前
【实战+原理】微软云 Azure Database 私有网络接入模式全解析:从子网委派到Private Endpoint
数据库·microsoft·azure
Webb Yu8 天前
Azure Databricks 实践:数据分析、机器学习、ETL 与 Delta Lake
机器学习·数据分析·azure
Linux运维技术栈9 天前
Terraform 从入门到实战:历史、原理、功能与阿里云/Azure 上手指南
运维·阿里云·kubernetes·azure·terraform
Liquad Li9 天前
Azure Data Factory (ADF) vs Azure Logic Apps: 对比分析
microsoft·azure
Liquad Li9 天前
Azure Logic App 与 Azure Function 对比分析
microsoft·azure
小沈同学呀18 天前
使用Java操作微软 Azure Blob Storage:上传和下载文件
java·microsoft·azure
CAE虚拟与现实19 天前
Azure Marketplace 和 Microsoft AppSource的区别
microsoft·azure·appsource·marketplace