Troubleshooting
Common pitfalls
A categorised list of the recurring mistakes that bring people to support.
This is the support-team’s “if it’s broken, look here first” list. If you see your symptom here, follow the link.
Domains and DNS
- Only the root domain added in the panel, players use a subdomain — every subdomain has to be added separately, or use a wildcard. The wildcard does not cover the apex.
- Wrong MOTD after an apex→www redirect chain — one of the involved subdomains is missing from the Domains table.
- Cloudflare orange cloud ON — always wrong for Minecraft. See DNS issues.
- A record instead of CNAME for the dedicated IP — works until the IP rotates. Always use
<uid>.ip.infinity-filter.comas a CNAME. - Same CNAME for Java and Bedrock — Bedrock can resolve to another customer’s dedicated IP via shared edge pools. Always separate.
- CNAME on a wrong region — adds 10–50 ms unnecessarily. Run the Latency Test.
Real-IP forwarding
- All players show the same IP on the backend — PROXY protocol off (or plugin missing). See Real-IP forwarding.
- PROXY protocol AND the IF plugin enabled — double-wrap fails. Pick one.
- Compression-threshold mismatch between Velocity and Spigot — destabilising at high player counts.
Bedrock and Geyser
- Treating port 19132 as the backend port — players always connect on 19132 to IF; the backend Geyser port is internal and configurable.
- Geyser backend module holds the old dedicated-IP CNAME after migration — update or Bedrock stays broken even after reactivation.
bedrock.enable-proxy-protocol: truewith IF upstream — must befalse. See Bedrock issues.- No SRV for Java via dedicated-IP CNAME — SRV is required if Java goes through
<uid>.ip.infinity-filter.com. - Restricting Geyser’s
allowed-IPs— leave it empty. IF filters upstream. - Multi-proxy setup with Geyser on only one proxy — Bedrock players on the other proxy fail. Install on every proxy.
Voice (PlasmoVoice / SimpleVoiceChat)
- Correct
voice_host, but the Docker container doesn’t expose the UDP port — proxy forwards, backend never receives. See Voice issues. - Backend port used as the voice module backend in the panel — should be the proxy plugin’s listening port, not the per-Spigot port.
Anti-bot
- Antibot CPS threshold left at default — trips on mass reconnects after a proxy restart. Raise the threshold in Mitigation.
- Hardcore antibot selected, no challenge fires — Under Attack mode is off. Enable it.
Backend lifecycle
- Players can only join one of several backends — usually that one backend’s port is open and others are closed.
- Changing a backend port without updating every panel entry — connectivity breaks until the related domain or backend entry is re-added.
Billing / subscription
- Bedrock/voice suddenly broken after a subscription renewal — billing flagged the dedicated IP for cancellation. Open a ticket to re-enable.
- Trying to pay an invoice as a sub-user — only the network owner can pay. The owner needs to log in.
Common one-line fixes — cheatsheet
Cloudflare orange cloud → DNS only Switch the record to grey cloud.
A record → CNAME Replace the hardcoded IP with the IF CNAME.
PROXY protocol on both sides OR plugin only Enable in panel + Velocity, never both.
Raise antibot CPS threshold Move it above your normal peak CPS.
Map Docker UDP voice port Add `24454:24454/udp` (or PlasmoVoice 60606) to docker-compose.
Set bedrock.enable-proxy-protocol false IF doesn't need this — it's for an upstream UDP reverse proxy.
Add every subdomain in the panel Or use a wildcard. The apex still has to be added separately.
Install Geyser on every proxy In multi-proxy setups, no exceptions.
Use the proxy plugin's port for voice modules Not the per-Spigot voice port.
Match compression-threshold Identical on Velocity and Spigot.
What’s next
Last updated: May 28, 2026