跳至主要内容

如何在 Starlink 上设置 Captive Portal:偏远地区与海上场所指南

本指南详细介绍了如何绕过原生 Starlink 硬件,并使用企业级路由设备集成云端托管的 Captive Portal。您将学习如何克服 CGNAT 限制、强制执行 VLAN 隔离、管理卫星带宽限制并确保合规性。

📖 5 分钟阅读📝 1,227 🔧 2 应用实例3 练习题📚 8 关键定义

收听本指南

查看播客转录
Speak in British English with a confident, authoritative, and conversational tone - like a senior consultant briefing a client. Measured pace, clear articulation, warm but professional. No filler words. Occasional brief pauses for emphasis: Welcome to the Purple Technical Briefing. I'm going to walk you through everything you need to know about setting up a captive portal on Starlink - specifically for remote venues, maritime operators, and anyone running guest WiFi where fibre simply isn't an option. [medium pause] Let's start with the problem. Starlink has genuinely changed the connectivity picture for venues that were previously stuck with slow, expensive satellite links or patchy 4G. A cruise vessel, a remote highland hotel, a construction site welfare unit, a festival site in a field - all of these can now get 100 to 220 megabits per second from a dish the size of a large pizza. That's remarkable. But here's the thing: raw connectivity is only half the job. The moment you put that connection in front of guests, passengers, or crew, you need authentication, access control, GDPR-compliant consent, and bandwidth management. Starlink doesn't give you any of that out of the box. That's where a captive portal comes in. And that's what we're going to build today. [medium pause] Section one: understanding the Starlink network constraints. Before you touch a router, you need to understand what Starlink actually gives you at the WAN interface. The standard Starlink dish connects to a proprietary router that handles DHCP and NAT. By default, you're behind carrier-grade NAT - what engineers call CGNAT. That means your WAN IP address is in the 100.64 to 100.127 range. It's not a public IP. You cannot receive inbound connections from the internet. And that matters enormously for captive portal architecture. The fix is bypass mode - sometimes called bridge mode. You enable this in the Starlink app under Settings, then toggle "Bypass Starlink WiFi router." Once enabled, the Starlink dish passes the CGNAT address directly to your enterprise router's WAN port. The Starlink router stops doing DHCP and NAT. Your router takes over. You're still behind CGNAT, but now you have full control of the routing layer. One critical point: if the Starlink dish is factory reset for any reason, bypass mode is disabled. You'll need to re-enable it. Build that into your site runbook. [medium pause] Now, Starlink offers three plan tiers relevant to venue operators. Standard gives you up to 100 megabits down, best-effort priority, and no static IP option. Business gives you up to 220 megabits, priority data allocation, and a static IP add-on. Maritime gives you the same speeds with global portability - essential if the vessel moves between ocean regions. For any multi-user venue, I'd recommend Business or Maritime as a minimum. Best-effort data on Standard means your guests get deprioritised whenever the satellite cell is congested. [medium pause] Section two: the architecture stack. Here's the four-layer stack you're building. Layer one is the Starlink uplink in bypass mode. Layer two is your enterprise router or firewall - Cisco Meraki, HPE Aruba, Ruckus, Juniper Mist, Ubiquiti UniFi, Fortinet - any of these work. Layer three is VLAN segmentation at the switch or access point level. Layer four is the cloud captive portal, which handles authentication, consent, and analytics. Let me spend a moment on VLAN segmentation because it's non-negotiable. You need at minimum three VLANs. VLAN 10 for staff - this carries your POS systems, back-office applications, and management traffic. VLAN 20 for guests - this is the internet-only segment that hits the captive portal. VLAN 30 for IoT - cameras, smart thermostats, building management systems. These three networks must not be able to talk to each other. Inter-VLAN routing should be blocked at the firewall. A guest on VLAN 20 must never be able to reach your POS terminal on VLAN 10. That's not just good practice - it's a PCI DSS requirement if you're processing card payments anywhere on the same physical infrastructure. [medium pause] The captive portal itself sits in the cloud. When a guest connects to your guest SSID and opens a browser, the router intercepts the HTTP request and redirects it to the portal login page. The guest authenticates - via email, social login, or a voucher code - accepts your terms of service, and the portal signals the router to grant that MAC address internet access. The whole flow should complete in under 10 seconds on a mobile device. With Purple, that cloud portal integrates directly with Cisco Meraki, HPE Aruba, Ruckus, Juniper Mist, Ubiquiti UniFi, Cambium, Extreme, and Fortinet. You configure the RADIUS or API integration once, and Purple handles the authentication handshake. No on-premise authentication server required. That's critical for remote venues where you cannot run a local RADIUS server. [medium pause] Section three: the CGNAT problem and how to solve it. Here's the challenge that catches most IT teams out. Standard captive portal architectures assume the cloud portal can reach back into your network. With CGNAT, that's impossible. Inbound connections are blocked. The solution is a reverse tunnel. Your router establishes an outbound connection to the cloud portal and keeps it open persistently. All authentication traffic flows through that tunnel. The cloud never needs to initiate an inbound connection. Purple's cloud overlay architecture handles this natively - you don't need to configure WireGuard or OpenVPN manually, though both are valid alternatives if you're running your own infrastructure. If you do need a static IP - for example, if you're running a RADIUS server on-site or need consistent IP allowlisting - Starlink Business and Maritime offer a static IP as an add-on. At the time of recording, that's available in most regions. Check Starlink's current plan pages for your specific territory. [medium pause] Section four: GDPR and data compliance. This is where remote and maritime venues often get caught out. The fact that your venue is on a vessel in international waters, or in a remote location, does not exempt you from GDPR if you're collecting data from EU residents. And if you're operating in UK waters post-Brexit, the UK GDPR applies. Your captive portal must present a specific, unticked consent checkbox for marketing communications. It must clearly state what data you're collecting, why, and how long you'll retain it. The terms of service must be accessible before the guest authenticates. And you must be able to demonstrate, on request, that a specific individual gave consent on a specific date and time. Purple is ISO 27001 certified, GDPR compliant, CCPA compliant, and Cyber Essentials certified. Every login event is logged with a timestamp, IP address, and consent record. That audit trail is what protects you if a regulator asks questions. [medium pause] Section five: bandwidth management. On Starlink, bandwidth is your most constrained resource. A single passenger streaming 4K video can consume 25 megabits per second continuously. On a vessel with 50 passengers and a 220 megabit connection, that's one person taking 11% of total capacity. You address this at the captive portal and router level. Set per-device bandwidth caps - for example, 5 megabits down and 2 megabits up per guest device. Implement fair-use policies that throttle after a daily data allowance. Use traffic shaping to prioritise web browsing and messaging over video streaming. And consider tiered access: a free tier for basic connectivity, a paid premium tier for streaming. That converts your WiFi from a cost line into a revenue stream. [medium pause] Now let me give you two real-world scenarios. Scenario one: a 120-cabin cruise vessel. The operator runs Starlink Maritime at 220 megabits. They deploy Cisco Meraki access points throughout the vessel with three VLANs - crew, passenger, and ship systems. Purple's captive portal handles passenger authentication via email or a cabin number lookup integrated with the PMS. Each passenger gets a 2-gigabyte daily allowance. Premium tier passengers get 10 gigabytes. The portal collects first-party email data for post-voyage marketing. Result: WiFi revenue covers the Starlink subscription cost, and the operator has a growing direct marketing list. Scenario two: a remote Highland hotel with no fibre. They run Starlink Business at 150 megabits average. HPE Aruba access points cover the main building and three outbuildings. Guests authenticate via email on Purple's portal. The hotel uses Purple's analytics to understand peak usage times and adjusts bandwidth policies accordingly. They've reduced guest WiFi complaints by 60% compared to their previous 4G bonding setup, according to their own operational data. [medium pause] Common pitfalls. Let me run through the five I see most often. One: forgetting to re-enable bypass mode after a dish reset. Document this in your runbook and set a monitoring alert on your router's WAN interface. Two: not blocking inter-VLAN routing. Every deployment I've reviewed that had a security incident had this misconfigured. Check it twice. Three: using HTTP redirect for the captive portal on a network where guests are using HTTPS-first browsers. Modern browsers default to HTTPS. Your router needs to handle the HTTPS intercept correctly, or guests will see certificate errors before they reach the portal. Purple's portal handles this, but your router configuration needs to be correct. Four: not testing on iOS and Android separately. Apple's Captive Network Assistant and Android's network probe behave differently. Test both before go-live. Five: ignoring latency. Starlink's LEO constellation delivers 20 to 40 millisecond latency - far better than traditional geostationary satellite. But during handoffs between satellites, you can see brief spikes. Your captive portal timeout settings need to account for this. Set session keepalive intervals to 60 seconds or less. [medium pause] Rapid-fire questions. Do I need a static IP for a captive portal on Starlink? No, if your portal uses a cloud-hosted architecture with reverse tunnelling. Yes, if you're running on-premise RADIUS. Can I run multiple SSIDs on Starlink? Yes - your enterprise access points handle SSID creation. Starlink in bypass mode just provides the uplink. You can run as many SSIDs as your access points support. Does Purple work with Starlink out of the box? Yes. You configure bypass mode on the Starlink dish, connect your supported access points, and point the RADIUS or API integration at Purple's cloud. The portal is live within the hour. What happens if the Starlink connection drops? Purple's portal caches active sessions locally on the router for a configurable period - typically 24 hours. Guests who are already authenticated stay online. New authentications queue until connectivity restores. [medium pause] To summarise. Starlink gives you the pipe. Your enterprise router in bypass mode gives you control of the routing layer. VLAN segmentation isolates your guest, staff, and IoT traffic. A cloud captive portal - Purple's, in this case - handles authentication, GDPR consent, bandwidth policy, and first-party data collection. The CGNAT constraint is solved by reverse tunnel architecture, not by static IP. And bandwidth management at the portal level is what keeps your Starlink connection usable for everyone. If you're evaluating this for your venue, the next step is to check which access point hardware you're running - Cisco Meraki, HPE Aruba, Ruckus, Juniper Mist, Ubiquiti UniFi, Cambium, Extreme, or Fortinet - and confirm Purple's integration documentation for that platform. You can find the full technical guide at purple.ai, and the Purple team can walk you through a proof-of-concept configuration for your specific site. Thanks for listening. I'll see you in the next briefing.

header_image.png

执行摘要

Starlink 为光纤无法到达的地区提供 220 Mbps 的连接,从根本上改变了偏远地区和海上场所的网络格局。然而,对于面向公众的环境,仅有原始连接是远远不够的。当您为访客、乘客或船员部署 Starlink 时,必须实施身份验证、访问控制、符合 GDPR 的同意管理以及带宽管理。原生的 Starlink 路由器不提供这些功能。

本指南详细介绍了如何绕过原生 Starlink 硬件,并使用企业级路由设备集成云端托管的 Captive Portal。您将学习如何克服运营商级 NAT (CGNAT) 限制、强制执行 VLAN 隔离、管理卫星带宽限制并确保合规性。

通过部署此架构,场所运营商可以将无管理的互联网管道转化为安全、隔离的网络,从而捕获第一方数据并保护核心业务基础设施。

技术深度解析

CGNAT 限制

在 Starlink 上部署 Captive Portal 的主要技术障碍是运营商级 NAT (CGNAT)。标准的 Starlink 接收器连接到一个处理 DHCP 和 NAT 的专用路由器。默认情况下,分配给您设备的 WAN IP 地址属于 100.64.0.0/10 范围。由于这不是公网 IP 地址,您的路由器无法接收来自互联网的入站连接。

标准的 Captive Portal 架构通常假设云端门户可以反向访问您的网络,以对用户进行身份验证或更新访问控制列表。在 CGNAT 环境下,入站连接会失败。

要解决此问题,您必须将 Starlink 接收器配置为旁路模式(Bypass Mode,通常称为桥接模式)。在旁路模式下,Starlink 路由器的功能将被禁用,接收器直接将 CGNAT 地址传递给企业路由器的 WAN 端口。然后,您的企业路由器将完全接管路由层。

architecture_overview.png

反向隧道架构

在企业路由器处理流量的情况下,CGNAT 入站限制依然存在。解决方案是采用反向隧道架构。您的路由器建立与云端门户的出站连接并保持持久连接。所有身份验证流量都通过这条已建立的隧道传输。云端基础设施永远不需要发起入站连接。

Purple 的云端覆盖架构原生支持此功能。您无需手动配置 VPN 隧道。如果您的部署需要静态 IP 以用于传统本地 RADIUS 服务器或严格的 IP 白名单,Starlink 商业和海上计划提供静态 IP 作为付费增值服务。

带宽限制与流量整形

卫星带宽是一种共享且受限的资源。单个用户播放 4K 视频可能会持续消耗 25 Mbps 的带宽。在拥有 50 名乘客并共享 220 Mbps Starlink 连接的船只上,一个用户就可能消耗总容量的 11%。

您必须在 Captive Portal 和路由器层级通过积极的流量整形来解决此问题:

  • 单设备限制: 限制单个访客设备的下载速度为 5 Mbps,上传速度为 2 Mbps。
  • 公平使用政策: 实施每日数据额度限制(例如,每 24 小时 2GB)。
  • 应用控制: 优先处理网页浏览和即时通讯协议,降低视频流媒体和点对点文件共享的优先级。
  • 分层接入: 提供基础连接的免费层和用于流媒体的付费高级层,将 WiFi 基础设施从成本中心转化为收入来源。

comparison_chart.png

实施指南

请按照以下步骤,使用企业级硬件在 Starlink 上部署安全的 Captive Portal。

步骤 1:启用旁路模式 (Bypass Mode)

  1. 安装 Starlink 硬件并使用原生路由器验证连接性。
  2. 打开 Starlink 移动应用程序并导航至 Settings(设置)。
  3. 选择 Bypass Starlink WiFi router(旁路 Starlink WiFi 路由器)并确认。
  4. 将 Starlink 以太网适配器连接到企业路由器(Cisco Meraki、HPE Aruba、Ruckus、Juniper Mist、Ubiquiti UniFi、Cambium、Extreme 或 Fortinet)的 WAN 端口。

注意:如果 Starlink 接收器恢复出厂设置,旁路模式 (Bypass Mode) 将自动禁用。请在您的站点运行手册中记录此内容,并在路由器的 WAN 接口上配置监控告警。

步骤 2:配置 VLAN 隔离

您必须将访客流量与核心业务系统隔离。在核心交换机和接入点上配置至少三个 VLAN:

  • VLAN 10 (Staff): 承载 POS 系统、后台办公应用和管理流量。
  • VLAN 20 (Guest): 仅限互联网访问的分段,重定向到 Captive Portal。
  • VLAN 30 (IoT): 用于摄像头、智能温控器和楼宇管理系统的隔离网络。

配置防火墙规则以阻止所有 VLAN 间路由。VLAN 20 上的访客设备绝不能 ping 通 VLAN 10 上的 POS 终端。这种隔离是 PCI DSS 合规性的严格要求。

步骤 3:部署云端 Captive Portal

  1. 配置您的接入点以在 VLAN 20 上广播 Guest SSID。
  2. 将身份验证方法设置为外部 RADIUS 或使用厂商的 API 集成。
  3. 将身份验证服务器指向 Purple 的云端基础设施。
  4. 配置围墙花园(白名单),以在身份验证完成前允许访问 Purple 的域名。
  5. 在 Purple 门户中设计展示页面(Splash Page),确保 品牌形象与您的场所保持一致,且服务条款清晰可见。

第 4 步:测试用户流程

在 iOS 和 Android 设备上测试身份验证流程。Apple 的 Captive Network Assistant (CNA) 和 Android 的网络探测机制表现不同。请验证展示页面是否在 10 秒内加载完成,以及设备在身份验证后是否立即获得互联网访问权限。

最佳实践

  • HTTPS 拦截: 确保您的路由器正确处理 HTTPS 拦截。现代设备默认使用 HTTPS。如果路由器无法干净地重定向 HTTPS 请求,访客在到达门户页面之前将会遇到证书错误。
  • 会话保持(Session Keepalive): Starlink 的近地轨道(LEO)星座提供 20 到 40 毫秒的延迟,但在卫星切换期间会出现短暂的峰值。将您的 Captive Portal 会话保持间隔设置为 60 秒或更短,以防止过早断开连接。
  • 离线缓存: 配置您的路由器在本地缓存活动会话。如果 Starlink 连接暂时中断,已通过身份验证的访客在连接恢复时将保持在线状态,而无需重新登录。

故障排除与风险缓解

故障模式 根本原因 缓解措施
Captive Portal 无法加载 Walled garden 配置错误 验证是否已将所有必需的 Purple 域名和 CDN 端点添加到路由器的预身份验证白名单中。
双重 NAT 错误 旁路模式(Bypass Mode)已禁用 检查 Starlink 应用程序以确认旁路模式已启用。电涌或手动重置可能会使天线恢复为默认设置。
访客网速慢 未限制带宽 强制执行单设备带宽限制(例如 5 Mbps),并在防火墙处阻止 BitTorrent 等高带宽应用。
安全审计失败 启用了 VLAN 间路由 审计防火墙规则,确保来自访客 VLAN 的流量无法路由到员工或管理 VLAN。

投资回报率(ROI)与业务影响

在 Starlink 上部署托管式 Captive Portal,可将原始的互联网连接转化为可衡量的业务资产。

对于一艘运行 Starlink Maritime(带宽为 220 Mbps)的 120 舱室邮轮来说,原始访问无法带来商业回报。通过部署 Cisco Meraki 接入点和 Purple 的 Captive Portal,运营商可以为普通乘客强制执行每日 2GB 的免费额度,同时追加销售 10GB 的高级套餐。由此产生的 WiFi 收入可以覆盖每月 250 美元以上的 Starlink 订阅成本。此外,该门户还能收集完全合规的第一方电子邮件数据,从而扩大运营商未来航程的直接营销名单。

在偏远酒店环境中,部署具有严格带宽策略的门户可将访客对 WiFi 速度慢的投诉减少高达 60%,因为这可以防止重度用户独占卫星链路。

关键定义

Bypass Mode

A configuration setting that disables the native Starlink router's DHCP and NAT functions, passing the WAN IP directly to a third-party enterprise router.

Required when integrating enterprise networking equipment with a Starlink dish to avoid double NAT and routing conflicts.

CGNAT (Carrier Grade NAT)

A method used by ISPs to share a single public IP address among multiple customers. The customer's router receives a private IP address (typically 100.64.0.0/10).

Starlink uses CGNAT by default, which prevents inbound connections from the internet and requires reverse tunnel architectures for cloud management.

VLAN (Virtual Local Area Network)

A logical subnetwork that groups a collection of devices from different physical LANs.

Used to isolate guest WiFi traffic from staff and IoT networks, ensuring security and compliance.

Captive Portal

A web page that a user of a public access network is obliged to view and interact with before access is granted.

Used to enforce terms of service, collect marketing data, and authenticate users on guest WiFi networks.

Walled Garden

A limited environment that controls the user's access to web content and services before they have fully authenticated.

Required to allow guest devices to reach the cloud captive portal and authentication servers before they are granted full internet access.

RADIUS

A networking protocol that provides centralized Authentication, Authorization, and Accounting management for users who connect and use a network service.

The underlying protocol used by enterprise access points to communicate with the cloud captive portal to verify user credentials.

Traffic Shaping

The manipulation and prioritization of network traffic to reduce the impact of heavy users or latency-sensitive applications.

Essential on Starlink networks to prioritize web browsing over high-bandwidth activities like video streaming.

First-Party Data

Information a company collects directly from its customers and owns.

Captured via the captive portal login process (e.g., email addresses) and used for direct marketing and loyalty campaigns.

应用实例

A 120-cabin cruise vessel running Starlink Maritime at 220 Mbps needs to provide passenger WiFi without degrading ship operations. They require a mechanism to monetise the connection and collect marketing data.

The operator deploys Cisco Meraki access points throughout the vessel with three strict VLANs: crew, passenger, and ship systems. Purple's captive portal handles passenger authentication via email or a cabin number lookup integrated with the PMS. Each passenger receives a 2GB daily allowance. Premium tier passengers can purchase a 10GB allocation. The portal collects first-party email data for post-voyage marketing.

考官评语: This approach solves the bandwidth constraint through hard daily limits while generating direct revenue. The VLAN segmentation ensures passenger traffic cannot compromise critical ship systems. The PMS integration provides a frictionless login experience.

A remote Highland hotel with no fibre infrastructure runs Starlink Business at 150 Mbps. Guests frequently complain about slow speeds during the evening, and the hotel has no visibility into who is using the network.

The hotel deploys HPE Aruba access points across the main building and outbuildings. They configure the Starlink dish in Bypass Mode and connect it to an Aruba gateway. Guests authenticate via email on Purple's portal. The hotel enforces a strict 5 Mbps per-device bandwidth cap and uses Purple's analytics to monitor peak usage times.

考官评语: By implementing per-device throttling, the hotel prevents individual guests from monopolising the 150 Mbps link during peak evening hours. The email authentication captures first-party data for future direct booking campaigns, reducing reliance on OTAs.

练习题

Q1. A remote mining camp has deployed Starlink Business. They have connected a Cisco Meraki MX firewall to the Starlink router. Guests can connect to the WiFi, but the captive portal page times out and fails to load. What is the most likely cause?

提示:Consider how the Starlink hardware handles routing by default and what the Meraki firewall requires to manage traffic effectively.

查看标准答案

The Starlink dish has not been placed in Bypass Mode. As a result, the network is suffering from double NAT (the Starlink router and the Meraki firewall are both attempting to perform Network Address Translation). The administrator must use the Starlink app to enable Bypass Mode, allowing the Meraki firewall to receive the CGNAT IP directly and manage the routing and captive portal interception.

Q2. You are deploying a captive portal for a hotel using Starlink. You have configured Bypass Mode and VLAN segmentation. During testing, you notice that Apple devices prompt the user to log in immediately, but some Android devices show a certificate error when the user tries to browse to a secure website before authenticating. How do you resolve this?

提示:Think about how modern browsers handle initial connection requests and what the router must do to intercept them cleanly.

查看标准答案

The enterprise router is not configured to handle HTTPS interception correctly for the captive portal redirect. Modern browsers default to HTTPS. When the user attempts to visit an HTTPS site before authenticating, the router intercepts the traffic and presents its own certificate, which the browser rejects as invalid. You must ensure the router's captive portal settings are configured to use a valid SSL certificate for the redirect, or rely on the OS-level network probes (like Apple's CNA) which use HTTP endpoints to trigger the portal automatically.

Q3. A maritime operator complains that their Starlink Maritime connection (220 Mbps) becomes unusable every evening. They currently provide an open, password-free guest network. What three specific configurations should you implement on the enterprise router and captive portal to resolve this?

提示:Focus on controlling how much data individual users can consume and prioritising critical traffic types.

查看标准答案
  1. Implement a captive portal requiring authentication to track and manage individual users. 2. Enforce per-device bandwidth caps (e.g., 5 Mbps down / 2 Mbps up) to prevent a single user from monopolising the connection. 3. Apply traffic shaping rules at the firewall to prioritise web browsing and messaging protocols while throttling or blocking high-bandwidth applications like video streaming and P2P file sharing.