Back to Aspnetcore

Breaking change: IPNetwork and ForwardedHeadersOptions.KnownNetworks are obsolete

aspnetcore/breaking-changes/10/ipnetwork-knownnetworks-obsolete.md

latest1.8 KB
Original Source

IPNetwork and ForwardedHeadersOptions.KnownNetworks are obsolete

xref:Microsoft.AspNetCore.HttpOverrides.IPNetwork?displayProperty=fullName and xref:Microsoft.AspNetCore.Builder.ForwardedHeadersOptions.KnownNetworks have been marked as obsolete in favor of using xref:System.Net.IPNetwork?displayProperty=fullName and KnownIPNetworks.

Version introduced

.NET 10 Preview 7

Previous behavior

Previously, you could use xref:Microsoft.AspNetCore.HttpOverrides.IPNetwork?displayProperty=fullName and xref:Microsoft.AspNetCore.Builder.ForwardedHeadersOptions.KnownNetworks to configure known networks for the forwarded headers middleware:

csharp
app.UseForwardedHeaders(new ForwardedHeadersOptions
{
    KnownNetworks.Add(new(IPAddress.Loopback, 8))
});

New behavior

Starting in .NET 10, if you use the obsolete APIs in your code, you'll get warning ASPDEPR005 at compile time:

warning ASPDEPR005: Please use KnownIPNetworks instead. For more information, visit https://aka.ms/aspnet/deprecate/005.

Use the xref:System.Net.IPNetwork?displayProperty=fullName type and KnownIPNetworks property instead.

Type of breaking change

This change can affect source compatibility.

Reason for change

xref:System.Net.IPNetwork?displayProperty=fullName has replaced the xref:Microsoft.AspNetCore.HttpOverrides.IPNetwork?displayProperty=fullName type that was implemented for xref:Microsoft.AspNetCore.HttpOverrides.ForwardedHeadersMiddleware.

Change to using xref:System.Net.IPNetwork?displayProperty=fullName and KnownIPNetworks.

Affected APIs