客户在Azure中有多个资源组,具有多个虚拟网络和多个专用DNS区域,以启用专用端点。一些私有DNS区域位于不同的资源组中,但具有相同的域名(例如privatelink.azurewebsites.net)。我有一些虚拟网络,我想知道哪些专用DNS区域通过虚拟网络链接连接到它们。
我有一个连接到特定专用DNS区域的虚拟网络列表,但在虚拟网络中没有看到相应的列表。在门户中是否有我可以看到虚拟网络链接的列表?
发布于 2022-12-01 09:33:38
这不是您所要求的,也不是来自门户的,而是一种选择,如果您愿意尝试一下PowerShell的话。您可以尝试使用PowerShell提取私有DNS区域及其相关记录和Vnet链接并发送到csv文件。通过这种方式,您可以很容易地识别哪些Vnet连接到您的专用dns区域,只需过滤VnetLinkId列就可以了。
下面是您可以使用的代码片段:
注意:在运行此代码段之前,首先需要使用Connect的
$subscriptionId = your subscription ID"
Set-AzContext -SubscriptionId $subscriptionId
$subName = "your Subscription Name"
$reportName1 = "PrivateDNSZone.csv"
Select-AzSubscription $subscriptionId
$report = @()
$Zones = Get-AzPrivateDnsZone
foreach ($zone in $Zones){
$vnet_link = Get-AzPrivateDnsVirtualNetworkLink -ResourceGroupName $zone.ResourceGroupName -ZoneName $zone.Name
$record_set = Get-AzPrivateDnsRecordSet -ResourceGroupName $zone.ResourceGroupName -ZoneName $zone.Name
foreach ($record in $record_set){
foreach ($link in $vnet_link){
$info = "" | Select Subscription, ResourceGroupName, PrivateDNSZoneName, RecordSet, RecordType, Records, Ttl, IsAutoRegistered, VnetLinkName, VnetLinkId, RegistrationEnabled, VirtualNetworkLinkState, ProvisioningState
$info.Subscription = $subName
$info.ResourceGroupName = $zone.ResourceGroupName
#$info.Location = $zone.Location
$info.PrivateDNSZoneName = $zone.Name
$info.RecordSet = $record.Name
$info.RecordType = $record.RecordType
if ($record.RecordType -eq 'A'){
$info.Records = $record.Records.Ipv4Address -join ","
}
elseif ($record.RecordType -eq 'CNAME'){
$info.Records = $record.Records.Cname -join ","
}
elseif ($record.RecordType -eq 'SOA') {
$info.Records = $record.Records.Host -join ","
}
else{
$info.Records = $record.Records
}
$info.Ttl = $record.Ttl
$info.IsAutoRegistered = $record.IsAutoRegistered
$info.VnetLinkName = $link.Name
$info.VnetLinkId = $link.VirtualNetworkId
$info.RegistrationEnabled = $link.RegistrationEnabled
$info.VirtualNetworkLinkState = $link.VirtualNetworkLinkState
$info.ProvisioningState = $link.ProvisioningState
$report += $info
}
}
}
$report | ft Subscription, ResourceGroupName, PrivateDNSZoneName, RecordSet, RecordType, Records, Ttl, IsAutoRegistered, VnetLinkName, VnetLinkId, RegistrationEnabled, VirtualNetworkLinkState, ProvisioningState
$report | Export-CSV "$reportName1" -Encoding Default
下面是csv文件的快照,其中包含提取的详细信息
发布于 2022-11-28 13:29:07
,我尝试在我的环境中复制相同的结果,我成功地得到了如下结果.
在您的专用dns区域中,您可以筛选连接到哪个虚拟网络链接的专用DNS区域,如下所示:
在搜索中按虚拟网络链接或虚拟网络链接按->单击组或自动注册启用
在门户中我可以看到虚拟网络链接的列表吗?
若要查看特定资源组上的虚拟网络链接:
在您的专用dns区域中的 ->设置->下,单击虚拟网络链接,如下面所示
您还可以使用Azure CLI查看虚拟网络链接,如下所示:
https://stackoverflow.com/questions/74577769
复制相似问题