Minecraft op PlayStation en Xbox heeft geen knop "Add Server", dus een consolespeler kan geen serveradres invoeren. Op Eytak kunnen ze toch verbinding maken met een Java-server. Onze edge-router bepaalt aan de hand van de speler welke server bedoeld wordt. Als we die speler nog nooit hebben gezien, vragen we één keer naar de servernaam van drie woorden. Dit artikel legt uit waarom consoles werden afgewezen, wat we hebben aangepast en waarom we de oplossing goedkoop konden bouwen.
We hebben dit op 10 november 2026 in beide regio's uitgerold.
Waarom een console niet via een adres verbinding kan maken met een Minecraft-server
Minecraft: Bedrock Edition op Windows, Android en iOS heeft een scherm "Add Server" met een veld voor een adres en een veld voor een poort. De PlayStation- en Xbox-versies hebben dat niet. Op het servertabblad staan alleen een handvol uitgelichte partner-servers.
Consolespelers gebruiken hiervoor al jaren een omweg. Een telefoonapp op hetzelfde Wi-Fi-netwerk laat een externe server verschijnen als LAN-game. De console ziet een "LAN game" op het tabblad Friends, maakt verbinding met de telefoon en de telefoon stuurt het verkeer door naar de echte server.
Zo komen de pakketten van de speler bij ons. We weten dan nog niet naar welke server ze wilden.
Wat de logs lieten zien: 40 geweigerd, 28 toegelaten
Elke Eytak-server heeft één adres, bijvoorbeeld flying-mighty-tuna.play.eytak.com, en dat adres werkt voor Java Edition en Bedrock Edition. Onze edge-router leest het adres dat de client doorgeeft bij het verbinden en stuurt de verbinding naar de bijbehorende server. Op deze manier delen duizenden servers één IP-adres en één poort.
Een supportticket van een servereigenaar bij wie Bedrock-vrienden werden losgekoppeld, paste bij geen van de problemen die we kenden. De server was gezond en Java-spelers konden zonder problemen verbinden. De edge had helemaal geen gegevens over deze Bedrock-spelers, omdat we destijds geen login logden die we niet konden plaatsen. We voegden die logregel toe en wachtten af.
Op de avond van 9 november 2026, gedurende circa drieënhalf uur op één node, liet de edge 28 Bedrock-logins toe en weigerde hij er 40 met "Unknown server address". De geweigerde logins hadden één overeenkomst: ze droegen een privé-IP-adres uit een thuisnetwerk mee.
typed in Add Server on a phone or PC: flying-mighty-tuna.play.eytak.com
reported through a LAN relay app: 192.168.1.47
De console had verbinding gemaakt met de telefoon en gaf dus terecht het adres van de telefoon door als serveradres. Achter die 40 pogingen zaten drie verschillende huishoudens. Al deze spelers waren ingelogd met een echt Microsoft-account en hadden alles juist gedaan. Die avond kwam geen van hen binnen.
We hadden deze spelers voor uitzonderlijk gehouden. Ze vormden die nacht meer dan de helft van de Bedrock-logins die deze node bereikten.
Hoe één adres Java en Bedrock bedient
Enige achtergrond over het traject, want de oplossing zit er middenin.
Java Edition en Bedrock Edition gebruiken verschillende netwerkprotocollen. We draaien Geyser, de open-source protocolvertaler, één keer per node in plaats van één keer per server. De verbinding van een Bedrock-speler komt bij die Geyser aan, verlaat hem als Java-verbinding en gaat door dezelfde edge-router als een Java-speler.
Bedrock client ──UDP──▶ node Geyser ──▶ edge router ──▶ the player's server
Java client ────TCP───────────────────▶ edge router ──▶ the player's server
Geyser geeft het adres door dat de Bedrock-speler heeft ingevoerd, zodat de edge een Bedrock-join op dezelfde manier kan routeren als een Java-join. Geyser geeft ook de geverifieerde Xbox-identiteit van de speler versleuteld door, zodat de bestemmingsserver weet wie er verbinding maakt. Elke Eytak-server heeft een eigen sleutel voor deze identiteitsgegevens. De edge is de enige plek die kan lezen wat de Geyser van de node heeft geschreven en dit opnieuw kan versleutelen voor één specifieke server. Een sleutel die uitlekt bij de server van één klant heeft geen waarde voor servers van andere klanten.
Wanneer de login de routeringsbeslissing bereikt, weet de edge dus al wie de speler is.
Routeren op basis van wie verbinding maakt
De edge onthoudt nu voor elke Bedrock-speler die we via een adres toelaten, met welke servers die speler onlangs verbinding heeft gemaakt. Het record verloopt 180 dagen na de laatste join van de speler.
Wanneer een Bedrock-login aankomt met een IP-adres op de plek waar een servernaam hoort te staan, zoekt de edge de speler op en stuurt hem naar de server die nog bestaat en waarmee hij het meest recent verbinding maakte. Daarna verloopt de login op de gebruikelijke manier. Als Bedrock voor de server is uitgeschakeld, krijgt de speler dat te zien. Slaapt de server, dan wekt de edge hem en houdt hij de speler vast tijdens het opstarten, zoals bij elke andere join. De eigen whitelist en bans van de server blijven gelden.
Twee grenzen hebben we bewust aangebracht.
Een hostname die geen server aanduidt, wordt nog steeds geweigerd. Iemand die een adres verkeerd invoert op een telefoon krijgt een foutmelding. Routeren naar de server die diegene vermoedelijk bedoelde, zou de speler in een wereld plaatsen waar hij niet om heeft gevraagd.
Alleen logins van onze eigen Geyser op dezelfde node komen in aanmerking. Een verbinding van elders die een identiteit claimt, vertrouwen we niet.
Een speler die bij meerdere Eytak-servers hoort, komt terecht op de server waarmee die het meest recent verbinding maakte. Er is nog geen switcher.
De speler die we nog nooit hebben gezien
Onthouden werkt voor een speler die ooit via een telefoon of pc verbinding maakte en daarna op een console speelt. Het helpt niet bij de servereigenaar die alleen een PlayStation heeft, of bij een jonger broertje of zusje met een tweede account. Zij hebben nergens een adres ingevoerd, dus er valt niets te onthouden.
Er is één plek waar zij wel kunnen typen. Bedrock Edition kan een formulier van een server tonen en onze Geyser kan dat formulier tonen voordat een verbinding met een server wordt geopend. Een speler die de edge niet herkent, krijgt één vraag: welke server, met een veld voor de naam van drie woorden.
We lossen het antwoord op met dezelfde code die elk ander adres oplost. Daardoor werken flying mighty tuna, Flying-Mighty-Tuna, het volledige adres en het eigen domein van een klant allemaal. Een verkeerde naam toont het formulier opnieuw en vermeldt waarom, tot vijf keer. Bij een juiste naam koppelen we de server aan die speler en gaat de login verder. De vraag verschijnt daarna niet opnieuw.
Het formulier verschijnt in het Engels, Turks, Duits of Nederlands, afhankelijk van de taal van de game van de speler.
De edge bepaalt wie de vraag krijgt en de regel is beperkt: een adres dat geen server kan aanduiden, van een speler zonder onthouden server. Iedereen die een adres heeft ingevoerd, komt niet bij deze code. Als de edge niet bereikbaar is om de vraag te beantwoorden, houden we niemand vast en verloopt de login zoals vóór het formulier.
Waar we van afzagen
De gebruikelijke oplossing voor console-joins in deze sector is een Xbox-botaccount. De speler voegt de bot als vriend toe, de bot lijkt een game te hosten en een join naar die bot stuurt de speler door naar de server.
We hebben geen van de drie ontwerpen gebouwd die we in die richting hadden geschetst. Elk ontwerp vraagt een twaalfjarige om een gamertag te vinden, een vriendschapsverzoek te sturen, te wachten tot dat wordt geaccepteerd en vervolgens de bot aan een server te koppelen. Elk ontwerp hangt ook af van een account dat een platformhouder op een willekeurige dag kan schorsen. Daarmee zouden alle consolespelers op Eytak wegvallen.
De spelers in onze logs hadden het moeilijke deel al zelf opgelost. Ze stonden bij de deur. We hoefden ze alleen niet langer af te wijzen.
Waarom dit afhing van het bezit van de edge
De meeste Minecraft-hosts geven elke server een IP-adres en een poort, waarna de speler er rechtstreeks verbinding mee maakt. Er zit niets tussen dat elke join ziet, dus er is nergens ruimte voor de vraag: "wie is dit, en waar gaat deze speler meestal heen?"
We schreven in juli 2026 onze eigen edge-router om een andere reden: we wilden dat elke server een leesbaar adres zonder poort kreeg. Diezelfde router maakte het later mogelijk om een slapende server te wekken zodra iemand verbinding maakt en om Bedrock en Java één adres te laten delen. Routering per speler kostte boven op die keuzes enkele honderden regels code en we schreven en implementeerden het in twee dagen. Zonder die eerdere keuzes was hiervoor een nieuw product nodig geweest.
Hoe we dit hebben getest en wat we niet hebben getest
We testen Bedrock-trajecten met een gescripte Bedrock-client die inlogt met een echt Microsoft-account. Voor dit werk kreeg die client één extra mogelijkheid: verbinding maken met onze node terwijl hij een IP-adres uit een thuisnetwerk als adres doorgeeft. Dat is precies wat een console via een relay doet.
Tegen de productiebuild van Geyser, de productie-edge en een echte Paper-server werd deze client vastgehouden en kreeg hij het formulier te zien. Een verkeerde naam werd geweigerd met de reden erbij. De juiste naam, met spaties ingevoerd vanuit een Turks-talige client, kwam binnen. Dezelfde speler kreeg bij een volgende join geen formulier. Een speler die het adres had ingevoerd, kreeg ook geen formulier. Het sluiten van het formulier beëindigde de sessie netjes, vijf verkeerde namen eindigden met een bericht om de servereigenaar te vragen, en wanneer we de edge onbereikbaar maakten, werd niemand vastgehouden. We herhaalden het formulier, de weigering en het nette afsluiten in productie in beide regio's.
We hebben nog niet met een controller getest. Op het moment dat dit artikel verschijnt, heeft geen PlayStation of Xbox op onze eigen bureaus dit traject doorlopen en eindigde de avond van de uitrol voordat een consolespeler de nieuwe code bereikte. De edge logt nu het apparaattype van elke Bedrock-login. Daardoor weten we uit onze eigen gegevens welk aandeel consoles hebben en werken we dit artikel daarmee bij. Nintendo Switch hebben we helemaal niet getest en we beloven daar niets voor.
Veelgestelde vragen
Kunnen PlayStation- en Xbox-spelers verbinding maken met een Minecraft Java Edition-server?
Ja, als de server het Bedrock-protocol vertaalt en de console hem kan bereiken. Op Eytak accepteert een server met ingeschakelde Bedrock-ondersteuning Bedrock-spelers op hetzelfde adres als Java-spelers. Een console bereikt de server via een telefoonapp op hetzelfde Wi-Fi-netwerk die de server als LAN-game toont.
Waarom zegt mijn console "Unknown server address"?
De console geeft het adres door van de telefoon waarmee hij verbinding maakte en de host kan niet zien welke server je bedoelde. Dit antwoordde de Eytak-edge vroeger ook. De edge herkent je nu via je Microsoft-account of vraagt je één keer naar de servernaam.
Moet de servereigenaar iets instellen?
Nee. Als Bedrock-ondersteuning voor de server is ingeschakeld, werken herkenning en de eenmalige vraag zonder configuratie, plugin of poort.
Wat typ ik wanneer de game vraagt welke server?
De servernaam van drie woorden, met spaties of koppeltekens, met willekeurige hoofdletters. Deze staat op de connect-pagina van de server. Het volledige adres werkt ook.
Heb ik hiervoor Minecraft Realms of een betaald console-abonnement van Eytak nodig?
Dit gebruikt geen Realms. Of je console het online abonnement van het platform nodig heeft voor multiplayer, wordt door het platform bepaald en geldt voor elke server.
Is routering per speler veilig?
De identiteit komt uit de Microsoft-accountlogin van de speler, reist versleuteld en wordt alleen geaccepteerd vanaf onze eigen vertaler op dezelfde machine. Naar een server gerouteerd worden geeft op zichzelf geen toegang: de whitelist, bans en permissies van de server bepalen wat er daarna gebeurt, precies zoals wanneer het adres is ingevoerd.