gpt4 book ai didi

Azure vnet/子网列出连接的设备

转载 作者:行者123 更新时间:2023-12-04 13:00:01 26 4
gpt4 key购买 nike

我正在尝试编写一个 PowerShell 脚本,列出所有订阅中所有 VNet 的子网中具有 ip 的所有已连接设备。

更新以下脚本有效,向下滚动以查找原始问题。

$subs = Get-AzSubscription 
foreach ($Sub in $Subs) {
Write-Host "***************************"
Write-Host " "
$Sub.Name

$SelectSub = Select-AzSubscription -SubscriptionName $Sub.Name

$VNETs = Get-AzVirtualNetwork
foreach ($VNET in $VNETs) {
Write-Host "--------------------------"
Write-Host " "
Write-Host " vNet: " $VNET.Name
Write-Host " AddressPrefixes: " ($VNET).AddressSpace.AddressPrefixes

$vNetExpanded = Get-AzVirtualNetwork -Name $VNET.Name -ResourceGroupName $VNET.ResourceGroupName -ExpandResource 'subnets/ipConfigurations'

foreach($subnet in $vNetExpanded.Subnets)
{
Write-Host " Subnet: " $subnet.Name
Write-Host " Connected devices " $subnet.IpConfigurations.Count
foreach($ipConfig in $subnet.IpConfigurations)
{
Write-Host " " $ipConfig.PrivateIpAddress
}
}

Write-Host " "
}
}

我原来的问题:

但是问题是我无法填充 $subnet.IpConfigurations 属性。我的意思是我确实得到了一个列表,但子项仅包含一个 Id,其余属性(如 name、privateip 等)均为 null。

最佳答案

根据我的研究,如果我们想要获取有关子网 IpConfigurations 的详细信息,我们需要使用 powershell 命令 Get-AzVirtualNetwork 指定参数 ExpandResource。例如

$result=Get-AzVirtualNetwork -Name '<vnet name>'  -ResourceGroupName '<group nmae>' -ExpandResource 'subnets/ipConfigurations' 

$result.Subnets[0].IpConfigurations

enter image description here

关于Azure vnet/子网列出连接的设备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59688004/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com