diff --git a/src/Moonglade.Web/WebApplicationBuilderExtension.cs b/src/Moonglade.Web/WebApplicationBuilderExtension.cs index 1c0f9f1c6..980ba5441 100644 --- a/src/Moonglade.Web/WebApplicationBuilderExtension.cs +++ b/src/Moonglade.Web/WebApplicationBuilderExtension.cs @@ -1,4 +1,5 @@ using System.Net; +using System.Net.Sockets; namespace Moonglade.Web; @@ -14,6 +15,12 @@ public static void WriteParameterTable(this WebApplicationBuilder builder) var ipEntry = Dns.GetHostEntry(strHostName); var ips = ipEntry.AddressList; + // get all IPv4 addresses + var ipv4s = ips.Where(p => p.AddressFamily == AddressFamily.InterNetwork).ToArray(); + + // get all IPv6 addresses + var ipv6s = ips.Where(p => p.AddressFamily == AddressFamily.InterNetworkV6).ToArray(); + var envName = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"); var dic = new Dictionary @@ -22,7 +29,9 @@ public static void WriteParameterTable(this WebApplicationBuilder builder) { "System", Helper.TryGetFullOSVersion() }, { "User", Environment.UserName }, { "Host", Environment.MachineName }, - { "IP", string.Join(", ", ips.Select(p => p.ToString())) }, + { "IPv4", string.Join(", ", ipv4s.Select(p => p.ToString())) }, + { "IPv6", string.Join(", ", ipv6s.Select(p => p.ToString())) }, + { "URLs", builder.Configuration["Urls"]! }, { "Database", builder.Configuration.GetConnectionString("DatabaseType")! }, { "Image storage", builder.Configuration["ImageStorage:Provider"]! }, { "Authentication", builder.Configuration["Authentication:Provider"]! },