Building My Own Raspberry Pi Travel Router Using OpenWrt

NETWORKINGCYBER SECURITYIOTRASPBERRY PI

Sujit Rayaprolu

6/1/20252 min read

Building My Own Raspberry Pi Travel Router Using OpenWrt

Written by: Sujit

While planning my travel tech setup, I came across NetworkChuck's Raspberry Pi Travel Router Guide. The idea of building a tiny, secure, portable router that I could carry in my backpack blew my mind.

So, I did it. I built my very own Raspberry Pi Travel Router using OpenWrt. And let me tell you—it wasn’t as easy as plugging in a few cables. But the end result? Worth every bit of effort.

⚙️ What I Used

Here’s my hardware setup:

  • Raspberry Pi 4 (8GB RAM)

  • TP-Link AC600 USB Wi-Fi Adapter (Archer T2U Nano)

  • 32GB SD Card with OpenWrt

  • Power Bank with USB-C output

  • Portable Ethernet cable (for hotel Ethernet ports)

  • ZeroTier installed (for remote access)

🚧 Challenges I Faced

Building something cool always comes with a bit of frustration. Here are a few bumps I hit:

1. Wi-Fi Adapter Compatibility Issues

Most USB Wi-Fi adapters don’t work out of the box with OpenWrt. I had to hunt for one with good driver support. My TP-Link Archer T2U Nano needed extra drivers (mt76x0u).

🔧 Solution: I installed the driver via opkg and made sure kernel versions matched.

2. OpenWrt Image Confusion

The OpenWrt official images don’t always have all the packages you need—especially for Pi 4.

🧠 Tip: Use the ext4 full image from OpenWrt’s download page and expand the filesystem before installing extra packages.

3. Bricked Router During Config Testing

At one point, I messed up the firewall and lost SSH + LuCI access.

💡 Fix: Re-flashed the SD card and restored my /etc/config backups.

4. Routing DNS Through VPN/ZeroTier

DNS leaks were a headache, especially when using public Wi-Fi.

🛡️ Fix: I routed all DNS through Pi-hole over ZeroTier and used Cloudflare DNS with DoH (DNS over HTTPS).

🛠️ Step-by-Step Setup Guide

If you’re looking to build your own Raspberry Pi travel router, here's a summarized guide based on what worked for me.

🔌 1. Flash OpenWrt onto SD Card

  1. Download the latest OpenWrt image for Raspberry Pi 4 from openwrt.org.

  2. Flash it using Balena Etcher.

  3. Boot the Pi with SD card and connect via Ethernet or serial console.

🌐 2. Set Up Wi-Fi Interfaces

Use LuCI or SSH for the setup:

opkg update opkg install kmod-mt76x0u

  • wlan0 = Internal Wi-Fi (Connect to public/hotel Wi-Fi)

  • wlan1 = External adapter (Your private Wi-Fi for devices)

  • Configure wlan0 as WAN and wlan1 as LAN.

🧱 3. Configure Firewall, NAT, DHCP

Ensure:

  • NAT is enabled on WAN.

  • DHCP is served on LAN.

  • Zones are correctly assigned in the firewall section.

📡 4. Optional: Use Ethernet as WAN

Plug into hotel Ethernet and use eth0 as WAN by assigning it in network config.

🌍 5. Add Remote Access (ZeroTier)

opkg install zerotier

/etc/init.d/zerotier enable

/etc/init.d/zerotier start

zerotier-cli join [your-network-id]

This lets you access your Pi securely from anywhere.

🔐 6. Add HTTPS, VPN, or Pi-hole

You can harden your router with:

  • HTTPS using Nginx + certs

  • Pi-hole as local DNS resolver

  • OpenVPN or WireGuard client

  • Filebrowser (optional) for file sharing

📦 Travel-Ready Perks

✅ Bypass hotel Wi-Fi login per device
✅ Add all your devices to one secure hotspot
✅ Connect to your home network via ZeroTier
✅ Filter ads and malware with Pi-hole
✅ Browse anonymously with VPNs

🧠 Final Thoughts

What started as a curiosity project became a must-have in my travel gear. It’s more than a router—it’s a portable security and privacy hub.

If you’re a fellow tinkerer or cybersecurity enthusiast, I highly recommend giving this a shot. Check out NetworkChuck’s original post, then go beyond it and customize your router the way you want.

📎 GitHub Repo & Configs

🔗 GitHub: github.com/HardwareArchitect/pi-travel-router (coming soon)

If you have questions or want help setting this up, feel free to connect via GitHub or drop me a message on LinkedIn.

Stay private. Stay secure. Travel smart. ✈️