Build a Raspberry Pi Travel Router
Hotel and Airbnb WiFi is routinely awful — captive portals that make every device re-authenticate separately, weak or overloaded access points, and networks you don't trust enough to put a laptop or NAS backup job on directly. A Raspberry Pi travel router solves all three problems at once: connect the Pi to whatever sketchy hotel WiFi is available, and it re-broadcasts a clean, password-protected network of your own, running your VPN of choice, that every device in the room connects to as if it were your home network. This project builds a pocket-sized version you can toss in a laptop bag.
What You're Building
A battery-or-USB-powered Raspberry Pi that connects to an existing WiFi network (or a wired uplink) as its "WAN" side, runs a NAT'd access point as its "LAN" side, and optionally tunnels all traffic through a VPN — so every device you connect to it gets one clean login, one consistent network, and encrypted traffic regardless of how untrustworthy the underlying hotel or venue network is.
Choosing Your Hardware Path
ConfigurationHow it worksTrade-offs Pi Zero 2 W + single USB WiFi adapterOnboard WiFi does one role (usually AP), USB adapter does the other (WAN)Smallest and cheapest option, but the Zero 2 W's WiFi chip has less range/throughput than the Pi 4's Pi 4 + USB WiFi adapterOnboard WiFi as AP, USB adapter as WAN uplink (or reverse)Better throughput and more reliable for handling multiple connected devices at once Pi 4/Zero 2 W with Ethernet WAN uplinkOnboard WiFi as AP, wired Ethernet as WAN when a hardwired connection is available (hotel Ethernet port, conference venue)Most reliable uplink when available, but you lose that option in WiFi-only settingsFull hardware details — including the USB WiFi adapter, battery pack, and case — are covered in the parts list below.
Software Setup
- Flash Raspberry Pi OS Lite and enable SSH during imaging so you can configure everything headless over a laptop's Ethernet-over-USB or WiFi connection.
- Install hostapd and dnsmasq — hostapd turns the onboard WiFi radio into an access point, dnsmasq handles DHCP and DNS for connected devices.
- Configure the USB adapter as the WAN-facing interface that connects out to hotel/venue WiFi, using wpa_supplicant or NetworkManager, while the onboard WiFi radio runs hostapd as your private AP.
- Set up NAT/IP forwarding with iptables or nftables so traffic flows from your private AP network out through whichever uplink is active.
- Install and configure your VPN client (WireGuard is the modern default — fast, simple config, low overhead) so all traffic leaving the Pi is tunneled, meaning every device connected to your private AP is automatically covered without needing its own VPN app.
- Handle captive portals. Some hotel networks require a browser-based login before granting internet access. The cleanest approach is a quick manual step: temporarily connect a phone or laptop directly to the hotel WiFi to click through the portal once, or run a lightweight captive-portal-detection script on the Pi that flags when a portal page is blocking traffic so you know to intervene.
- Add a simple web-based status page or SSH alias so you can quickly check which uplink is active and whether the VPN tunnel is up without digging through logs on unfamiliar hotel WiFi at 11pm.
Reliability and Convenience Tips
- Save multiple known networks in wpa_supplicant's config ahead of travel (previous hotel chains, common venue SSIDs) so the Pi reconnects automatically when it recognizes a network.
- Keep a fallback "no VPN" profile for networks where a VPN tunnel gets blocked outright (some corporate and hotel networks actively block VPN protocols) — WireGuard's UDP traffic is sometimes filtered where TCP-based OpenVPN over port 443 gets through, so having both configured covers more situations.
- Label the unit clearly and keep it in the zippered pouch with cables — a small unlabeled Pi with exposed pins in a bag looks exactly like the kind of thing that raises questions at airport security; a labeled case with everything contained avoids friction.
Safety and Legal Notes
Using a personal travel router to create your own network on top of a venue's WiFi is standard practice and low-risk, but running the USB adapter's monitor mode or doing anything beyond normal client association on a network you don't own or have permission to test is a different matter — respect the terms of service of any network you connect to, and don't use this build's WiFi hardware capabilities for anything beyond acting as a normal client and access point.
Closing Thoughts
Once it's set up, this becomes a genuinely invisible piece of travel gear — plug it in, wait about a minute for the VPN tunnel to establish, and every device in the room gets one clean, encrypted, consistently-named network regardless of what's actually happening on the other side of that hotel WiFi login page.
Related Guides
- Build a WireGuard VPN Server on a Raspberry Pi: Secure Remote Access to Your Home Network
- Setting Up WireGuard VPN Server on Raspberry Pi
- Pi as a VPN Server (WireGuard/PiVPN)
- Raspberry Pi: Complete Headless Setup Guide (No Monitor Needed)
- Setting Up Nginx as a Reverse Proxy on Raspberry Pi
- Setting Up Tailscale VPN on a Raspberry Pi for Remote Access
- Networking a Detached Garage or Shed Workshop: Ethernet Backhaul, Wireless Bridges, and PoE
- Building a Wake-on-LAN Server with Raspberry Pi