---
title: NERelayManager
framework: Network Extension
role: symbol
role_heading: Class
platforms: [iOS 17.0+, iPadOS 17.0+, Mac Catalyst 17.0+, macOS 14.0+, tvOS 17.0+, visionOS 1.0+]
path: networkextension/nerelaymanager
---

# NERelayManager

An object you use to create and manage a network relay configuration.

## Declaration

```swift
class NERelayManager
```

## Overview

Overview When your app starts up, access the shared instance of the relay manager, and load existing settings from the preferences using loadFromPreferences(completionHandler:). You can define your relay server configuration, and persist it by calling saveToPreferences(completionHandler:).

## Topics

### Managing relay configurations

- [shared()](networkextension/nerelaymanager/shared().md)
- [loadFromPreferences(completionHandler:)](networkextension/nerelaymanager/loadfrompreferences(completionhandler:).md)
- [saveToPreferences(completionHandler:)](networkextension/nerelaymanager/savetopreferences(completionhandler:).md)
- [removeFromPreferences(completionHandler:)](networkextension/nerelaymanager/removefrompreferences(completionhandler:).md)

### Accessing relay configuration properties

- [isEnabled](networkextension/nerelaymanager/isenabled.md)
- [relays](networkextension/nerelaymanager/relays.md)
- [matchDomains](networkextension/nerelaymanager/matchdomains.md)
- [excludedDomains](networkextension/nerelaymanager/excludeddomains.md)
- [localizedDescription](networkextension/nerelaymanager/localizeddescription.md)
- [onDemandRules](networkextension/nerelaymanager/ondemandrules.md)
- [NEOnDemandRule](networkextension/neondemandrule.md)

### Loading previously-used managers

- [loadAllManagersFromPreferences(completionHandler:)](networkextension/nerelaymanager/loadallmanagersfrompreferences(completionhandler:).md)

### Handling errors

- [NERelayErrorDomain](networkextension/nerelayerrordomain.md)
- [NERelayManagerError](networkextension/nerelaymanagererror.md)

### Instance Properties

- [excludedFQDNs](networkextension/nerelaymanager/excludedfqdns.md)
- [isDNSFailoverAllowed](networkextension/nerelaymanager/isdnsfailoverallowed.md)
- [isUIToggleEnabled](networkextension/nerelaymanager/isuitoggleenabled.md)
- [matchFQDNs](networkextension/nerelaymanager/matchfqdns.md)

### Instance Methods

- [getLastClientErrors(_:completionHandler:)](networkextension/nerelaymanager/getlastclienterrors(_:completionhandler:).md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Relay configuration

- [NERelay](networkextension/nerelay.md)
