2010-05-23 5 views

Antwort

4

Sie können die IP-Adresse des Clients erhalten die HttpRequest.UserHostAddress property (eine Instanz zugegriffen werden kann this.Request von jeder Seite oder Verwendung statische Eigenschaft HttpContext.Current verwenden) verwenden.

Soweit ich weiß, gibt es keine Standardmethode, die die IP-Adresse mit einem bestimmten Bereich vergleicht, daher müssen Sie dieses Bit selbst implementieren.

Sie werden wahrscheinlich diese für jede Anforderung überprüfen möchten, die entweder in der OnInit Methode jeder Seite getan werden kann (die Sie blockieren möchten) oder in der BeginRequest event der Anwendung (in der Regel in Global.asax).

Wenn Sie eine gesperrte Adresse ermitteln, können Sie die Ausgabe ein leerer (Platzhalter) Seite Server.Transfer method (Response.End eine weitere Alternative wäre verwenden, aber das schneidet einfach die Seite - eine leere Seite zurückkehren, während Server.Transfer Sie die Ausgabe auf einige Nachricht erlaubt der Kunde).

+0

ich weiß, wie es zu bekommen, aber ich weiß nicht kn wie man es blockiert. Ich bin nicht sehr vertraut mit asp.net – FinalDestiny

+1

Auch sollte dies auf einem HttpModule getan werden, da Sie keine Ressourcen Ihres Webservers durch Verarbeitung unnötig benötigen die Anfrage, wenn die IP blockiert ist. – Anero

+0

@FinalDestiny: Der Rest der Antwort hinzugefügt :-) –

4

Wenn Sie mit "Block" meinen, "lassen Sie sie meinen Server nicht belästigen", ist dies kein asp.net Problem, Sie benötigen eine Firewall (Software oder Hardware).

Wenn, was Sie mit „Block“ ist „nicht zeigen, meine Seiten“:

' pseudocode, I haven't checked the exact syntax 

Sub Page_Load() 
    If HttpRequest.UserHostAddress = "123.123.123.1" then 
     Response.Redirect "404.htm" ' send them elsewhere 
    end if 
End Sub 
+0

+1 für den Vorschlag, diese Art von Sache auf der Firewall-Ebene zu behandeln, anstatt auf der Software-Ebene, wenn möglich. –

0

Sie erwähnen Sie sind nicht mit dem ASP.NET vertraut gemacht, so, vielleicht dieses ausgezeichnete Artikel von Rick kann Ihnen helfen, da es als ganzer Artikel auf, wie IP-Adressen zu blockieren und sogar einen Admin-Bereich, sie zu verwalten hat ...

http://www.west-wind.com/WebLog/posts/59731.aspx

Verwandte Themen