VpnChannel.StartWithTrafficFilter Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
StartWithTrafficFilter(IIterable<HostName>, IIterable<HostName>, VpnInterfaceId, VpnRouteAssignment, VpnDomainNameAssignment, UInt32, UInt32, Boolean, IIterable<Object>, VpnTrafficFilterAssignment) |
Creates the VPN channel for an arbitrary numbers of transports to be used by the VPN plug-in. It also creates an L3 network interface for applications in the client machine to be able to see the corporate network. It allows the specification of traffic filters to use in per-app VPN scenarios. |
StartWithTrafficFilter(IVectorView<HostName>, IVectorView<HostName>, VpnInterfaceId, VpnRouteAssignment, VpnDomainNameAssignment, UInt32, UInt32, Boolean, Object, Object, VpnTrafficFilterAssignment) |
Creates the VPN channel to be used by the VPN plug-in. It also creates an L3 network interface for applications in the client machine to be able to see the corporate network. It allows the specification of traffic filters to use in per-app VPN scenarios. |
StartWithTrafficFilter(IIterable<HostName>, IIterable<HostName>, VpnInterfaceId, VpnRouteAssignment, VpnDomainNameAssignment, UInt32, UInt32, Boolean, IIterable<Object>, VpnTrafficFilterAssignment)
Creates the VPN channel for an arbitrary numbers of transports to be used by the VPN plug-in. It also creates an L3 network interface for applications in the client machine to be able to see the corporate network. It allows the specification of traffic filters to use in per-app VPN scenarios.
public:
virtual void StartWithTrafficFilter(IIterable<HostName ^> ^ assignedClientIpv4Addresses, IIterable<HostName ^> ^ assignedClientIpv6Addresses, VpnInterfaceId ^ vpninterfaceId, VpnRouteAssignment ^ assignedRoutes, VpnDomainNameAssignment ^ assignedNamespace, unsigned int mtuSize, unsigned int maxFrameSize, bool reserved, IIterable<Platform::Object ^> ^ transports, VpnTrafficFilterAssignment ^ assignedTrafficFilters) = StartWithTrafficFilter;
/// [Windows.Foundation.Metadata.Overload("StartWithMultipleTransports")]
void StartWithTrafficFilter(IIterable<HostName> const& assignedClientIpv4Addresses, IIterable<HostName> const& assignedClientIpv6Addresses, VpnInterfaceId const& vpninterfaceId, VpnRouteAssignment const& assignedRoutes, VpnDomainNameAssignment const& assignedNamespace, uint32_t const& mtuSize, uint32_t const& maxFrameSize, bool const& reserved, IIterable<IInspectable> const& transports, VpnTrafficFilterAssignment const& assignedTrafficFilters);
[Windows.Foundation.Metadata.Overload("StartWithMultipleTransports")]
public void StartWithTrafficFilter(IEnumerable<HostName> assignedClientIpv4Addresses, IEnumerable<HostName> assignedClientIpv6Addresses, VpnInterfaceId vpninterfaceId, VpnRouteAssignment assignedRoutes, VpnDomainNameAssignment assignedNamespace, uint mtuSize, uint maxFrameSize, bool reserved, IEnumerable<object> transports, VpnTrafficFilterAssignment assignedTrafficFilters);
function startWithTrafficFilter(assignedClientIpv4Addresses, assignedClientIpv6Addresses, vpninterfaceId, assignedRoutes, assignedNamespace, mtuSize, maxFrameSize, reserved, transports, assignedTrafficFilters)
Public Sub StartWithTrafficFilter (assignedClientIpv4Addresses As IEnumerable(Of HostName), assignedClientIpv6Addresses As IEnumerable(Of HostName), vpninterfaceId As VpnInterfaceId, assignedRoutes As VpnRouteAssignment, assignedNamespace As VpnDomainNameAssignment, mtuSize As UInteger, maxFrameSize As UInteger, reserved As Boolean, transports As IEnumerable(Of Object), assignedTrafficFilters As VpnTrafficFilterAssignment)
Parameters
- assignedClientIpv4Addresses
A list of Windows.Networking.HostName objects specifying the IPv4 address(es) assigned by the VPN server to the VPN client. The address(es) should be set on the VPN L3 interface. If null, DHCPv4 is used.
- assignedClientIpv6Addresses
A list of Windows.Networking.HostName objects specifying the IPv6 address(es) assigned by the VPN server to the VPN client, and which should be set on the VPN L3 interface. If null, DHCPv6 or RD is used.
- vpninterfaceId
- VpnInterfaceId
A VpnInterfaceId object.
- assignedRoutes
- VpnRouteAssignment
A Windows.Networking.VpnRouteAssignment object that represents the routes that should be associated / not associated with the VPN interface.
- assignedNamespace
- VpnDomainNameAssignment
A Windows.Networking.DomainNameAssignment object that represents the list of name prefixes that are associated with the VPN channel, including its DNS and proxy servers.
- mtuSize
-
UInt32
unsigned int
uint32_t
A UINT16 value specifying the MTU size of the VPN L3 network interface. This is also the size of the IVpnPacketBuffers in the Receive pool. This value should be configured to be at most 1400.
- maxFrameSize
-
UInt32
unsigned int
uint32_t
A UINT16 value specifying the max size of the frame defined by the VPN protocol encapsulation without counting the outerTunnelTransport. This is also the size of the IVpnPacketBuffers in the Send pool. This value should be configured as mtuSize + [size of encapsulation headers], and should be <=1500. If it would be greater than 1500 either mtuSize or encapsulation header size should be reduced as the platform limits the framesize to 1500.
- reserved
-
Boolean
bool
Reserved.
A list of IInspectable objects for socket transport. Each object can be a Windows.Networking.Sockets.DatagramSocket or a Windows.Networking.Sockets.StreamSocket. They will control the connection to the VPN server and will be used to send encapsulated IP packets and receive encapsulated data. The sockets must be unconnected at the point of the call.
- assignedTrafficFilters
- VpnTrafficFilterAssignment
A VpnTrafficFilterAssignment object, which allows the specification of traffic filters to a VPN channel.
- Attributes
Windows requirements
Device family |
Windows 10, version 1803 (introduced in 10.0.17134.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduced in v6.0)
|
App capabilities |
networkingVpnProvider
|
Applies to
StartWithTrafficFilter(IVectorView<HostName>, IVectorView<HostName>, VpnInterfaceId, VpnRouteAssignment, VpnDomainNameAssignment, UInt32, UInt32, Boolean, Object, Object, VpnTrafficFilterAssignment)
Creates the VPN channel to be used by the VPN plug-in. It also creates an L3 network interface for applications in the client machine to be able to see the corporate network. It allows the specification of traffic filters to use in per-app VPN scenarios.
public:
virtual void StartWithTrafficFilter(IVectorView<HostName ^> ^ assignedClientIpv4List, IVectorView<HostName ^> ^ assignedClientIpv6List, VpnInterfaceId ^ vpnInterfaceId, VpnRouteAssignment ^ assignedRoutes, VpnDomainNameAssignment ^ assignedNamespace, unsigned int mtuSize, unsigned int maxFrameSize, bool reserved, Platform::Object ^ mainOuterTunnelTransport, Platform::Object ^ optionalOuterTunnelTransport, VpnTrafficFilterAssignment ^ assignedTrafficFilters) = StartWithTrafficFilter;
void StartWithTrafficFilter(IVectorView<HostName> const& assignedClientIpv4List, IVectorView<HostName> const& assignedClientIpv6List, VpnInterfaceId const& vpnInterfaceId, VpnRouteAssignment const& assignedRoutes, VpnDomainNameAssignment const& assignedNamespace, uint32_t const& mtuSize, uint32_t const& maxFrameSize, bool const& reserved, IInspectable const& mainOuterTunnelTransport, IInspectable const& optionalOuterTunnelTransport, VpnTrafficFilterAssignment const& assignedTrafficFilters);
/// [Windows.Foundation.Metadata.Overload("StartWithTrafficFilter")]
void StartWithTrafficFilter(IVectorView<HostName> const& assignedClientIpv4List, IVectorView<HostName> const& assignedClientIpv6List, VpnInterfaceId const& vpnInterfaceId, VpnRouteAssignment const& assignedRoutes, VpnDomainNameAssignment const& assignedNamespace, uint32_t const& mtuSize, uint32_t const& maxFrameSize, bool const& reserved, IInspectable const& mainOuterTunnelTransport, IInspectable const& optionalOuterTunnelTransport, VpnTrafficFilterAssignment const& assignedTrafficFilters);
public void StartWithTrafficFilter(IReadOnlyList<HostName> assignedClientIpv4List, IReadOnlyList<HostName> assignedClientIpv6List, VpnInterfaceId vpnInterfaceId, VpnRouteAssignment assignedRoutes, VpnDomainNameAssignment assignedNamespace, uint mtuSize, uint maxFrameSize, bool reserved, object mainOuterTunnelTransport, object optionalOuterTunnelTransport, VpnTrafficFilterAssignment assignedTrafficFilters);
[Windows.Foundation.Metadata.Overload("StartWithTrafficFilter")]
public void StartWithTrafficFilter(IReadOnlyList<HostName> assignedClientIpv4List, IReadOnlyList<HostName> assignedClientIpv6List, VpnInterfaceId vpnInterfaceId, VpnRouteAssignment assignedRoutes, VpnDomainNameAssignment assignedNamespace, uint mtuSize, uint maxFrameSize, bool reserved, object mainOuterTunnelTransport, object optionalOuterTunnelTransport, VpnTrafficFilterAssignment assignedTrafficFilters);
function startWithTrafficFilter(assignedClientIpv4List, assignedClientIpv6List, vpnInterfaceId, assignedRoutes, assignedNamespace, mtuSize, maxFrameSize, reserved, mainOuterTunnelTransport, optionalOuterTunnelTransport, assignedTrafficFilters)
Public Sub StartWithTrafficFilter (assignedClientIpv4List As IReadOnlyList(Of HostName), assignedClientIpv6List As IReadOnlyList(Of HostName), vpnInterfaceId As VpnInterfaceId, assignedRoutes As VpnRouteAssignment, assignedNamespace As VpnDomainNameAssignment, mtuSize As UInteger, maxFrameSize As UInteger, reserved As Boolean, mainOuterTunnelTransport As Object, optionalOuterTunnelTransport As Object, assignedTrafficFilters As VpnTrafficFilterAssignment)
Parameters
- assignedClientIpv4List
A list of Windows.Networking.HostName objects specifying the IPv4 address(es) assigned by the VPN server to the VPN client, and which should be set on the VPN L3 interface. If null, DHCPv4 is used.
- assignedClientIpv6List
A list of Windows.Networking.HostName objects specifying the IPv6 address(es) assigned by the VPN server to the VPN client, and which should be set on the VPN L3 interface. If null, DHCPv6 or RD is used.
- vpnInterfaceId
- VpnInterfaceId
A VpnInterfaceId object.
- assignedRoutes
- VpnRouteAssignment
A Windows.Networking.VpnRouteAssignment object that represents the routes that should be associated / not associated with the VPN interface.
- assignedNamespace
- VpnDomainNameAssignment
A Windows.Networking.DomainNameAssignment object that represents the list of name prefixes that are associated with the VPN channel, including its DNS and proxy servers.
- mtuSize
-
UInt32
unsigned int
uint32_t
A UINT16 value specifying the MTU size of the VPN L3 network interface. This is also the size of the IVpnPacketBuffers in the Receive pool. This value should be configured to be at most 1400.
- maxFrameSize
-
UInt32
unsigned int
uint32_t
A UINT16 value specifying the max size of the frame defined by the VPN protocol encapsulation without counting the outerTunnelTransport. This is also the size of the IVpnPacketBuffers in the Send pool. This value should be configured as mtuSize + [size of encapsulation headers], and should be <=1500. If it would be greater than 1500 either mtuSize or encapsulation header size should be reduced as the platform limits the framesize to 1500.
- reserved
-
Boolean
bool
Reserved.
- mainOuterTunnelTransport
-
Object
Platform::Object
IInspectable
An IInspectable object for socket transport. This object can be a Windows.Networking.Sockets.DatagramSocket or a Windows.Networking.Sockets.StreamSocket. This socket will control the connection to the VPN server and will be used to send encapsulated IP packets and receive encapsulated data. The socket must be unconnected at the point of the call.
- optionalOuterTunnelTransport
-
Object
Platform::Object
IInspectable
An optional IInspectable object for socket transport. This object can be a Windows.Networking.Sockets.DatagramSocket or a Windows.Networking.Sockets.StreamSocket. This socket will control the connection to the VPN server and will be used to send encapsulated IP packets and receive encapsulated data.
- assignedTrafficFilters
- VpnTrafficFilterAssignment
A VpnTrafficFilterAssignment object, which allows the specification of traffic filters to a VPN channel.
- Attributes
Windows requirements
App capabilities |
networkingVpnProvider
|