WAN Address should use public ports instead of local ports.

https://github.com/jellyfin/jellyfin/issues/601#issuecomment-475941080
This commit is contained in:
Phlogi 2019-03-24 11:59:40 +01:00 committed by GitHub
parent 0e787f4e9f
commit 414a318a0d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1476,7 +1476,7 @@ namespace Emby.Server.Implementations
CancellationToken = cancellationToken
}).ConfigureAwait(false))
{
return GetLocalApiUrl(response.ReadToEnd().Trim());
return GetWanApiUrl(response.ReadToEnd().Trim());
}
}
catch (Exception ex)
@ -1493,16 +1493,45 @@ namespace Emby.Server.Implementations
return GetLocalApiUrl("[" + ipAddress.Address + "]");
}
return GetLocalApiUrl(ipAddress.Address);
return GetLocalApiUrlWithPort(ipAddress.Address);
}
public string GetLocalApiUrl(string host)
public string GetLocalApiUrlWithPort(string host)
{
if (EnableHttps)
{
return string.Format("http://{0}:{1}",
host,
HttpsPort.ToString(CultureInfo.InvariantCulture));
}
return string.Format("http://{0}:{1}",
host,
HttpPort.ToString(CultureInfo.InvariantCulture));
host,
HttpPort.ToString(CultureInfo.InvariantCulture));
}
public string GetWanApiUrl(IpAddressInfo ipAddress)
{
if (ipAddress.AddressFamily == IpAddressFamily.InterNetworkV6)
{
return GetLocalApiUrl("[" + ipAddress.Address + "]");
}
return GetWanApiUrlWithPort(ipAddress.Address);
}
public string GetWanApiUrlWithPort(string host)
{
if (EnableHttps)
{
return string.Format("http://{0}:{1}",
host,
ServerConfiguration.PublicHttpsPort.ToString(CultureInfo.InvariantCulture));
}
return string.Format("http://{0}:{1}",
host,
ServerConfiguration.PublicPort.ToString(CultureInfo.InvariantCulture));
}
public Task<List<IpAddressInfo>> GetLocalIpAddresses(CancellationToken cancellationToken)
{
return GetLocalIpAddressesInternal(true, 0, cancellationToken);