Hub DDNS Subdomains
Get a public URL for your homelab with Hub-managed DDNS subdomains
Overview
PodWarden Hub provides managed DDNS subdomains — the fastest way to get a public URL for your self-hosted workloads. No DNS provider accounts, no API tokens, no zone configuration. Connect to Hub, allocate a subdomain, and your workload is reachable from the internet.
How It Works
- Hub manages DNS domains (e.g.
vxloc.com,ichinichi.ai) via Cloudflare - Your PodWarden instance allocates a subdomain (e.g.
swift17.vxloc.com) - Hub creates a Cloudflare A record pointing to your public IP
- PodWarden detects IP changes every 5 minutes and pushes updates to Hub
- Hub updates the Cloudflare record automatically
The DNS records are set to DNS-only mode (not proxied through Cloudflare) so your gateway node handles TLS directly via Let's Encrypt.
Allocating a Subdomain
From PodWarden (Recommended)
- Go to Settings > Hub in your PodWarden instance
- Make sure Hub is connected (URL and API key configured)
- Scroll to the Hub DDNS Subdomains section
- Click Allocate
- Select a domain from the dropdown
- Optionally enter a custom slug (Pro and above)
- Click Allocate
Your subdomain is created immediately and appears in the list.
From Hub Dashboard
- Sign in at www.podwarden.com
- Go to Dashboard > DDNS
- Click Allocate Subdomain
- Select a domain and optionally enter a custom slug
- Click Allocate
Note: Subdomains allocated from the Hub dashboard need to be updated with your IP. The PodWarden instance handles this automatically when using the Settings > Hub method.
Subdomain Naming
Auto-Generated (All Plans)
By default, subdomains are auto-generated using a word + number pattern:
swift17.vxloc.compulse42.ichinichi.aiecho8.vxloc.com
Names are short, memorable, and guaranteed unique. The generator picks from ~200 common words and appends a random number 1-99.
Custom Slugs (Pro and Above)
On paid plans, you can choose your own slug:
myapp.vxloc.comhomelab.ichinichi.aiapi.vxloc.com
Custom slug rules:
- 3-30 characters
- Lowercase letters, numbers, and hyphens only
- Cannot start or end with a hyphen
- Certain reserved words are blocked (e.g.
www,api,admin,mail)
Managing Subdomains
Viewing Status
Each subdomain shows:
- FQDN — the full domain name
- IP Address — the current A record value
- Status —
active,pending,error, orsuspended - Last Updated — when the IP was last pushed
- Slug Type —
autoorcustom
Updating IP
From PodWarden (Settings > Hub > DDNS Subdomains):
- Click the wifi icon on any subdomain to push your current public IP
- The DDNS update loop also does this automatically every 5 minutes
From Hub Dashboard:
- IP updates happen when your PodWarden instance pushes them via the API
Releasing a Subdomain
- Click the trash icon on any subdomain
- Confirm the release
- The Cloudflare A record is deleted and the subdomain becomes available for others
Released subdomains free up your quota and can potentially be claimed by another organization.
Tier Limits
| Feature | Free | Pro ($19/mo) | Business ($79/mo) | Enterprise |
|---|---|---|---|---|
| DDNS subdomains | 1 | 50 | Unlimited | Unlimited |
| Custom slugs | No | Yes | Yes | Yes |
| Bring your own domain | No | No | Yes | Yes |
Free Tier
One subdomain with an auto-generated name. Ideal for homelabs that need a single public entry point — use path-based routing in your ingress rules to serve multiple workloads from one subdomain.
Pro Tier
Up to 50 subdomains with custom slug support. Each workload can have its own subdomain (e.g. nextcloud.vxloc.com, gitea.vxloc.com).
Business & Enterprise
Unlimited subdomains. Business adds Bring Your Own Domain (BYOD) — point your own domain to a Hub-managed subdomain via CNAME.
Using with Ingress Rules
After allocating a subdomain, create an ingress rule to route traffic to your workload:
-
From PodWarden Settings > Hub > DDNS Subdomains: Note the FQDN of your subdomain
-
Go to Ingress > Create Rule:
- Domain: your subdomain FQDN (e.g.
swift17.vxloc.com) - deployment: select the workload
- Backend Port: the container port
- Gateway Host: your gateway node
- TLS: enabled (Caddy handles Let's Encrypt)
- Domain: your subdomain FQDN (e.g.
-
Apply the Caddy config and verify
For a complete walkthrough, see Ingress, Gateway Nodes & DDNS.
Available Domains
Hub currently offers subdomains on these domains:
| Domain | Notes |
|---|---|
vxloc.com | General purpose |
ichinichi.ai | AI/ML workloads |
More domains may be added over time. The domain list is shown when allocating a subdomain.
Troubleshooting
Subdomain shows "pending" status
The IP hasn't been pushed yet. From PodWarden Settings > Hub, click the wifi icon to push your current IP manually. The automatic update loop runs every 5 minutes.
Subdomain shows "error" status
Check the error message displayed below the subdomain. Common causes:
- Hub can't reach Cloudflare (temporary API issue — try again)
- Invalid IP address format
- Cloudflare zone misconfiguration (contact Hub admin)
DNS not resolving after IP update
DNS propagation takes time. Most resolvers update within 5 minutes (TTL is set to 300 seconds), but some ISP resolvers cache longer. Try:
dig swift17.vxloc.comto check the current A record- Wait 5-10 minutes for propagation
- Use
1.1.1.1or8.8.8.8as your DNS resolver for faster updates
"Max subdomains reached" error
Your subscription tier's limit has been reached. Either:
- Release an unused subdomain
- Upgrade your plan for more subdomains
- Use path-based routing to serve multiple workloads from one subdomain