diff --git a/Emby.Server.Implementations/ApplicationHost.cs b/Emby.Server.Implementations/ApplicationHost.cs
index a39baa84ab..7699faf14e 100644
--- a/Emby.Server.Implementations/ApplicationHost.cs
+++ b/Emby.Server.Implementations/ApplicationHost.cs
@@ -1510,7 +1510,7 @@ namespace Emby.Server.Implementations
return GetLocalApiUrl(ipAddress.ToString());
}
- ///
+ ///
public string GetLocalApiUrl(ReadOnlySpan host)
{
var url = new StringBuilder(64);
@@ -1559,7 +1559,7 @@ namespace Emby.Server.Implementations
}
}
- var valid = await IsIpAddressValidAsync(address, cancellationToken).ConfigureAwait(false);
+ var valid = await IsLocalIpAddressValidAsync(address, cancellationToken).ConfigureAwait(false);
if (valid)
{
resultList.Add(address);
@@ -1593,7 +1593,7 @@ namespace Emby.Server.Implementations
private readonly ConcurrentDictionary _validAddressResults = new ConcurrentDictionary(StringComparer.OrdinalIgnoreCase);
- private async Task IsIpAddressValidAsync(IPAddress address, CancellationToken cancellationToken)
+ private async Task IsLocalIpAddressValidAsync(IPAddress address, CancellationToken cancellationToken)
{
if (address.Equals(IPAddress.Loopback)
|| address.Equals(IPAddress.IPv6Loopback))
diff --git a/MediaBrowser.Controller/IServerApplicationHost.cs b/MediaBrowser.Controller/IServerApplicationHost.cs
index d999f76dbf..8537e41800 100644
--- a/MediaBrowser.Controller/IServerApplicationHost.cs
+++ b/MediaBrowser.Controller/IServerApplicationHost.cs
@@ -56,29 +56,33 @@ namespace MediaBrowser.Controller
string FriendlyName { get; }
///
- /// Gets the local ip address.
+ /// Gets all the local IP addresses of this API instance. Each address is validated by sending a 'ping' request
+ /// to the API that should exist at the address.
///
- /// The local ip address.
+ /// A cancellation token that can be used to cancel the task.
+ /// A list containing all the local IP addresses of the server.
Task> GetLocalIpAddresses(CancellationToken cancellationToken);
///
- /// Gets the local API URL.
+ /// Gets a local (LAN) URL that can be used to access the API. The hostname used is the first valid configured
+ /// IP address that can be found via .
///
- /// The local API URL.
+ /// A cancellation token that can be used to cancel the task.
+ /// The server URL.
Task GetLocalApiUrl(CancellationToken cancellationToken);
///
- /// Gets the local API URL.
+ /// Gets a local (LAN) URL that can be used to access the API.
///
- /// The hostname.
- /// The local API URL.
+ /// The hostname to use in the URL.
+ /// The API URL.
string GetLocalApiUrl(ReadOnlySpan hostname);
///
- /// Gets the local API URL.
+ /// Gets a local (LAN) URL that can be used to access the API.
///
- /// The IP address.
- /// The local API URL.
+ /// The IP address to use as the hostname in the URL.
+ /// The API URL.
string GetLocalApiUrl(IPAddress address);
///