diff --git a/ProjectLighthouse.Servers.GameServer/Startup/GameServerStartup.cs b/ProjectLighthouse.Servers.GameServer/Startup/GameServerStartup.cs index 7ded20de..04b64283 100644 --- a/ProjectLighthouse.Servers.GameServer/Startup/GameServerStartup.cs +++ b/ProjectLighthouse.Servers.GameServer/Startup/GameServerStartup.cs @@ -1,3 +1,4 @@ +using System.Net; using LBPUnion.ProjectLighthouse.Configuration; using LBPUnion.ProjectLighthouse.Database; using LBPUnion.ProjectLighthouse.Logging; @@ -53,6 +54,11 @@ public class GameServerStartup options => { options.ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto; + foreach (KeyValuePair proxy in this.Configuration.GetSection("KnownProxies").AsEnumerable()) + { + if (proxy.Value == null) continue; + options.KnownProxies.Add(IPAddress.Parse(proxy.Value)); + } } ); } diff --git a/ProjectLighthouse.Servers.Website/Startup/WebsiteStartup.cs b/ProjectLighthouse.Servers.Website/Startup/WebsiteStartup.cs index b17da16d..453f8829 100644 --- a/ProjectLighthouse.Servers.Website/Startup/WebsiteStartup.cs +++ b/ProjectLighthouse.Servers.Website/Startup/WebsiteStartup.cs @@ -1,4 +1,5 @@ using System.Globalization; +using System.Net; using LBPUnion.ProjectLighthouse.Database; using LBPUnion.ProjectLighthouse.Localization; using LBPUnion.ProjectLighthouse.Middlewares; @@ -48,6 +49,11 @@ public class WebsiteStartup options => { options.ForwardedHeaders = ForwardedHeaders.XForwardedFor | ForwardedHeaders.XForwardedProto; + foreach (KeyValuePair proxy in this.Configuration.GetSection("KnownProxies").AsEnumerable()) + { + if (proxy.Value == null) continue; + options.KnownProxies.Add(IPAddress.Parse(proxy.Value)); + } } );