< Back

Add-NetEventWFPCaptureProvider

Thu Apr 04, 2019 5:41 am

NAME Add-NetEventWFPCaptureProvider



SYNOPSIS

Creates a WFP capture provider.





SYNTAX

Add-NetEventWFPCaptureProvider [-SessionName] <String> [[-Level] <Byte>] [[-MatchAnyKeyword] <UInt64>] [[-MatchAllKeyword] <UInt64>]

[[-CaptureLayerSet] {IPv4Inbound | IPv4Outbound | IPv6Inbound | IPv6Outbound}] [[-IPAddresses] <String[]>] [[-TCPPorts] <UInt16[]>] [[-UDPPorts]

<UInt16[]>] [-CimSession <CimSession[]>] [-InformationAction {SilentlyContinue | Stop | Continue | Inquire | Ignore | Suspend}]

[-InformationVariable <String>] [-ThrottleLimit <Int32>] [<CommonParameters>]





DESCRIPTION

The Add-NetEventWFPCaptureProvider cmdlet creates a Windows Firewall Platform (WFP) capture provider for network events. The WFP captures events

directly from the network stack. You can capture traffic in network tunnels and from the loopback adapter. Unlike a NetEventPacketCapture

provider, the NetEventWFPCaptureProvider captures network traffic above the IP layer.



A computer typically supports only one packet capture provider. If there is an existing provider on the current computer, remove it before you

run this cmdlet.





PARAMETERS

-CaptureLayerSet [<WFPCaptureSet>]

Specifies a WFP capture set, which designates the layers and directions to filter. The acceptable values for this parameter are:



-- IPv4Inbound

-- IPv4Outbound

-- IPv6Inbound

-- IPv6Outbound



You can locially OR the direction and IP layer pairs together. For instance, you could capture incoming loopback traffic from IPv6 to avoid

seeing duplicate traffic received by the loopback interface.



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.



Required? false

Position? named

Default value none

Accept pipeline input? false

Accept wildcard characters? false



-InformationAction [<ActionPreference>]

Specifies how this cmdlet responds to an informational event. The acceptable values for this parameter are:



-- SilentlyContinue

-- Stop

-- Continue

-- Inquire

-- Ignore

-- Suspend



Required? false

Position? named

Default value none

Accept pipeline input? false

Accept wildcard characters? false



-InformationVariable [<String>]

Specifies a variable in which to store an informational event.



Required? false

Position? named

Default value none

Accept pipeline input? false

Accept wildcard characters? false



-IPAddresses [<String[]>]

Specifies an array of IP addresses. The provider filters for and logs network traffic that matches the IP addresses that this parameter

specifies. The provider joins multiple addresses by using logical ORs.



Required? false

Position? 6

Default value none

Accept pipeline input? false

Accept wildcard characters? false



-Level [<Byte>]

Specifies the Event Tracing for Windows (ETW) event error levels that NetEventWFPCaptureProvider returns. Use a level of detail specifier as a

filter the type of error events that are logged. The default value for this parameter is 0x4, for informational events. The 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. Lower level events up to and

including the specified level are logged.



Required? false

Position? 2

Default value none

Accept pipeline input? false

Accept wildcard characters? false



-MatchAllKeyword [<UInt64>]

Specifies a keyword bitmask that restricts the events that the provider logs.



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 hexadecimal values that enable the

provider to write one or more events for which it is instrumented, if a match is found. Use a set of hexadecimal values for keywords instead

of the keyword names, and apply a filter to write ETW events for keyword matches. For more information, see EnableTraceEx2 function

(http://msdn.microsoft.com/en-us/library ... s.85).aspx) in the Microsoft Developer Network library.



Required? false

Position? 3

Default value none

Accept pipeline input? false

Accept wildcard characters? false



-SessionName [<String>]

Specifies the name of the session that is associated with the NetEventWFPCaptureProvider. This parameter has the same value as the Name

parameter for the New-NetEventSession cmdlet.



Required? true

Position? 1

Default value none

Accept pipeline input? false

Accept wildcard characters? false



-TCPPorts [<UInt16[]>]

Specifies an array of TCP ports. The provider filters for and logs network traffic that matches the ports that this parameter specifies. The

provider joins multiple port numbers with logical ORs.



Required? false

Position? 7

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.



Required? false

Position? named

Default value none

Accept pipeline input? false

Accept wildcard characters? false



-UDPPorts [<UInt16[]>]

Specifies an array of UDP ports. The provider filters for and logs network traffic that matches the ports that this parameter specifies. The

provider joins multiple port numbers with logical ORs.



Required? false

Position? 8

Default value none

Accept pipeline input? false

Accept wildcard characters? false



<CommonParameters>

This cmdlet supports the common parameters: Verbose, Debug,

ErrorAction, ErrorVariable, WarningAction, WarningVariable,

OutBuffer, PipelineVariable, and OutVariable. For more information, see

about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).



INPUTS











OUTPUTS











Example 1: Create a WFP capture provider



PS C:\\>New-NetEventSession -Name "WFPCapture" -CaptureMode RealtimeLocal -LocalFilePath "C:\\users\\DavidChew\\Documents\\wfpdata.etl"

PS C:\\> Add-NetEventWFPCaptureProvider -SessionName "WFPCapture"

PS C:\\> Start-NetEventSession -Name "WFPCapture"



The first command creates a network event session by using the New-NetEventSession cmdlet. The command also assigns the name WFPCapture to the

session.



The second command uses the current cmdlet to create a WFP capture provider for the session named WFPCapture.



The final command starts the event tracing session named WFPCapture.







RELATED LINKS

Get-NetEventWFPCaptureProvider

Remove-NetEventWFPCaptureProvider

Set-NetEventWFPCaptureProvider

New-NetEventSession