Heim > Backend-Entwicklung > C++ > Wie bekomme ich zuverlässig die echte IP -Adresse eines Benutzers in ASP.NET?

Wie bekomme ich zuverlässig die echte IP -Adresse eines Benutzers in ASP.NET?

Barbara Streisand
Freigeben: 2025-01-30 09:46:10
Original
731 Leute haben es durchsucht

How to Reliably Get a User's Real IP Address in ASP.NET?

genau bestimmen Benutzer -IP -Adressen in ASP.NET -Anwendungen

Die Herausforderung:

Zugriff auf die IP -Adresse des Benutzers unter Verwendung Request.UserHostAddress ergibt häufig die IP -Adresse des Internetdienstanbieters (ISP) des Benutzers und nicht deren tatsächliche Maschinen -IP. Diese Einschränkung ist erhebliche Probleme für Anwendungen, die eine präzise IP -Identifizierung erfordern, z. B. diejenigen, die den Download -Zugriff kontrollieren.

Eine robustere Lösung:

Ein zuverlässiger Ansatz beinhaltet die Nutzung der HTTP_X_FORWARDED_FOR Servervariablen. Diese Variable bietet eine genauere Darstellung der IP -Adresse des Benutzers, selbst wenn der Benutzer hinter einem Proxy -Server oder einem Netzwerkrouter steht.

Code -Implementierung:

Hier sind Code -Beispiele, die zeigen

c# Beispiel:

<code class="language-csharp">protected string GetTrueIPAddress()
{
    var context = System.Web.HttpContext.Current;
    string ipAddress = context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];

    if (!string.IsNullOrWhiteSpace(ipAddress))
    {
        return ipAddress.Split(',')[0].Trim();
    }

    return context.Request.ServerVariables["REMOTE_ADDR"];
}</code>
Nach dem Login kopieren

vb.net Beispiel:

<code class="language-vb.net">Public Shared Function GetTrueIPAddress() As String
    Dim context As System.Web.HttpContext = System.Web.HttpContext.Current
    Dim ipAddress As String = context.Request.ServerVariables("HTTP_X_FORWARDED_FOR")

    If Not String.IsNullOrWhiteSpace(ipAddress) Then
        Return ipAddress.Split(","c)(0).Trim()
    End If

    Return context.Request.ServerVariables("REMOTE_ADDR")
End Function</code>
Nach dem Login kopieren
Durch die Implementierung dieser verbesserten Methode können Ihre ASP.NET -Anwendungen unabhängig von Netzwerkkonfigurationen zuverlässig eindeutige Benutzer -IP -Adressen erhalten. Dies stellt eine genaue Benutzeridentifikation und -steuerung für Funktionen wie Download -Beschränkungen sicher.

Das obige ist der detaillierte Inhalt vonWie bekomme ich zuverlässig die echte IP -Adresse eines Benutzers in ASP.NET?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage