Frage

Ich schreibe eine Anwendung, die große Dateien im Hintergrund herunterlädt.Alle Clients sind lokal oder über ein VPN angemeldet.Wenn sie lokal angemeldet sind, möchte ich die Downloads nicht drosseln.Allerdings würde ich gerne Downloads auf 10 KBit/s begrenzen, wenn der Benutzer über VPN verbunden ist.Ich kann diese Benutzer anhand des IP-Adressbereichs unterscheiden.

Da es sich um eine AIR-Anwendung handelt, gehe ich davon aus, dass ich die Drosselung über die Serverseite vornehmen werde, da ich dies entweder vom Server selbst (IIS 6) oder vom Webdienst (asp.net/C#) aus tun kann.

Die Drosselung durch IIS 6 scheint gut zu funktionieren, aber es sieht so aus, als müsste sie auf der gesamten Website durchgeführt werden.Gibt es überhaupt eine Möglichkeit, dies über IP zu tun?Oder muss ich das in .NET einrichten?

War es hilfreich?

Lösung

Mein erster Gedanke ist dieser.Ich weiß nicht, ob es funktionieren würde, aber es würde nur ein paar Minuten dauern, es zu versuchen.

Erstellen zwei IIS-Websites auf demselben Server.Die erste Site ist an die öffentliche IP gebunden, die zweite Site jedoch an die private IP.Beide verweisen auf denselben Ordner im Dateisystem.

Ihre VPN-Benutzer greifen über die private IP zu, sodass Sie auf dieser Site eine „standortweite“ Regel einrichten können, die nur VPN-Benutzer betrifft.Dies sollte für fast jede IIS6-Einstellung funktionieren, einschließlich Bandbreitendrosselung.

Zumindest einen Versuch wert.

-- Bearbeiten:Habe es versucht und es hat einwandfrei funktioniert.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top