VpnChannel.StartWithTrafficFilter 方法

定义

重载

StartWithTrafficFilter(IIterable<HostName>, IIterable<HostName>, VpnInterfaceId, VpnRouteAssignment, VpnDomainNameAssignment, UInt32, UInt32, Boolean, IIterable<Object>, VpnTrafficFilterAssignment)

为 VPN 插件要使用的任意数量的传输创建 VPN 通道。 它还为客户端计算机中的应用程序创建 L3 网络接口,以便能够查看公司网络。 它允许在每应用 VPN 方案中使用流量筛选器的规范。

StartWithTrafficFilter(IVectorView<HostName>, IVectorView<HostName>, VpnInterfaceId, VpnRouteAssignment, VpnDomainNameAssignment, UInt32, UInt32, Boolean, Object, Object, VpnTrafficFilterAssignment)

创建 VPN 插件要使用的 VPN 通道。 它还为客户端计算机中的应用程序创建 L3 网络接口,以便能够查看公司网络。 它允许在每应用 VPN 方案中使用流量筛选器的规范。

StartWithTrafficFilter(IIterable<HostName>, IIterable<HostName>, VpnInterfaceId, VpnRouteAssignment, VpnDomainNameAssignment, UInt32, UInt32, Boolean, IIterable<Object>, VpnTrafficFilterAssignment)

为 VPN 插件要使用的任意数量的传输创建 VPN 通道。 它还为客户端计算机中的应用程序创建 L3 网络接口,以便能够查看公司网络。 它允许在每应用 VPN 方案中使用流量筛选器的规范。

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)

参数

assignedClientIpv4Addresses

IIterable<HostName>

IEnumerable<HostName>

指定由 VPN 服务器) 分配给 VPN 客户端的 IPv4 地址 (的 Windows.Networking.HostName 对象的列表。 应在 VPN L3 接口上设置 (es) 地址。 如果为 null,则使用 DHCPv4。

assignedClientIpv6Addresses

IIterable<HostName>

IEnumerable<HostName>

指定 VPN 服务器) 分配给 VPN 客户端的 IPv6 地址 (的 Windows.Networking.HostName 对象的列表,这些地址应设置在 VPN L3 接口上。 如果为 null,则使用 DHCPv6 或 RD。

vpninterfaceId
VpnInterfaceId

VpnInterfaceId 对象。

assignedRoutes
VpnRouteAssignment

一个 Windows.Networking.VpnRouteAssignment 对象,表示应关联/不与 VPN 接口关联的路由。

assignedNamespace
VpnDomainNameAssignment

一个 Windows.Networking.DomainNameAssignment 对象,该对象表示与 VPN 通道(包括其 DNS 和代理服务器)关联的名称前缀列表。

mtuSize
UInt32

unsigned int

uint32_t

指定 VPN L3 网络接口的 MTU 大小的 UINT16 值。 这也是接收池中 IVpnPacketBuffers 的大小。 此值应配置为最多 1400。

maxFrameSize
UInt32

unsigned int

uint32_t

一个 UINT16 值,该值指定由 VPN 协议封装定义的帧的最大大小,而不对 outerTunnelTransport 进行计数。 这也是发送池中 IVpnPacketBuffers 的大小。 此值应配置为 mtuSize + [封装标头的大小],并且应为 <=1500。 如果大于 1500,则 mtuSize 或封装标头大小应减小,因为平台将帧大小限制为 1500。

reserved
Boolean

bool

保留。

transports

IIterable<Object>

IEnumerable<Object>

IIterable<Platform::Object>

IIterable<IInspectable>

用于套接字传输的 IInspectable 对象列表。 每个对象可以是 Windows.Networking.Sockets.DatagramSocketWindows.Networking.Sockets.StreamSocket。 它们将控制与 VPN 服务器的连接,并用于发送封装的 IP 数据包和接收封装的数据。 套接字必须在调用时未连接。

assignedTrafficFilters
VpnTrafficFilterAssignment

一个 VpnTrafficFilterAssignment 对象,它允许规范 VPN 通道的流量筛选器。

属性

Windows 要求

设备系列
Windows 10, version 1803 (在 10.0.17134.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v6.0 中引入)
应用功能
networkingVpnProvider

适用于

StartWithTrafficFilter(IVectorView<HostName>, IVectorView<HostName>, VpnInterfaceId, VpnRouteAssignment, VpnDomainNameAssignment, UInt32, UInt32, Boolean, Object, Object, VpnTrafficFilterAssignment)

创建 VPN 插件要使用的 VPN 通道。 它还为客户端计算机中的应用程序创建 L3 网络接口,以便能够查看公司网络。 它允许在每应用 VPN 方案中使用流量筛选器的规范。

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)

参数

assignedClientIpv4List

IVectorView<HostName>

IReadOnlyList<HostName>

指定由 VPN 服务器分配给 VPN 客户端的 IPv4 地址 () es 的 Windows.Networking.HostName 对象的列表,应在 VPN L3 接口上设置。 如果为 null,则使用 DHCPv4。

assignedClientIpv6List

IVectorView<HostName>

IReadOnlyList<HostName>

指定 VPN 服务器) 分配给 VPN 客户端的 IPv6 地址 (的 Windows.Networking.HostName 对象的列表,这些地址应设置在 VPN L3 接口上。 如果为 null,则使用 DHCPv6 或 RD。

vpnInterfaceId
VpnInterfaceId

VpnInterfaceId 对象。

assignedRoutes
VpnRouteAssignment

一个 Windows.Networking.VpnRouteAssignment 对象,表示应关联/不与 VPN 接口关联的路由。

assignedNamespace
VpnDomainNameAssignment

一个 Windows.Networking.DomainNameAssignment 对象,该对象表示与 VPN 通道(包括其 DNS 和代理服务器)关联的名称前缀列表。

mtuSize
UInt32

unsigned int

uint32_t

指定 VPN L3 网络接口的 MTU 大小的 UINT16 值。 这也是接收池中 IVpnPacketBuffers 的大小。 此值应配置为最多 1400。

maxFrameSize
UInt32

unsigned int

uint32_t

一个 UINT16 值,该值指定由 VPN 协议封装定义的帧的最大大小,而不对 outerTunnelTransport 进行计数。 这也是发送池中 IVpnPacketBuffers 的大小。 此值应配置为 mtuSize + [封装标头的大小],并且应为 <=1500。 如果大于 1500,则 mtuSize 或封装标头大小应减小,因为平台将帧大小限制为 1500。

reserved
Boolean

bool

保留。

mainOuterTunnelTransport
Object

Platform::Object

IInspectable

用于套接字传输的 IInspectable 对象。 此对象可以是 Windows.Networking.Sockets.DatagramSocketWindows.Networking.Sockets.StreamSocket。 此套接字将控制与 VPN 服务器的连接,并用于发送封装的 IP 数据包和接收封装的数据。 套接字必须在调用时未连接。

optionalOuterTunnelTransport
Object

Platform::Object

IInspectable

用于套接字传输的可选 IInspectable 对象。 此对象可以是 Windows.Networking.Sockets.DatagramSocketWindows.Networking.Sockets.StreamSocket。 此套接字将控制与 VPN 服务器的连接,并用于发送封装的 IP 数据包和接收封装的数据。

assignedTrafficFilters
VpnTrafficFilterAssignment

一个 VpnTrafficFilterAssignment 对象,它允许规范 VPN 通道的流量筛选器。

属性

Windows 要求

应用功能
networkingVpnProvider

适用于