qasim@wiki:~$ ▍

Static-IP Options Compared

Three ways to solve "apex domain needs a fixed target, ALB doesn't have one."

1. Route 53 ALIAS record (best, if applicable)

  • Points the apex directly at the ALB's DNS name — no static IP needed at all, because Route 53 resolves the Alias server-side rather than via CNAME.
  • Cost: free.
  • Catch: only works if the domain's DNS zone is hosted in Route 53. If a client keeps DNS elsewhere (GoDaddy, Cloudflare, local registrar), this isn't available.
  • Removes the shared-server risk entirely for that domain — no vhost, no Let's Encrypt renewal, no fallthrough possible.

2. AWS Global Accelerator

  • Provisions 2 fixed Anycast IPs that sit in front of the ALB. The apex A record points at these IPs directly.
  • Routing/SSL then goes through the ALB's own listener rules and ACM cert — the same mechanism already used safely for subdomains — instead of a hand-maintained Apache config.
  • Default listener rule can return a fixed 404/403, so an unmapped domain fails safely instead of leaking to another client.
  • Cost: ~$0.025/hr fixed per accelerator (~$18/month) + a Data Transfer-Premium fee (~$0.01–$0.105/GB depending on source region/edge location) + standard public IPv4 charges. Adds up across many low-traffic redirect domains.
  • Works regardless of who hosts the client's DNS.

3. Dedicated redirect server (current approach)

  • One small EC2 instance with a static IP, hosting Apache vhosts + Let's Encrypt certs for every client's apex domain.
  • Cost: cheapest option (~$3–5/month total, shared across all clients).
  • Risk: a shared, manually-edited config file is a single point of failure — a missing/incorrect vhost lets Apache's default-vhost behavior serve a different client's site. See Incident Postmortem.
  • Mitigated (not eliminated) by the catch-all vhost fix in Apache Config Templates.

Recommendation

Situation Recommended option
Client's DNS is on Route 53 Alias record — free, structurally safest
Client's DNS is elsewhere, budget allows Global Accelerator
Low-traffic client, cost-sensitive Dedicated server, but with catch-all vhost + onboarding checklist

← Back to the DNS series index