New-AzNetworkWatcherPacketCaptureV2
Versão V2 do Packet Capture Cmdlet que cria um novo recurso de captura de pacotes e inicia uma sessão de captura de pacotes em uma VM, VMSS ou algumas instâncias do VMSS.
Sintaxe
SetByResource (Predefinição)
New-AzNetworkWatcherPacketCaptureV2
-NetworkWatcher <PSNetworkWatcher>
-Name <String>
-TargetId <String>
[-StorageAccountId <String>]
[-StoragePath <String>]
[-LocalFilePath <String>]
[-BytesToCapturePerPacket <Int32>]
[-TotalBytesPerSession <UInt32>]
[-TimeLimitInSecond <Int32>]
[-Scope <PSPacketCaptureMachineScope>]
[-TargetType <String>]
[-Filter <PSPacketCaptureFilter[]>]
[-ContinuousCapture <Boolean>]
[-LocalPath <String>]
[-CaptureSetting <PSPacketCaptureSettings>]
[-AsJob]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
SetByName
New-AzNetworkWatcherPacketCaptureV2
-NetworkWatcherName <String>
-ResourceGroupName <String>
-Name <String>
-TargetId <String>
[-StorageAccountId <String>]
[-StoragePath <String>]
[-LocalFilePath <String>]
[-BytesToCapturePerPacket <Int32>]
[-TotalBytesPerSession <UInt32>]
[-TimeLimitInSecond <Int32>]
[-Scope <PSPacketCaptureMachineScope>]
[-TargetType <String>]
[-Filter <PSPacketCaptureFilter[]>]
[-ContinuousCapture <Boolean>]
[-LocalPath <String>]
[-CaptureSetting <PSPacketCaptureSettings>]
[-AsJob]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
SetByLocation
New-AzNetworkWatcherPacketCaptureV2
-Location <String>
-Name <String>
-TargetId <String>
[-StorageAccountId <String>]
[-StoragePath <String>]
[-LocalFilePath <String>]
[-BytesToCapturePerPacket <Int32>]
[-TotalBytesPerSession <UInt32>]
[-TimeLimitInSecond <Int32>]
[-Scope <PSPacketCaptureMachineScope>]
[-TargetType <String>]
[-Filter <PSPacketCaptureFilter[]>]
[-ContinuousCapture <Boolean>]
[-LocalPath <String>]
[-CaptureSetting <PSPacketCaptureSettings>]
[-AsJob]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
O cmdlet New-AzNetworkWatcherPacketCaptureV2 cria um novo recurso de captura de pacotes e inicia uma sessão de captura de pacotes em uma VM, VMSS ou algumas instâncias do VMSS.
A duração das sessões de Captura de Pacotes pode ser configurada através de uma restrição de tempo ou de tamanho. A quantidade de dados capturados para cada pacote também pode ser configurada.
Os filtros podem ser aplicados a uma determinada sessão de captura de pacotes, permitindo que você personalize o tipo de pacotes capturados. Os filtros podem restringir pacotes em endereços IP locais e remotos & intervalos de endereços, portas locais e remotas e intervalos de portas e o protocolo de nível de sessão a ser capturado. Os filtros podem ser compostos e vários filtros podem ser aplicados para fornecer granularidade de captura.
Exemplos
Exemplo 1: Criar uma captura de pacote em uma VM
$nw = Get-AzResource | Where {$_.ResourceType -eq "Microsoft.Network/networkWatchers" -and $_.Location -eq "WestCentralUS" }
$networkWatcher = Get-AzNetworkWatcher -Name $nw.Name -ResourceGroupName $nw.ResourceGroupName
$storageAccount = Get-AzStorageAccount -ResourceGroupName contosoResourceGroup -Name contosostorage123
$filter1 = New-AzPacketCaptureFilterConfig -Protocol TCP -RemoteIPAddress "1.1.1.1-255.255.255" -LocalIPAddress "10.0.0.3" -LocalPort "1-65535" -RemotePort "20;80;443"
$filter2 = New-AzPacketCaptureFilterConfig -Protocol UDP
New-AzNetworkWatcherPacketCaptureV2 -NetworkWatcher $networkWatcher -TargetId $vm.Id -TargetType "azurevm" -Name "PacketCaptureTest" -StorageAccountId $storageAccount.id -TimeLimitInSecond 60 -Filter $filter1, $filter2
Name : PacketCaptureTest
Id : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_eastus/packetCaptures/PacketCaptureTest
Etag : W/"0b3c52cb-aa63-4647-93d3-3221c13ccdd2"
ProvisioningState : Succeeded
Target : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contosoResourceGroup/providers/Microsoft.Compute/virtualMachines/SampleVM
TargetType : AzureVM
BytesToCapturePerPacket : 0
TotalBytesPerSession : 1073741824
TimeLimitInSeconds : 18000
StorageLocation : {
"StorageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contosoResourceGroup/providers/Microsoft.Storage/storageAccounts/contosostorage123",
"StoragePath": "https://contosostorage123.blob.core.windows.net/network-watcher-logs/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/contosoResourceGroup/providers/microsoft.compute/virtualmachines/SampleVM/2022/07/21/packetcapture_09_20_07_166.cap"
}
Filters : [
{
"Protocol": "TCP",
"RemoteIPAddress": "1.1.1.1-255.255.255",
"LocalIPAddress": "10.0.0.3",
"LocalPort": "1-65535",
"RemotePort": "20;80;443"
},
{
"Protocol": "UDP",
"RemoteIPAddress": "",
"LocalIPAddress": "",
"LocalPort": "",
"RemotePort": ""
}
]
Scope : {
"Include": [],
"Exclude": []
}
Neste exemplo, criamos uma captura de pacote chamada "PacketCaptureTest" com vários filtros e um limite de tempo. Quando a sessão estiver concluída, ela será salva na conta de armazenamento especificada.
Observação: a extensão do Azure Network Watcher deve ser instalada na máquina virtual de destino para criar capturas de pacote.
Exemplo 2: Criar uma captura de pacote em um VMSS
$nw = Get-AzResource | Where {$_.ResourceType -eq "Microsoft.Network/networkWatchers" -and $_.Location -eq "WestCentralUS" }
$networkWatcher = Get-AzNetworkWatcher -Name $nw.Name -ResourceGroupName $nw.ResourceGroupName
$storageAccount = Get-AzStorageAccount -ResourceGroupName contosoResourceGroup -Name contosostorage123
$filter1 = New-AzPacketCaptureFilterConfig -Protocol TCP -RemoteIPAddress "1.1.1.1-255.255.255" -LocalIPAddress "10.0.0.3" -LocalPort "1-65535" -RemotePort "20;80;443"
$filter2 = New-AzPacketCaptureFilterConfig -Protocol UDP
New-AzNetworkWatcherPacketCaptureV2 -NetworkWatcher $networkWatcher -TargetId $vmss.Id -TargetType "azurevmss" -Name "PacketCaptureTest" -StorageAccountId $storageAccount.id -TimeLimitInSecond 60 -Filter $filter1, $filter2
Name : PacketCaptureTest
Id : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_eastus/packetCaptures/PacketCaptureTest
Etag : W/"0b3c52cb-aa63-4647-93d3-3221c13ccdd2"
ProvisioningState : Succeeded
Target : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contosoResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/SampleVMSS
TargetType : AzureVMSS
BytesToCapturePerPacket : 0
TotalBytesPerSession : 1073741824
TimeLimitInSeconds : 60
StorageLocation : {
"StorageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contosoResourceGroup/providers/Microsoft.Storage/storageAccounts/contosostorage123",
"StoragePath": "https://contosostorage123.blob.core.windows.net/network-watcher-logs/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/contosoResourceGroup/providers/microsoft.compute/virtualmachinescalesets/SampleVMSS/2022/07/21/packetcapture_09_20_07_166.cap"
}
Filters : [
{
"Protocol": "TCP",
"RemoteIPAddress": "1.1.1.1-255.255.255",
"LocalIPAddress": "10.0.0.3",
"LocalPort": "1-65535",
"RemotePort": "20;80;443"
},
{
"Protocol": "UDP",
"RemoteIPAddress": "",
"LocalIPAddress": "",
"LocalPort": "",
"RemotePort": ""
}
]
Scope : {
"Include": [],
"Exclude": []
}
Neste exemplo, criamos uma captura de pacote chamada "PacketCaptureTest" com vários filtros e um limite de tempo. Quando a sessão estiver concluída, ela será salva na conta de armazenamento especificada.
Observação: a extensão do Azure Network Watcher deve ser instalada no conjunto de escala da máquina virtual de destino e em todas as respetivas instâncias aderentes ao modelo vmss mais recente, para criar capturas de pacotes.
Exemplo 3: Criar uma captura de pacote em algumas instâncias do VMSS
$nw = Get-AzResource | Where {$_.ResourceType -eq "Microsoft.Network/networkWatchers" -and $_.Location -eq "WestCentralUS" }
$networkWatcher = Get-AzNetworkWatcher -Name $nw.Name -ResourceGroupName $nw.ResourceGroupName
$storageAccount = Get-AzStorageAccount -ResourceGroupName contosoResourceGroup -Name contosostorage123
$filter1 = New-AzPacketCaptureFilterConfig -Protocol TCP -RemoteIPAddress "1.1.1.1-255.255.255" -LocalIPAddress "10.0.0.3" -LocalPort "1-65535" -RemotePort "20;80;443"
$filter2 = New-AzPacketCaptureFilterConfig -Protocol UDP
$instance1 = $vmssInstance1.Name
$instance2 = $vmssInstance2.Name
$scope = New-AzPacketCaptureScopeConfig -Include $instance1, $instance2
New-AzNetworkWatcherPacketCaptureV2 -NetworkWatcher $networkWatcher -TargetId $vmss.Id -TargetType "azurevmss" -Scope $scope -Name "PacketCaptureTest" -StorageAccountId $storageAccount.id -TimeLimitInSecond 60 -Filter $filter1, $filter2
Name : PacketCaptureTest
Id : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_eastus/packetCaptures/PacketCaptureTest
Etag : W/"0b3c52cb-aa63-4647-93d3-3221c13ccdd2"
ProvisioningState : Succeeded
Target : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contosoResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/SampleVMSS
TargetType : AzureVMSS
BytesToCapturePerPacket : 0
TotalBytesPerSession : 1073741824
TimeLimitInSeconds : 18000
StorageLocation : {
"StorageId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contosoResourceGroup/providers/Microsoft.Storage/storageAccounts/contosostorage123",
"StoragePath": "https://contosostorage123.blob.core.windows.net/network-watcher-logs/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/contosoResourceGroup/providers/microsoft.compute/virtualmachinescalesets/SampleVMSS/2022/07/21/packetcapture_09_20_07_166.cap"
}
Filters : [
{
"Protocol": "TCP",
"RemoteIPAddress": "1.1.1.1-255.255.255",
"LocalIPAddress": "10.0.0.3",
"LocalPort": "1-65535",
"RemotePort": "20;80;443"
},
{
"Protocol": "UDP",
"RemoteIPAddress": "",
"LocalIPAddress": "",
"LocalPort": "",
"RemotePort": ""
}
]
Scope : {
"Include": [
"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contosoResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/SampleVMSS/virtualMachines/0",
"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contosoResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/SampleVMSS/virtualMachines/1"
],
"Exclude": []
}
Neste exemplo, criamos uma captura de pacote chamada "PacketCaptureTest" com vários filtros e um limite de tempo. Quando a sessão estiver concluída, ela será salva na conta de armazenamento especificada.
Observação: a extensão do Observador de Rede do Azure deve ser instalada no conjunto de escala da máquina virtual de destino e nas respetivas instâncias no escopo de inclusão aderente ao modelo vmss mais recente, para criar capturas de pacotes.
$nw = Get-AzResource | Where {$_.ResourceType -eq "Microsoft.Network/networkWatchers" -and $_.Location -eq "WestCentralUS" }
$networkWatcher = Get-AzNetworkWatcher -Name $nw.Name -ResourceGroupName $nw.ResourceGroupName
$capSettings = New-AzPacketCaptureSettingsConfig -FileCount 2 -FileSizeInBytes 102400 -SessionTimeLimitInSeconds 60
New-AzNetworkWatcherPacketCaptureV2 -NetworkWatcher $networkWatcher -Name "PacketCaptureTest" -TargetId "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contosoResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/SampleVMSS" -BytesToCapturePerPacket 1 -ContinuousCapture $false -CaptureSetting $capSettings -LocalPath "/var/captures/test1.cap"
Name : PacketCaptureTest
Id : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/NetworkWatcherRG/providers/Microsoft.Network/networkWatchers/NetworkWatcher_eastus/packetCaptures/PacketCaptureTest
Etag : W/"00000000-0000-0000-0000-000000000000"
ProvisioningState : Succeeded
Target : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contosoResourceGroup/providers/Microsoft.Compute/virtualMachineScaleSets/SampleVMSS
TargetType : AzureVMSS
BytesToCapturePerPacket : 1
StorageLocation : {
"StoragePath": "",
"LocalPath": "/var/captures/test1.cap"
}
ContinuousCapture : true
CaptureSettings : {
"fileCount":"2",
"fileSizeInBytes":"102400",
"sessionTimeLimitInSeconds":"60"
}
Filters : []
Scope : {}
Neste exemplo, criamos uma captura de pacote chamada "PacketCaptureTest" com captura contínua como true junto com as configurações de captura. Quando a sessão estiver concluída, ela será salva na conta de armazenamento especificada.
Observação: a extensão do Azure Network Watcher deve ser instalada no conjunto de escala da máquina virtual de destino e em todas as respetivas instâncias aderentes ao modelo vmss mais recente, para criar capturas de pacotes.
Parâmetros
-AsJob
Executar cmdlet em segundo plano
Propriedades dos parâmetros
Tipo: SwitchParameter
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-BytesToCapturePerPacket
Bytes para capturar por pacote.
Propriedades dos parâmetros
Tipo: Nullable<T> [ Int32 ]
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: True
Valor dos restantes argumentos: False
-CaptureSetting
A configuração de captura contém os valores 'FileCount', 'FileSizeInBytes', 'SessionTimeLimitInSeconds'. Essas configurações só são aplicáveis se 'ContinuousCapture' for fornecido.
Propriedades dos parâmetros
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-Confirm
Solicita confirmação antes de executar o cmdlet.
Propriedades dos parâmetros
Tipo: SwitchParameter
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Aliases: Cf.
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-ContinuousCapture
Esta captura contínua é um booleano anulável, que pode conter valor 'null', 'true' ou 'false'. Se não passarmos esse parâmetro, ele será considerado como 'null', o valor padrão é 'null'.
Propriedades dos parâmetros
Tipo: Nullable<T> [ Boolean ]
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: True
Valor dos restantes argumentos: False
-DefaultProfile
As credenciais, a conta, o locatário e a assinatura usados para comunicação com o Azure.
Propriedades dos parâmetros
Tipo: IAzureContextContainer
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Aliases: AzContext, AzureRmContext, AzureCredential
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-Filter
Filtros para sessão de captura de pacotes.
Propriedades dos parâmetros
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-LocalFilePath
Caminho do arquivo local.
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: True
Valor dos restantes argumentos: False
-LocalPath
Esse caminho é válido se 'ContinuousCapture' for fornecido e necessário se nenhum ID de armazenamento for fornecido, caso contrário, opcional. Deve incluir o nome do arquivo de captura (*.cap).
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: True
Valor dos restantes argumentos: False
-Location
Localização do observador de rede.
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
SetByLocation
Position: Named
Obrigatório: True
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-Name
O nome da captura de pacote.
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Aliases: PacketCaptureName
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: True
Valor do pipeline: False
Valor do pipeline por nome de propriedade: True
Valor dos restantes argumentos: False
-NetworkWatcher
O recurso do inspetor de rede.
Propriedades dos parâmetros
Tipo: PSNetworkWatcher
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
SetByResource
Position: Named
Obrigatório: True
Valor do pipeline: True
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-NetworkWatcherName
O nome do observador de rede.
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
SetByName
Position: Named
Obrigatório: True
Valor do pipeline: True
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-ResourceGroupName
O nome do grupo de recursos do inspetor de rede.
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
SetByName
Position: Named
Obrigatório: True
Valor do pipeline: False
Valor do pipeline por nome de propriedade: True
Valor dos restantes argumentos: False
-Scope
Escopo das instâncias VMSS a serem incluídas ou excluídas.
Propriedades dos parâmetros
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-StorageAccountId
ID da conta de armazenamento.
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: True
Valor dos restantes argumentos: False
-StoragePath
Caminho de armazenamento.
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: True
Valor dos restantes argumentos: False
-TargetId
O ID da máquina virtual de destino ou o ID do conjunto de dimensionamento da máquina virtual
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: True
Valor do pipeline: False
Valor do pipeline por nome de propriedade: True
Valor dos restantes argumentos: False
-TargetType
Tipo de destino do recurso.
Propriedades dos parâmetros
Tipo: String
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
-TimeLimitInSecond
Limite de tempo em segundos.
Propriedades dos parâmetros
Tipo: Nullable<T> [ Int32 ]
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: True
Valor dos restantes argumentos: False
-TotalBytesPerSession
Total de bytes por sessão.
Propriedades dos parâmetros
Tipo: Nullable<T> [ UInt32 ]
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: True
Valor dos restantes argumentos: False
-WhatIf
Mostra o que aconteceria se o cmdlet fosse executado.
O cmdlet não é executado.
Propriedades dos parâmetros
Tipo: SwitchParameter
Default value: None
Suporta carateres universais: False
NãoMostrar: False
Aliases: Wi
Conjuntos de parâmetros
(All)
Position: Named
Obrigatório: False
Valor do pipeline: False
Valor do pipeline por nome de propriedade: False
Valor dos restantes argumentos: False
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters .
Saídas