Add-NetEventPacketCaptureProvider

Add-NetEventPacketCaptureProvider

Adds a Remote Packet Capture provider.

Syntax

Parameter Set: cim:CreateInstance0
Add-NetEventPacketCaptureProvider [-SessionName] <String> [[-Level] <Byte> ] [[-MatchAnyKeyword] <UInt64> ] [[-MatchAllKeyword] <UInt64> ] [[-CaptureType] <CaptureType> {Physical | Switch | BothPhysicalAndSwitch} ] [[-MultiLayer] <Boolean> ] [[-LinkLayerAddress] <String[]> ] [[-EtherType] <UInt16[]> ] [[-IpAddresses] <String[]> ] [[-IpProtocols] <Byte[]> ] [[-TruncationLength] <UInt16> ] [[-VmCaptureDirection] <VmCaptureDirection> {Ingress | Egress | IngressAndEgress} ] [-CimSession <CimSession[]> ] [-ThrottleLimit <Int32> ] [-Confirm] [-WhatIf] [ <CommonParameters>] [ <WorkflowParameters>]

Detailed Description

The Add-NetEventPacketCaptureProvider cmdlet adds a Remote Packet Capture provider. You can only use one packet capture provider at a time and you must remove an existing provider before you use this cmdlet to add a new provider. To remove an existing Remote Packet Capture provider, use the Remove-NetEventPacketCaptureProvider cmdlet.

Parameters

-CaptureType<CaptureType>

Specifies a capture type. Acceptable values for this parameter are:

-- SaveToFile. Writes events to a local .etl file.
-- RealtimeRPC. Creates a real-time capture session and forwards the events to a remote host as they are recorded.
-- RealtimeLocal. Creates a real-time capture session and forwards the events to a local Event Tracing for Windows (ETW) listener as they are recorded.

Aliases

none

Required?

false

Position?

5

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-CimSession<CimSession[]>

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

Aliases

Session

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-EtherType<UInt16[]>

Specifies an array of ether types. The most common ether types and their values are IPv4 (0800), IPv6 (86DD) and ARP (0806).

Aliases

none

Required?

false

Position?

8

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-IpAddresses<String[]>

Specifies an array of IP addresses on which to filter. The packet capture provider logs network traffic that matches this filter.

Aliases

none

Required?

false

Position?

9

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-IpProtocols<Byte[]>

Specifies an array of one or more IP protocols, such as TCP or UDP, on which to filter. The packet capture provider logs network traffic that matches this filter.

Aliases

none

Required?

false

Position?

10

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Level<Byte>

Specifies the level of Event Tracing for Windows (ETW) events for the provider. Use the level of detail for the event to filter the events that are logged. The default value for this parameter is 0x4. Acceptable values for this parameter are:

-- 0x5. Verbose
-- 0x4. Informational
-- 0x3. Warning
-- 0x2. Error
-- 0x1. Critical
-- 0x0. LogAlways

The provider must log the event if the value of the event is less than or equal to the value of this parameter.

Aliases

none

Required?

false

Position?

2

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-LinkLayerAddress<String[]>

Specifies an array of link layer, or Media Access Control (MAC), addresses. The packet capture provider logs network traffic that matches this filter.

Aliases

none

Required?

false

Position?

7

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-MatchAllKeyword<UInt64>

Specifies a bitmask that restricts the events that the provider logs. Set the MatchAnyKeyword parameter value to 0 (zero) to match all keywords.

Aliases

none

Required?

false

Position?

4

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-MatchAnyKeyword<UInt64>

Specifies keywords as a set of hexadecimal values. Keywords are flags that you can combine to generate values. Use a set of hexadecimal values of the keywords instead of the keyword names, and apply a filter to write ETW events for keyword matches. For more information, see https://msdn.microsoft.com/en-us/library/windows/desktop/dd392305(v=vs.85).aspx in the Microsoft Developer Library.

Aliases

none

Required?

false

Position?

3

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-MultiLayer<Boolean>

Indicates whether the capture occurs at various layers of the stack. This setting has a value of $False by default.

Aliases

none

Required?

false

Position?

6

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-SessionName<String>

Specifies the name of the session associated with the packet capture provider.

Aliases

none

Required?

true

Position?

1

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ThrottleLimit<Int32>

Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-TruncationLength<UInt16>

Specifies the display length of each captured packet. The default size is 128 bytes.

Aliases

none

Required?

false

Position?

11

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-VmCaptureDirection<VmCaptureDirection>

Specifies the direction of network traffic for a Virtual Machine (VM) capture. The acceptable values for this parameter are:

-- Ingress. Network traffic from a VM to a virtual switch.
-- Egress. Network traffic from a virtual switch to a VM.

Aliases

none

Required?

false

Position?

12

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Confirm

Prompts you for confirmation before running the cmdlet.

Required?

false

Position?

named

Default Value

false

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Required?

false

Position?

named

Default Value

false

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

<CommonParameters>

This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see    about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).

<WorkflowParameters>

This cmdlet supports the following workflow common parameters: -PSParameterCollection, -PSComputerName, -PSCredential, -PSConnectionRetryCount, -PSConnectionRetryIntervalSec, -PSRunningTimeoutSec, -PSElapsedTimeoutSec, -PSPersist, -PSAuthentication, -PSAuthenticationLevel, -PSApplicationName, -PSPort, -PSUseSSL, -PSConfigurationName, -PSConnectionURI, -PSAllowRedirection, -PSSessionOption, -PSCertificateThumbprint, -PSPrivateMetadata, -AsJob, -JobName, and –InputObject. For more information, see    about_WorkflowCommonParameters.

Inputs

The input type is the type of the objects that you can pipe to the cmdlet.

Outputs

The output type is the type of the objects that the cmdlet emits.

Examples

Example 1: Add a packet capture provider

This example adds a Remote Packet Capture provider to a session.

The first command uses the New-NetEventSession cmdlet to create a new session named Session01.

The second command adds a provider named Microsoft-Windows-TCPIP to the session named Session01 by using the Add-NetEventProvider cmdlet.

The third command adds a packet capture provider to the session.

PS C:\> New-NetEventSession -SessionName "Session01"
PS C:\> Add-NetEventProvider -Name "Microsoft-Windows-TCPIP" -SessionName "Session01"
PS C:\> Add-NetEventPacketCaptureProvider -SessionName "Session01"

Add-NetEventProvider

Get-NetEventPacketCaptureProvider

New-NetEventSession

Remove-NetEventPacketCaptureProvider

Set-NetEventPacketCaptureProvider