首页 > 其他分享 >Azure Virtual Network (22) 多订阅使用Azure DNS解析问题

Azure Virtual Network (22) 多订阅使用Azure DNS解析问题

时间:2024-06-10 21:46:44浏览次数:21  
标签:Network Hub 22 Private Server VNet DNS Azure Spoke

  《Windows Azure Platform 系列文章目录

 

  部署环境:

  1.我们只有1个订阅,1个Virtual Network

  2.我们有1个Hub-VNet, 在Virtual Network上设置了DNS Server指向到DNS Svr1, Svr2, Svr3三台虚拟机的内网IP地址

  3.我们创建了PaaS Datatbase服务,并且创建了Private Endpoint和Private DNS Zone资源

  

  Virtual Network的DNS Server Private IP指向到Unbound虚拟机的内网IP地址,结合Private Endpoint,则解析顺序如下:

  

 

  上图的DNS解析顺序:

  1.如步骤1,虚拟机需要解析地址为*.database.windows.net,查看到Virtual Network上的DNS Server(假设是Unbound),虚拟机往DNS Server上发送DNS查询

  2.如步骤2,DNS Server查看到存在转发域,database.windows.net的转发域为168.63.129.16

  3.如步骤3,DNS Server往168.63.129.16转发

  4.如步骤4,Private DNS Zone与HUb-VNet设置了Virtual Network Link,且Private DNS Zone存在该域名的A记录,返回的内网IP为:10.88.233.4

  5.如步骤5,虚拟机查询DNS的结果为内网IP:10.88.233.4,则虚拟机往这个DNS发送请求

 

  Azure DNS的解析顺序如下:

  

 

  那假设我们有2个Virtual Network,分别在2个订阅里,比如:

  1.我们有1个Hub订阅,里面创建了1个Hub VNet,并且设置了3台DNS Server作为高可用

  2.我们还有1个订阅叫Spoke订阅,里面也创建1个Spoke VNet

  3.Hub VNet和Spoke VNet设置了VNet Peering对等互联

  4.Spoke VNet的DNS Server IP指向到Hub区3台DNS Server的内网IP地址

 

  这样会产生问题,如下图所示:

  

  上图的说明:

  1.如果1个用户user01,他的权限只在Hub订阅里操作的话,则创建PaaS资源的Private Endpint。默认是在Hub订阅里。假设Hub区里创建privatelink.database.windows.net

  2.如果另外一个用户user02,他的权限只在Spoke订阅订阅的话,则创建的PaaS资源的Private Endpoint,默认是在Spoke订阅里创建privatelink.database.windows.net

  3.因为Spoke订阅里的Spoke VNet的DNS Server指向到Hub区的DNS Server 内网IP,则查询的时候通过Hub区的DNS Server进行查询

  4.但是Hub区的VNet只与Hub区的Private DNS Zone做了连接Link,且因为重名,无法与Spoke区里同名的Private DNS Zone做link,所以从Hub区找不到A记录,该A记录只在Spoke里存在

  

  所以建议的方案是:

  

  上图的方案说明:

  1.我们有2个Spoke VNet,分别是Spoke1-VNet和Spoke2-VNet

  2.Spoke VNet和Hub VNet内网互通

  3.Spoke VNet的DNS Server指向到Hub VNet里DNS Server内网IP地址

  4.对Spoke VNet有权限的用户,我们规定创建Private Endpoint的资源,都必须强制创建在Hub订阅里

  

  为了满足Spoke区的用户,强制创建Private DNS ZOne都在Hub订阅里,我们就需要设置自定义权限,并规范操作:

  

 

  具体的自定义权限:

  需要修改assignableScopes生效范围,为Hub区的订阅名称:

  另外下面的自定义权限是:

  (1)允许spoke区用户,在Hub区创建Private DNS Zone和新增A记录,但不允许删除A记录

  (2)其他Hub区的资源,spoke区用户都不可以访问

{
    "properties": {
        "roleName": "private_dnszone_custom",
        "description": "create and manage Azure Private DNS Zone, while cannot delete private dns zone",
        "assignableScopes": [
             "/subscriptions/[修改为hub区的订阅ID]"
        ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.Authorization/*/read",
                    "Microsoft.ResourceHealth/availabilityStatuses/read",
                    "Microsoft.Resources/deployments/*",
                    "Microsoft.Resources/subscriptions/resourceGroups/read",
                    "Microsoft.Support/*",
                    "Microsoft.Network/privateDnsZones/*/read",
                    "Microsoft.Network/privateDnsZones/*/write",
                    "Microsoft.Network/privateDnsZones/join/action",
                    "Microsoft.Network/virtualnetworks/*/read",
                    "Microsoft.Network/virtualNetworks/join/action",
                    "*/register/action"
                ],
                "notActions": [],
                "dataActions": [],
                "notDataActions": []
            }
        ]
    }
}
 

 

  Spoke区的用户,在创建Private DNS Zone的时候,需要选择到Hub区订阅,操作步骤如下:

  

  在上图的subscription里,我们可以选择到不同的订阅名称,这里我们需要选择到Hub区的订阅

 

标签:Network,Hub,22,Private,Server,VNet,DNS,Azure,Spoke
From: https://www.cnblogs.com/threestone/p/18241053

相关文章

  • Leetcode-22
    题目22.括号生成难度:中等数字n代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且**有效的**括号组合。示例1:输入:n=3输出:["((()))","(()())","(())()","()(())","()()()"]示例2:输入:n=1输出:["()"]提示:1<=n<=8来源:力扣(Lee......
  • SpringBoot个人网盘系统-计算机毕业设计源码92922
    摘 要随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势或改善自身的缺点,互联网的发展文件管理带来了福音。个人网盘系统是以实际运用为开发背景,运用软件工程原理和开发方法,采用Java技术构建的一个线上系统。整个......
  • Leetcode-1221
    题目1221.分割平衡字符串难度:简单在一个平衡字符串中,'L'和'R'字符的数量是相同的。给你一个平衡字符串s,请你将它分割成尽可能多的平衡字符串。注意:分割得到的每个字符串都必须是平衡字符串,且分割得到的平衡字符串是原平衡字符串的连续子串。返回可以通过分割得到的平衡......
  • 信息学奥赛一本通第1022题
    1022:整型与布尔型的转换【题目描述】将一个整型变量的值赋给一个布尔型变量,再将这个布尔型变量的值赋给一个整型变量,得到的值是多少?【输入】一个整型范围内的整数,即初始时整型变量的值。【输出】一个整数,经过上述过程后得到的结果。【输入样例】3【输出样例】1......
  • SQL Server 2022 RTM 最新累积更新:Cumulative Update #13 for SQL Server 2022 RTM
    SQLServer2022RTM(最新累积更新)-基于Azure的持续性能和安全创新CumulativeUpdate#13forSQLServer2022RTM请访问原文链接:https://sysin.org/blog/sql-server-2022/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgSQLServer2022现已普遍可用2022......
  • 在不使用时停止 SQL Azure DB
    是否有任何方法可停止SQLAzureDB,使其不向我们的帐户收取任何费用?我不想删除它,只是在测试期间,如果不使用它,我们可以将其设置为"停止",就像我们可以对网站、云服务和虚拟机所做的那样。很遗憾,无法像对网站、云服务和虚拟机那样停止SQLAzure数据库来停止计费。AzureSQL......
  • 腾讯冷启动论文阅读《Enhancing User Interest based on Stream Clustering and Memor
    背景用户冷启动一直是推荐系统中的一个难题,新用户(或非活跃用户)由于缺少行为数据,模型预估不准确。为了改善用户冷启动,腾讯提出了UserInterestEnhancement(UIE)模型(论文中提到也可以用于item的冷启动)。基本思想是先对用户聚类,然后用userembedding检索最相似的k个聚类中心来表示......
  • Q22 LeetCode142 环形链表
    1.使用快慢指针2.快指针向后移动两个位置,慢指针向后移动一个位置3.若快慢指针能相等,则有环4.将一个指针指向head,一个指针指向fast,挨个向后遍历,相等即进环点 1publicclassSolution{2publicListNodedetectCycle(ListNodehead){3ListNodequickInd......
  • kali2022安装教程(附安装包)
    第一步:下载镜像文件百度网盘下载[链接:https://pan.baidu.com/s/1efRQGFTbq6Kgw9axLOmWzg?pwd=emxf()第二步:打开Vmware创建新的虚拟机,选择高级,然后下一步直接默认下一步选择稍后安装然后下一步kali属于Debian系统所以这里直接选择Debian664位进行命名和选择安装位置......
  • AD622ARZ-R7仪表放大器芯片PDF手册数据手册引脚图产品参数产品手册特性
    产品说明:AD622是一款低成本、中等精度的仪表放大器,采用传统引脚配置,仅需一个外部电阻即可设置2至1000之间的任何增益。对于增益为1时,无需外部电阻。AD622是一款完全差分或减法放大器系统,通过集成精密激光调整电阻器,提供出色的线性度和共模抑制性能。AD622取代了低成本、分立......