×

DNS-based captive portal with integrated transparent proxy to protect against user device caching incorrect IP address

  • US 9,756,019 B2
  • Filed: 05/15/2014
  • Issued: 09/05/2017
  • Est. Priority Date: 05/16/2013
  • Status: Active Grant
First Claim
Patent Images

1. A captive portal system for controlling access from user devices to an external network, the captive portal system comprising:

  • a storage device storing a login database, the login database specifying source addresses of user devices that are currently logged in;

    a web server coupled to the storage device and a computer network, and configured with an IP address accessible on the computer network; and

    a name server coupled to the storage device and the computer network, and operable to resolve domain names to IP addresses;

    wherein the name server is configured to;

    receive a DNS request from a user device to resolve a target domain name;

    query the login database to determine whether the user device is logged in according to a source address of the user device;

    respond to the DNS request with the IP address of the web server as a resolved IP address of the target domain name when the user device is not logged in; and

    respond to the DNS request with a correct IP address of the target domain name in response to the name server determining that the user device is logged in; and

    the web server is configured to;

    accept a connection request from the user device to the IP address of the web server, the connection request to the IP address of the web server occurring as a result of the name server previously determining the user device to not be logged in and the user device caching the IP address of the web server provided by the name server as the resolved IP address of the target domain name;

    receive an HTTP request specifying a non-local target URL from the user device over the connection, wherein the non-local target URL is not a URL provided by the web server;

    query the login database to determine whether the user device is logged in according to the source address of the user device;

    respond to the HTTP request by acting as a transparent proxy between the user device and the non-local target URL to thereby allow the user device to receive content of the non-local target URL in response to the web server determining that the user device is logged in; and

    respond to the HTTP request with alternate content different than that provided at the non-local target URL when the user device is not logged in.

View all claims
  • 3 Assignments
Timeline View
Assignment View
    ×
    ×