Self-host gateway-go
v2.0.12LAN gateway for OpenIoTHub remote access via QR code pairing
- Stars
- 163
- Ports
- 5353 (mDNS (UDP)), 34323 (gateway service)
openiothub/gateway-goWhat is gateway-go?
gateway-go is the on-premises component of the OpenIoTHub ecosystem. It runs continuously on a local network (via Docker, binary packages, Homebrew, Snap, Scoop, deb/rpm, or OpenWrt opkg) and displays a QR code. The OpenIoTHub mobile/desktop client scans this code to register the gateway, after which users can remotely access any LAN service or port through P2P or relayed tunnels. The gateway supports mDNS (port 5353/udp) and a custom port (34323), uses a simple YAML config, and builds for Linux, Windows, macOS, Android, and many architectures. It is a companion to the OpenIoTHub client and the server-go relay; no separate database or external dependencies are required.
Should you self-host gateway-go?
gateway-go scores 47/100 on selfhost.directory (how scoring works) and ranks #38 of 56 in VPN. It has 163 GitHub stars.
It shipped 1 stable release in the past year. The latest, v2.0.12, came out on 11 January 2026.
Setup is easy: most people get it running in one sitting. An official Docker image is available. It is MIT-licensed and written mostly in Go.
Its closest alternative on selfhost.directory is Tailscale (84/100, 38 215 stars). It scores higher overall, so compare the two before you pick. See gateway-go vs Tailscale side by side.
Features
- CasaOS/ZimaOS app store
- Cross-platform builds
- mDNS discovery
- Mobile library bindingsBuild artifacts, not a runtime feature of the gateway itself
- NAT Traversal
- OpenWrt package
- Port Forwarding
- QR code pairing
gateway-go README
More in VPN
gluetunVPN client in a thin Docker container for multiple VPN providers, written in Go, and using OpenVPN or Wireguard, DNS over TLS, with a few proxy servers built-in.
gravitlSelf-hosted, open-source WireGuard automation: mesh VPNs, remote access gateways and site-to-site networks managed from a web UI with ACLs and DNS.
HeadplaneSelf-hosted, open-source web admin panel for Headscale, the open Tailscale control server: nodes, ACLs, DNS, SSO and browser SSH.
headscaleSelf-hosted, open-source Tailscale control server for personal and small org tailnets with WireGuard VPN, MagicDNS, and ACLs.
headscale-adminSelf-hosted web UI for headscale (Tailscale control server). Manage users, nodes, routes, ACLs via static files in Docker or any web server.
HysteriaSelf-hosted, open-source proxy server and client that rides a customized QUIC stack masquerading as HTTP/3, with SOCKS5, HTTP, forwarding, TProxy and TUN modes.
LantunnelLantunnel is a self-hosted, open-source mesh VPN connecting devices via direct P2P encrypted paths with relay fallback — no port forwarding needed.
LucX-UILucX-UI is a self-hosted Xray VPN panel forked from 3x-ui adding kernel-mode AmneziaWG, tunnel sidecars, and advanced subscriptions.
meridianMeridian is an open-source CLI that deploys censorship-resistant VLESS+Reality, XHTTP, and Hysteria2 proxy servers on your VPS with automatic hardening.
MeshLANMeshLAN is a self-hosted, open-source virtual LAN connecting Windows devices over encrypted P2P tunnels with relay fallback and MeshDNS on your own Linux control plane.
mesh-router-tunnelSelf-hosted WireGuard VPN routing domain requests to Docker containers across networks with automatic HTTPS via Caddy.
mullgateSelf-hosted command-line tool converting a Mullvad account into multiple authenticated proxy endpoints for selective traffic routing.
0 comments