<!--
{
  "availability" : [
    "iOS: 26.0.0 -",
    "iPadOS: 26.0.0 -",
    "macCatalyst: 26.0.0 -",
    "macOS: 26.0.0 -",
    "tvOS: 26.0.0 -",
    "visionOS: 26.0.0 -",
    "watchOS: 26.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Network",
  "identifier" : "/documentation/Network/NWParametersProvider",
  "metadataVersion" : "0.1.0",
  "role" : "Protocol",
  "symbol" : {
    "kind" : "Protocol",
    "modules" : [
      "Network"
    ],
    "preciseIdentifier" : "s:7Network20NWParametersProviderP"
  },
  "title" : "NWParametersProvider"
}
-->

# NWParametersProvider

Types that conform to the NWParametersProvider protocol can be used to
generate an NWParameters.

```
protocol NWParametersProvider
```

## Topics

### Instance Properties

[`var parameters: NWParameters`](/documentation/Network/NWParametersProvider/parameters)

The generated NWParameters.

### Instance Methods

[`func constrainedPathsProhibited(Bool) -> Self`](/documentation/Network/NWParametersProvider/constrainedPathsProhibited(_:))

Prohibit using constrained paths.

[`func dnssecValidationRequired(Bool) -> Self`](/documentation/Network/NWParametersProvider/dnssecValidationRequired(_:))

Require DNSSEC validation when resolving an endpoint before making
a connection.

[`func expensivePathsProhibited(Bool) -> Self`](/documentation/Network/NWParametersProvider/expensivePathsProhibited(_:))

Prohibit using expensive paths.

[`func expiredDNSBehavior(NWParameters.ExpiredDNSBehavior) -> Self`](/documentation/Network/NWParametersProvider/expiredDNSBehavior(_:))

Allow or prohibit the use of expired DNS answers during connection establishment.

[`func fastOpenAllowed(Bool) -> Self`](/documentation/Network/NWParametersProvider/fastOpenAllowed(_:))

Allow fast open to be used on a connection.

[`func localEndpoint(NWEndpoint?) -> Self`](/documentation/Network/NWParametersProvider/localEndpoint(_:))

Specify a specific endpoint to use as the local endpoint.

[`func localEndpointReuseAllowed(Bool) -> Self`](/documentation/Network/NWParametersProvider/localEndpointReuseAllowed(_:))

Allow local endpoint reuse.

[`func localOnly(Bool) -> Self`](/documentation/Network/NWParametersProvider/localOnly(_:))

Limit inbound connections to peers attached to the local link.

[`func localPort(NWEndpoint.Port) -> Self`](/documentation/Network/NWParametersProvider/localPort(_:))

Specify a specific port to use as the local endpoint,
letting the system select the address.

[`func multipathServiceType(NWParameters.MultipathServiceType) -> Self`](/documentation/Network/NWParametersProvider/multipathServiceType(_:))

Set the multipath service to use for connections.

[`func noProxiesPreferred(Bool) -> Self`](/documentation/Network/NWParametersProvider/noProxiesPreferred(_:))

Prefer not using proxies when making connections.

[`func peerToPeerIncluded(Bool) -> Self`](/documentation/Network/NWParametersProvider/peerToPeerIncluded(_:))

Include peer-to-peer interfaces when connecting, listening, and browsing.

[`func prohibitedInterfaceTypes([NWInterface.InterfaceType]) -> Self`](/documentation/Network/NWParametersProvider/prohibitedInterfaceTypes(_:))

Prohibit certain interface types from being used to connect, listen, and browse.

[`func prohibitedInterfaces([NWInterface]) -> Self`](/documentation/Network/NWParametersProvider/prohibitedInterfaces(_:))

Prohibit certain interfaces from being used to connect, listen, and browse.

[`func requiredInterface(NWInterface) -> Self`](/documentation/Network/NWParametersProvider/requiredInterface(_:))

Require an interface when connecting, listening, and browsing.

[`func requiredInterfaceType(NWInterface.InterfaceType) -> Self`](/documentation/Network/NWParametersProvider/requiredInterfaceType(_:))

Require an interface type when connecting, listening, and browsing.

[`func serviceClass(NWParameters.ServiceClass) -> Self`](/documentation/Network/NWParametersProvider/serviceClass(_:))

Set the data service class to use for connections.

[`func ultraConstrainedPathsAllowed(Bool) -> Self`](/documentation/Network/NWParametersProvider/ultraConstrainedPathsAllowed(_:))

Allow connection to use interfaces considered ultra-constrained
by the system

## Relationships

### Conforming Types

[`NWParametersBuilder`](/documentation/Network/NWParametersBuilder)

[`NWParameters`](/documentation/Network/NWParameters)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)