Game Editions

Geyser (Cross-Play)

Dual TCP+UDP proxy for Geyser cross-play servers.

Protocol: TCP + UDP | DNS: CNAME | Firewall: All condition types

Geyser lets Bedrock players join Java servers. PixelShield supports this by running both protocol parsers on a single domain — Java clients connect over TCP, Bedrock clients connect over UDP, and both get forwarded to your Geyser backend.

How it works

When you create a Geyser domain, we allocate a TCP port for Java traffic and a UDP port for Bedrock traffic on the same edge node. Both parsers run simultaneously:

  • TCP listener handles Java clients with the full handshake/login state machine
  • UDP listener handles Bedrock clients with the RakNet parser
  • Both streams share the same firewall rules and rate limits

All traffic goes to your single backend server running Geyser, which handles the protocol translation.

Backend configuration

When adding a backend for a Geyser domain, you can specify a separate bedrock_port for the UDP side. If you leave it blank, it defaults to 19132. The Java port uses whatever port you set as the main backend port.

Compatibility

Works with Geyser standalone, Geyser as a Spigot/Paper/Velocity/BungeeCord plugin, and Floodgate for seamless Bedrock authentication.


Edition comparison

FeatureJavaBedrockGeyser
ProtocolTCPUDP (RakNet)TCP + UDP
DNS recordCNAMECNAMECNAME
CNAME target*.proxy.pixelshield.net*.edge.pixelshield.net*.edge.pixelshield.net
IP / CIDR rulesYesYesYes
Country rulesYesYesYes
Protocol version rulesYesNoYes (Java side)
Username pattern rulesYesNoYes (Java side)
MOTD cachingYesYesYes
Bot detectionFullFlood-basedFull (Java) + Flood-based (Bedrock)
Multi-node failoverYesYesYes

Default ports

EditionProtocolDefault Port
JavaTCP25565
BedrockUDP19132
Geyser (Java side)TCP25565
Geyser (Bedrock side)UDP19132

Questions or feature requests?

If you run into compatibility issues or have specific needs, reach out at support@pixelshield.net.

On this page