
A captive portal is a web page accessed with a
web browser
A web browser, often shortened to browser, is an application for accessing websites. When a user requests a web page from a particular website, the browser retrieves its files from a web server and then displays the page on the user's scr ...
that is displayed to newly connected users of a
Wi-Fi
Wi-Fi () is a family of wireless network protocols based on the IEEE 802.11 family of standards, which are commonly used for Wireless LAN, local area networking of devices and Internet access, allowing nearby digital devices to exchange data by ...
or wired network before they are granted broader access to network resources. Captive portals are commonly used to present a landing or log-in page which may require
authentication
Authentication (from ''authentikos'', "real, genuine", from αὐθέντης ''authentes'', "author") is the act of proving an Logical assertion, assertion, such as the Digital identity, identity of a computer system user. In contrast with iden ...
,
payment
A payment is the tender of something of value, such as money or its equivalent, by one party (such as a person or company) to another in exchange for goods or services provided by them, or to fulfill a legal obligation or philanthropy desir ...
, acceptance of an
end-user license agreement
An end-user license agreement or EULA () is a legal contract between a software supplier and a customer or end-user.
The practice of selling licenses to rather than copies of software predates the recognition of software copyright, which has ...
/
acceptable use policy, survey completion, or other valid credentials that both the host and user agree to adhere by. Captive portals are used for a broad range of mobile and pedestrian broadband services – including cable and commercially provided Wi-Fi and home hotspots. A captive portal can also be used to provide access to enterprise or residential wired networks, such as apartment houses, hotel rooms, and business centers.
The captive portal is presented to the client and is stored either at the
gateway or on a
web server
A web server is computer software and underlying Computer hardware, hardware that accepts requests via Hypertext Transfer Protocol, HTTP (the network protocol created to distribute web content) or its secure variant HTTPS. A user agent, co ...
hosting the web page. Depending on the feature set of the gateway, websites or
TCP ports can be allow-listed so that the user would not have to interact with the captive portal in order to use them. The
MAC address
A MAC address (short for medium access control address or media access control address) is a unique identifier assigned to a network interface controller (NIC) for use as a network address in communications within a network segment. This use i ...
of attached clients can also be used to bypass the login process for specified devices.
WISPr refers to this web browser-based authentication method as the Universal Access Method (UAM).
Uses
Captive portals are primarily used in open wireless networks where the users are shown a welcome message informing them of the conditions of access (allowed ports, liability, etc.). Administrators tend to do this so that their own users take responsibility for their actions and to avoid any legal responsibility. Whether this delegation of responsibility is legally valid is a matter of debate. Some networks may also require entering the user's cell phone number or identity information so that administrators can provide information to authorities in case there was illegal activity on the network.
Often captive portals are used for marketing and commercial communication purposes. Access to the
Internet
The Internet (or internet) is the Global network, global system of interconnected computer networks that uses the Internet protocol suite (TCP/IP) to communicate between networks and devices. It is a internetworking, network of networks ...
over open Wi-Fi is prohibited until the user exchanges personal data by filling out a web-based registration form in a web browser. The web-based form either automatically opens in a web browser, or appears when the user opens a web browser and tries to visit any web page. In other words, the user is "captive" - unable to access the Internet freely until the user is granted access to the Internet and has "completed" the captive portal. This allows the provider of this service to display or send advertisements to users who connect to the Wi-Fi access point. This type of service is also sometimes known as "social Wi-Fi", as they may ask for a
social network
A social network is a social structure consisting of a set of social actors (such as individuals or organizations), networks of Dyad (sociology), dyadic ties, and other Social relation, social interactions between actors. The social network per ...
account to login (such as
Facebook
Facebook is a social media and social networking service owned by the American technology conglomerate Meta Platforms, Meta. Created in 2004 by Mark Zuckerberg with four other Harvard College students and roommates, Eduardo Saverin, Andre ...
). Over the past few years, such social Wi-Fi captive portals have become commonplace with various companies offering marketing centered around Wi-Fi data collection.
The user can find many types of content in the captive portal, and it's frequent to allow access to the Internet in exchange for viewing content or performing a certain action (often, providing personal data to enable commercial contact); thus, the marketing use of the captive portal is a tool for lead generation (business contacts or potential clients).
Implementation
There are various ways to implement a captive portal.
HTTP redirect
A common method is to direct all
World Wide Web
The World Wide Web (WWW or simply the Web) is an information system that enables Content (media), content sharing over the Internet through user-friendly ways meant to appeal to users beyond Information technology, IT specialists and hobbyis ...
traffic to a web server, which returns an
HTTP redirect to a captive portal. When a modern, Internet-enabled device first connects to a network, it sends out an HTTP request to a detection URL predefined by its vendor and expects an
HTTP status code 200 OK or 204 No Content. If the device receives a HTTP 2xx status code, it assumes it has unlimited internet access. Captive portal prompts are displayed when you are able to manipulate this first HTTP message to return a HTTP status code of 302 (redirect) to the captive portal of your choice. specifies the 511 Network Authentication Required status code.
ICMP redirect
Client traffic can also be redirected using
ICMP redirect on the layer 3 level.
Redirect by DNS
When a client requests a resource on a remote host by name,
DNS is queried to resolve that hostname. In a captive portal, the
firewall will make sure that only the DNS server(s) provided by the network's DHCP can be used by unauthenticated clients (or, alternatively, it will forward all DNS requests by unauthenticated clients to that DNS server). This DNS server will return the IP address of the captive portal page as a result of all DNS lookups.
In order to perform redirection by DNS the captive portal uses
DNS hijacking to perform an action similar to a
man-in-the-middle attack. To limit the impact of DNS poisoning, a
TTL of 0 is typically used.
Captive Portal API
introduces a standardized method for networks to inform clients about the presence of Captive Portal API endpoints using
DHCP (both IPv4 and
DHCPv6) options and IPv6
NDP router advertisements. RFC 8910 was implemented in
systemd-networkd v254 in July 2023.
NetworkManager discussions have also explored using them for captive portal interactions.
Detection
Captive portal detection URLs typically return a minimal, standardized response when not behind a captive portal. When the device receives the expected response, it concludes that it has direct internet access. If the response is different, the device assumes it is behind a captive portal and triggers the captive portal login process.
Limitations
Security
Captive portals have been known to have incomplete firewall rule setssuch as outbound ports being left openthat allow clients to circumvent the portal.
DNS tunneling
In some deployments, the rule set will route DNS requests from clients to the Internet, or the provided DNS server will fulfill arbitrary DNS requests from the client. This allows a client to bypass the captive portal and access the open Internet by
tunneling arbitrary traffic within DNS packets.
Automatic submission
Some captive portals may be configured to allow appropriately equipped user agents to detect the captive portal and automatically authenticate. User agents and supplemental applications such as Apple's Captive Portal Assistant can sometimes transparently bypass the display of captive portal content against the wishes of the service operator as long as they have access to correct credentials, or they may attempt to authenticate with incorrect or obsolete credentials, resulting in unintentional consequences such as accidental account locking.
MAC spoofing
A captive portal that uses MAC addresses to track connected devices can sometimes be circumvented by re-using the MAC address of a previously authenticated device. Once a device has been authenticated to the captive portal using valid credentials, the gateway adds that device's MAC address to its allowlist; since MAC addresses can easily be spoofed, any other device can pretend to be the authenticated device and bypass the captive portal. Once the IP and MAC addresses of other connecting computers are found to be authenticated, any machine can spoof the MAC address and
Internet Protocol (IP) address of the authenticated target, and be allowed a route through the gateway. For this reason some captive portal solutions created extended authentication mechanisms to limit the risk for usurpation.
Require web browser
Captive portals often require the use of a web browser; users who first use an email client or other application that relies on the Internet may find the connection not working without explanation, and will then need to open a web browser to validate. This may be problematic for users who do not have any web browser installed on their
operating system
An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ...
. It is however sometimes possible to use email and other facilities that do not rely on DNS (e.g. if the application specifies the connection IP address rather than the hostname). A similar problem can occur if the client uses
AJAX
Ajax may refer to:
Greek mythology and tragedy
* Ajax the Great, a Greek mythological hero, son of King Telamon and Periboea
* Ajax the Lesser, a Greek mythological hero, son of Oileus, the king of Locris
* Ajax (play), ''Ajax'' (play), by the an ...
or joins the network with pages already loaded into its web browser, causing
undefined behavior (for example, corrupt messages appear) when such a page tries HTTP requests to its origin server.
Similarly, as HTTPS connections cannot be redirected (at least not without triggering security warnings), a web browser that only attempts to access secure websites before being authorized by the captive portal will see those attempts fail without explanation (the usual symptom is that the intended website appears to be down or inaccessible).
Platforms that have
Wi-Fi
Wi-Fi () is a family of wireless network protocols based on the IEEE 802.11 family of standards, which are commonly used for Wireless LAN, local area networking of devices and Internet access, allowing nearby digital devices to exchange data by ...
and a
TCP/IP stack but do not have a web browser that supports
HTTPS
Hypertext Transfer Protocol Secure (HTTPS) is an extension of the Hypertext Transfer Protocol (HTTP). It uses encryption for secure communication over a computer network, and is widely used on the Internet. In HTTPS, the communication protoc ...
cannot use many captive portals. Such platforms include the
Nintendo DS
The is a foldable handheld game console produced by Nintendo, released globally across 2004 and 2005. The DS, an initialism for "Developers' System" or "Dual Screen", introduced distinctive new features to handheld games: two LCD screens worki ...
running a game that uses
Nintendo Wi-Fi Connection. Non-browser authentication is possible using
WISPr, an
XML
Extensible Markup Language (XML) is a markup language and file format for storing, transmitting, and reconstructing data. It defines a set of rules for encoding electronic document, documents in a format that is both human-readable and Machine-r ...
-based authentication protocol for this purpose, or MAC-based authentication or authentications based on other protocols.
It is also possible for a platform vendor to enter into a service contract with the operator of a large number of captive portal hotspots to allow free or discounted access to the platform vendor's servers via the hotspot's
walled garden. For example, in 2005 Nintendo and
Wayport partnered to provide free Wi-Fi access to Nintendo DS users at certain
McDonald's
McDonald's Corporation, doing business as McDonald's, is an American Multinational corporation, multinational fast food chain store, chain. As of 2024, it is the second largest by number of locations in the world, behind only the Chinese ch ...
restaurants.
Also,
VoIP
Voice over Internet Protocol (VoIP), also known as IP telephony, is a set of technologies used primarily for voice communication sessions over Internet Protocol (IP) networks, such as the Internet. VoIP enables voice calls to be transmitted as ...
and
SIP ports could be allowed to bypass the gateway to allow phones to make and receive calls.
See also
*
HTTP proxy
*
Proximity marketing
*
Mobile location analytics
References
External links
Android Captive Portal Setup* {{IETF RFC, 8910 Captive-Portal Identification in DHCP and Router Advertisements (RAs)
Captive Portal Solutions Captive WiFi
Computer network security
Web technology
Wireless access points