Die IP-basierten Captive-Portale, die ich gesehen habe, funktionieren, indem sie die Ziel-IP-Adresse vor dem Weiterleiten des Pakets ändern ("umschreiben"). In Fällen, in denen das Captive-Portal mit dem Router identisch ist, wird das Paket anstelle der WAN-Seite an die interne Schnittstelle weitergeleitet.
Auf dem Weg zurück zur Captive-Maschine (dh zum Client) wird die Quell-IP umgeschrieben, sodass die Captive-Maschine denkt, dass sie mit ihrem ursprünglichen Ziel spricht. Suchen Sie online nach DNAT, wenn Sie mehr wissen möchten.
Randnotiz - es funktioniert gut für HTTP, verursacht aber Chaos für andere Apps wie IM.
Eine sauberere Lösung wäre, über der IP-Ebene zu arbeiten: Verwenden Sie einen transparenten HTTP-Proxy, der 301s an Captive-Maschinen ausgibt, und löschen Sie den gesamten Nicht-HTTP-Verkehr von Captive-Maschinen. Der Benutzer muss jedoch einen Browser verwenden, um seine Kreditkarte anzugeben Details (oder was auch immer sie aus der Gefangenschaft befreit.)