Articles · Networking

Using Grok Bot to run WireGuard for Plex over Starlink

Residential Starlink sits behind CGNAT, so the usual “open port 32400” Plex remote-access trick fails. We had Grok Bot stand up a small DigitalOcean WireGuard relay, then used Grok Build on the home Plex machine for a split-tunnel client. The result is remote Plex that feels boringly reliable — for about the price of a couple coffees a month.

Published 2026-10-05 · Independent article — not affiliated with Starlink, Plex, DigitalOcean, WireGuard, or xAI.

Illustration of a lit cabin at night with a rooftop dish and a home media server, linked by a glowing amber arc through a satellite to a distant data center.
Disclaimer. Networking varies by plan, region, and router. This is a walkthrough of one homelab pattern, not a guarantee for every dish. Follow official docs for WireGuard, DigitalOcean, and Plex. Example configs below use placeholders only.

The problem: CGNAT vs Plex remote access

On many cable or fiber connections you get a public WAN address. You forward TCP 32400 (or terminate TLS on a reverse proxy), point remote friends at your house, and Plex Remote Access lights up green.

Starlink’s default IPv4 path is different. Per Starlink’s own help center, residential service uses carrier-grade NAT (CGNAT). Your router’s “WAN” address is not a unique public IPv4 the open internet can dial. Unsolicited inbound connections never reach your Plex box. Dynamic DNS that tracks a CGNAT address does not open a door.

Outbound still works fine — browsing, updates, and VPN clients that dial out first. That outbound-first property is exactly what a cheap VPS relay exploits.

Starlink offers an optional public IPv4 on Local and Global Priority plans (still DHCP-assigned, not a guaranteed forever-static address, and the stock Starlink Wi‑Fi router still does not do port forwarding). For a household that only needs remote Plex, jumping plans just to get inbound IPv4 is usually overkill compared with a tiny VPS.

What we asked Grok Bot to do

We described the goal in plain English: provision a small DigitalOcean droplet with a public IP, install and harden WireGuard, open only the ports we need, generate keys, hand back a peer config, and keep the box manageable afterward (health checks, restarts, resizing, key rotation) when we ask.

Grok Bot used the DigitalOcean API to create the droplet, installed WireGuard on Ubuntu, configured the interface and firewall, and returned a client peer config. No dashboard click-ops marathon. When something drifts later, we can ask for a check or a restart in the same conversational loop.

A high-level picture of the finished path:

Remote viewer Plex app / browser VPS (public IP) WireGuard + forward e.g. TCP 32400 WG tunnel Home Plex host behind Starlink CGNAT split-tunnel client Household browsing/gaming stays on Starlink — only relay traffic uses the VPS.
Friends hit the VPS. Media still originates at home. The home side initiates WireGuard, so CGNAT is fine.

Grok Build on the Plex machine: split tunnel matters

The VPS is only half the story. The home machine that runs Plex still has to join the tunnel and tell Plex where the public front door is.

We used Grok Build on that host to:

  1. Install the WireGuard client.
  2. Import the peer config as a split tunnel — only the Plex-relay destination (wireguard network / VPS forward path) goes through the VPS. Normal internet — streaming into the house, updates, Zoom, games — stays on Starlink.
  3. Point Plex remote access at the relay (port forward on the VPS to the Plex service over the tunnel, typically TCP 32400).

Split tunnel is the detail people skip. If you full-tunnel the whole house through a tiny droplet, you pay in latency and you burn the VPS bandwidth allowance on traffic that never needed a public IP. Keep Starlink as the default route; use the VPS only as the inbound door for Plex.

A peer config looks like this in spirit (placeholders only — never paste real keys or hostnames into a blog):

[Interface]
PrivateKey = <client-private-key>
Address = 10.8.0.2/24

[Peer]
PublicKey = <server-public-key>
Endpoint = <server-public-ip>:51820
AllowedIPs = 10.8.0.0/24
PersistentKeepalive = 25

AllowedIPs scoped to the tunnel subnet (not 0.0.0.0/0) is what keeps everyday traffic on Starlink.

What it costs

Our relay runs on DigitalOcean’s s-1vcpu-1gb Basic droplet — 1 vCPU, 1 GiB RAM, 25 GiB SSD. DigitalOcean’s published Basic pricing (and the size catalog returned by their API) lists that plan at $6.00/month, including 1,000 GiB of outbound transfer. That is plenty for a handful of remote HD streams; your real ceiling is still home Starlink upload, not the VPS pipe.

Compared with alternatives you can verify from primary sources:

In short: a few dollars a month for a public IP and a WireGuard door, versus fighting CGNAT or changing Starlink plan tiers.

Day-two operations

Because the droplet was created through the API with Grok Bot in the loop, follow-up asks stay conversational: “is WireGuard up?”, “rotate the peer key”, “resize if we outgrow 1 GB”, “show who last shook hands.” That is the seamless part — not that networking became magic, but that the busywork moved into requests you would make anyway.

Still do the boring adult things: keep the VPS patched, limit which ports face the internet, prefer quality caps for remote Plex so one 4K remux does not flatten household upload, and treat the VPS as an internet-facing door even though your library stays home.

Takeaway

Starlink CGNAT is not a dead end for remote Plex. A small DigitalOcean WireGuard relay (~$6/mo on the 1 GB Basic size we use), provisioned with Grok Bot and paired to a split-tunnel client via Grok Build, restores inbound access without hauling your whole household through a VPS. Media still leaves on your Starlink uplink — so run the household calculator before you promise four remote 4K streams — but the networking knot is cut.

Want the broader pattern without the Bot angle? See How to set up a VPS if you want Plex over Starlink.

Get Starlink Open calculator

Affiliations

This site is independent and not affiliated with Starlink, SpaceX, Plex, DigitalOcean, WireGuard, or xAI. Links to Starlink.com may include a referral code; see the disclaimer.