Skip to content

Wiki ca es

pjscruggs edited this page Nov 11, 2026 · 2 revisions

Raknetify2 · Català (Catalunya)

Idioma

Multijugador

Connexions de xarxa amb RakNet per als clients i servidors de Minecraft.

Descarregar · GitHub

Minecraft Raknetify2 Client / Servidor
Fabric mods/raknetify2-fabric-*.jar Client / Servidor
Forge mods/raknetify2-forge-*.jar Client / Servidor
NeoForge mods/raknetify2-neoforge-*.jar Client / Servidor
Spigot / Paper plugins/raknetify2-spigot-*.jar Servidor
Velocity plugins/raknetify2-velocity-*.jar Velocity
BungeeCord plugins/raknetify2-bungee-*.jar BungeeCord

Afegir servidor

  1. Multijugador

  2. Afegir servidor

  3. IP del servidor

    IP del servidor
    RakNet · UDP raknet;play.example.com:25565
    TCP play.example.com:25565
  4. Fet

  5. Entrar al servidor

F3 · Raknetify2

F3
RakNet · UDP Actiu · MTU 1400
TCP Inactiu

Velocity / BungeeCord

  1. Client · Raknetify2 → UDP → Velocity / BungeeCord · Raknetify2
  2. Velocity / BungeeCord → TCP → Servidor
Nombre de port · UDP Java
Fabric / Forge / NeoForge 1–65534 -Draknetify.fabric.portOverride=25570
Spigot / Paper ≥ 0.1.0-beta.1.431 1–65535 -Draknetify.spigot.portOverride=25570
Velocity 1–65534 -Draknetify.velocity.portOverride=25570
BungeeCord 1–65534 -Draknetify.bungee.portOverride=25570

Temps d'espera esgotat

IP del servidor UDP
raknet;play.example.com:25580 play.example.com:25580 → NAT → 192.0.2.10:25570
Servidor · 192.0.2.10 25570/udp

config/raknetify2-compatibility.json

Servidor / Velocity / BungeeCord

JSON
① ② ③ {"mode":"ordered"}
① ∥ ② ∥ ③ {"mode":"multichannel"}

Simple Voice Chat

Servidor Raknetify2 · UDP 25565 Simple Voice Chat
Fabric / Forge / NeoForge config/raknetify2-voicechat.json · {"enabled":true} config/voicechat/voicechat-server.properties · port=-1
Spigot / Paper config/raknetify2-voicechat.json · {"enabled":true} plugins/voicechat/voicechat-server.properties · port=-1

Simple Voice Chat · Velocity / BungeeCord

PROXY protocol v2 · UDP

IP del servidor trustedProxies RakNet
192.0.2.10 · PROXY v2 / UDP ["192.0.2.10"] ✓
192.0.2.11 · PROXY v2 / UDP ["192.0.2.10"] ✗
Client → RakNet / UDP ["192.0.2.10"] ✗

config/raknetify2-proxy-protocol.json

{"trustedProxies":["192.0.2.10"]}

Minecraft ≥ 1.20.5 · /transfer

  1. Servidor A · Fabric / Forge / NeoForge · config/raknetify2-transfers.json

    {"destinations":[{"host":"play.example.com","tcpPort":25565,"udpPort":25570}]}
  2. Servidor B · play.example.com · server.properties → accepts-transfers=true

  3. Servidor A · /transfer play.example.com 25565 Alex → Client (Alex) → RakNet · play.example.com:25570

PacketOrdering

Minecraft
ui Opcions
entity Esquelet
world_interaction Inventari
effects Partícules
chunk Blocs

PacketOrdering.java

Versió incompatible!

Informa d'un error

Inici

Raknetify2

Raknetify2 usa RakNet sobre UDP en el multijugador de Minecraft. Distribueix el trànsit entre diversos canals, cadascun amb el seu propi ordre de lliurament. Si es perd un paquet en un canal, els altres poden continuar transmetent. Així, les interaccions en el joc poden continuar responent amb normalitat mentre es recuperen les dades perdudes o es transfereixen chunks.

Raknetify2 és una bifurcació de Raknetify, creat per ishland, i es manté de manera independent. Afegeix compatibilitat amb versions més recents de Minecraft i s'encarrega del transport de xarxa, la integració amb les diferents plataformes i les proves de compatibilitat.

Primers passos

  1. Comprova la compatibilitat de Minecraft i dels mods.
  2. Tria quin fitxer vols descarregar i instal·la'l.
  3. Connecta't amb una adreça com raknet;play.example.com.

Guies per a servidors

Els autors de mods poden usar la interfície d'ordenació de paquets per a declarar quines relacions d'ordre han de respectar-se entre els seus missatges personalitzats i el trànsit de Minecraft.

Enllaços del projecte

Raknetify2 es distribueix sota la llicència MIT i conserva els avisos de drets d'autor originals. La seva implementació de xarxa es basa en Raknetify i en netty-raknet.

Instal·lació

Descarrega una versió des de la pàgina de versions a GitHub. Abans d'instal·lar-la, comprova quina versió de Minecraft i quin carregador de mods requereix.

Tipus d'instal·lació Fitxer Carpeta
Client o servidor Fabric raknetify2-fabric-*.jar mods
Client o servidor Forge raknetify2-forge-*.jar mods
Client o servidor NeoForge raknetify2-neoforge-*.jar mods
Servidor Spigot o Paper raknetify2-spigot-*.jar plugins
Servidor intermediari Velocity raknetify2-velocity-*.jar plugins
Servidor intermediari BungeeCord raknetify2-bungee-*.jar plugins

Tanca el client o atura el servidor abans de substituir el seu JAR. Retira d'aquesta instal·lació el JAR del Raknetify original i qualsevol JAR anterior de Raknetify2 abans d'afegir-hi el nou.

En el client, usa les carpetes de la instància de Minecraft o del paquet de mods que vagis a iniciar. En el servidor o el servidor intermediari, usa les carpetes de la instal·lació corresponent. Si el carregador encara no ha creat la carpeta que necessites, crea-la.

Connexió directa a un servidor

  1. Instal·la el mod de client corresponent al teu carregador de mods.
  2. Instal·la el mod de servidor corresponent o, si tens un servidor compatible, el complement de Spigot/Paper.
  3. Segueix la guia de configuració del tallafocs i de l'encaminador per a permetre les connexions UDP al servidor.
  4. Reinicia el client i el servidor.
  5. Selecciona «Afegir servidor» i introdueix una adreça com raknet;play.example.com o raknet;play.example.com:25565.

Les adreces sense el prefix raknet; usen TCP.

Si només instal·les el mod en el teu client, el servidor remot no adquireix compatibilitat amb RakNet. El seu administrador ha d'habilitar un punt d'accés RakNet. Per a entrar en el servidor d'una altra persona normalment no fa falta redirigir ports d'entrada en el teu encaminador.

Velocity i BungeeCord

Instal·la el complement corresponent en el servidor intermediari i el mod en el client. Consulta Velocity i BungeeCord per a configurar l'escolta, el reenviament d'informació als servidors de joc, les restriccions d'accés i l'adreça que han d'usar els jugadors.

Usar un port d'escolta UDP diferent

Si els jugadors es connecten directament al servidor Minecraft, utilitza l'argument de Java que correspongui en la taula. Si administres un servidor intermediari, consulta la configuració d'escolta de Velocity i BungeeCord.

Plataforma Argument de Java Ports admesos
Servidor Fabric, Forge o NeoForge -Draknetify.fabric.portOverride=25570 De 1 a 65534
Servidor Spigot o Paper -Draknetify.spigot.portOverride=25570 De 1 a 65535

Forge i NeoForge comparteixen el codi d'escolta amb Fabric, per la qual cosa el nom de la seva propietat també conté fabric. Substitueix 25570 pel port UDP que vulguis usar.

Spigot / Paper ≥ 0.1.0-beta.1.431

Afegeix l'argument abans de -jar en l'ordre de Java o en el camp d'arguments de la JVM del teu proveïdor d'allotjament. Reinicia el servidor i permet UDP en el port d'escolta triat. Si el port públic també és 25570, connecta't a raknet;play.example.com:25570. Si un encaminador canvia el número de port, indica el port públic en l'adreça que uses en el client. El port TCP conserva el seu valor.

En Spigot/Paper, RakNet escolta en UDP en la mateixa adreça local que Minecraft en TCP. Si el port indicat no és vàlid o el port UDP està ocupat, RakNet no s'inicia. Consulta al registre d'arrencada en quina adreça i port escolta UDP. Per a tornar a usar el número de port TCP, treu l'argument i reinicia el servidor.

Un encaminador o un servidor intermediari UDP també pot exposar un port UDP públic diferent i redirigir-lo al port d'escolta existent sense modificar els arguments de Java del servidor.

Versions de desenvolupament

En GitHub Actions, obre una execució de main que hagi acabat correctament i descarrega el fitxer de l'apartat Artifacts. GitHub exigeix un compte per a descarregar aquests fitxers. Utilitza la taula d'instal·lació anterior per a identificar el JAR que necessites.

Velocity i BungeeCord

Velocity i BungeeCord actuen com a intermediaris entre els jugadors i els servidors de joc de Minecraft. Instal·la Raknetify2 en el servidor intermediari i en cada client que vagi a connectar-se mitjançant RakNet.

Client Raknetify2 --UDP--> Velocity o BungeeCord --TCP--> servidor de joc

Per a aquesta modalitat de connexió, els servidors de joc poden funcionar sense Raknetify2. Continuen necessitant els mods, complements i mecanismes de reenviament que requereixi la teva xarxa. Raknetify2 no tradueix entre versions de Minecraft ni canvia l'autenticació de comptes del servidor intermediari.

Instal·lar el complement en el servidor intermediari

  1. Comprova que les connexions TCP normals a través del servidor intermediari funcionen, inclosa l'autenticació i el canvi entre servidors de joc.
  2. Atura el servidor intermediari i descarrega el complement corresponent des de la pàgina de versions a GitHub.
  3. Col·loca raknetify2-velocity-*-all.jar o raknetify2-bungee-*-all.jar en la carpeta plugins del servidor intermediari. Retira d'aquesta carpeta qualsevol versió anterior del complement Raknetify o Raknetify2.
  4. Instal·la el mod de Raknetify2 adequat per al client segons la guia d'instal·lació.
  5. Revisa la configuració d'escolta que es descriu a continuació. Reinicia el servidor intermediari i comprova en el seu registre si RakNet ha tingut problemes en obrir el port d'escolta.
  6. Permet el trànsit UDP públic cap al servidor intermediari i restringeix l'accés als ports dels servidors de joc segons la guia de configuració del tallafocs i de l'encaminador.

Utilitza versions compatibles de Raknetify2 en el client i en el servidor intermediari. Consulta Compatibilitat abans de combinar versions diferents.

Velocity

En velocity.toml, l'ajust bind determina l'adreça i el port TCP en els quals Velocity escolta connexions de Minecraft. Normalment Raknetify2 usa aquest mateix número de port en UDP. Les entrades de [servers] identifiquen els servidors de joc. Deixa en elles les adreces TCP d'aquests servidors. Consulta la referència de configuració de Velocity.

Per a usar un port UDP diferent, afegeix aquest argument de la JVM abans de -jar en l'ordre d'inici de Velocity:

-Draknetify.velocity.portOverride=25570

Substitueix 25570 pel port triat. Així canvies el port UDP de RakNet sense modificar el port TCP de Velocity ni les adreces dels servidors de joc. Reinicia Velocity després de modificar l'argument.

Configura el reenviament d'informació dels jugadors tant en Velocity com en els seus servidors de joc. Si el programari del servidor de joc admet el mode de reenviament modern, usa'l i mantingues en secret la clau de reenviament. Segueix les instruccions per al teu servidor en la guia de reenviament d'informació dels jugadors de Velocity. Mantingues a més les restriccions del tallafocs en els servidors de joc.

BungeeCord

En el fitxer config.yml de BungeeCord, el valor de host en cada entrada de listeners defineix una adreça i un port TCP d'escolta per a Minecraft. Raknetify2 sol afegir UDP en aquest mateix número de port. En servers figuren les adreces TCP dels servidors de joc. Consulta la guia de configuració de BungeeCord.

Per a usar un port UDP diferent, afegeix aquest argument de la JVM abans de -jar en l'ordre d'inici de BungeeCord:

-Draknetify.bungee.portOverride=25570

L'ajust afecta tot el procés del servidor intermediari. Si Minecraft escolta en diverses adreces, comprova al registre d'arrencada quines són les adreces i els ports reals de RakNet abans d'afegir regles al tallafocs. Reinicia BungeeCord després de canviar l'argument.

Mantingues l'autenticació de comptes en el servidor intermediari. Per als servidors de joc Spigot, la guia de reenviament de adreces IP de BungeeCord combina ip_forward: true en el servidor intermediari amb settings.bungeecord: true en el servidor de joc. El reenviament per si sol no impedeix que algú es connecti directament al servidor de joc. Restringeix l'accés segons les instruccions del tallafocs.

Elegir l'adreça que usaran els jugadors

Tots dos servidors intermediaris admeten ports de 1 a 65534 en aquest ajust. Els valors no vàlids s'ignoren, així que comprova al registre d'arrencada quin port UDP s'ha obert. Per a tornar a usar el número de port d'escolta de Minecraft, treu l'argument i reinicia el servidor intermediari.

Els jugadors es connecten al nom de màquina públic i al port UDP del servidor intermediari, per exemple raknet;play.example.com:25570. Si un encaminador canvia el número de port, usa el seu port UDP públic en l'adreça del client. Les adreces sense el prefix raknet; continuen usant el port d'escolta TCP del servidor intermediari.

Assigna ports UDP diferents a Query, Geyser i els altres serveis UDP. Canviar un port TCP no resol un conflicte entre sòcols UDP.

Simple Voice Chat i altres relés UDP

Simple Voice Chat usa el seu propi complement de servidor intermediari i el seu propi port UDP en Velocity i BungeeCord. Consulta la guia de Simple Voice Chat per a servidors intermediaris per a configurar-los.

Si hi ha un relé UDP davant del servidor intermediari Minecraft que envia capçaleres del protocol PROXY v2, configura Raknetify2 segons la guia de reenviament UDP i protocol PROXY. Instal·lar Velocity o BungeeCord sense aquest relé no requereix aquesta configuració.

Comprovar la connexió

Fes una prova des de fora de la teva xarxa local amb un client Raknetify2. Entra a través del servidor intermediari, canvia entre els servidors de joc que usis i verifica que es conserven la identitat i els permisos del jugador.

  • Si TCP funciona a través del servidor intermediari però s'esgota el temps d'espera de RakNet, comprova el port d'escolta UDP del servidor intermediari, el port públic, les rutes IPv4 i IPv6 i les regles del tallafocs.
  • Si tots dos transports fallen quan el servidor intermediari es connecta a un servidor de joc, comprova l'adreça TCP, les regles d'accés i la configuració de reenviament d'informació dels jugadors en aquest servidor.
  • Si el servidor intermediari indica que el port UDP està ocupat, comprova si l'usa Query, Geyser, un servidor intermediari de veu o un altre procés.

En informar d'un problema, inclou registres del servidor intermediari i del servidor de joc que corresponguin al mateix intent de connexió. En Solució de problemes s'indiquen les versions que has d'especificar.

Configuració del tallafocs i de l'encaminador

Aquesta guia va dirigida als qui administren servidors. Raknetify2 necessita una ruta UDP operativa fins al servidor o servidor intermediari que accepti les connexions RakNet. De manera predeterminada usa el mateix número de port que Minecraft en TCP.

Si els jugadors estan en la mateixa xarxa local, usa l'adreça local del servidor i permet UDP en el tallafocs d'aquesta màquina. Necessites redirigir ports en l'encaminador quan el trànsit d'Internet ha de travessar la seva NAT IPv4.

Triar la destinació i el port

Servidor directe

Dirigeix el trànsit UDP públic a la màquina que executa el servidor Minecraft amb Raknetify2. Usa com a destinació el port d'escolta UDP de RakNet en aquest servidor i permet-lo en el tallafocs de la màquina. Conserva la ruta TCP existent per a les connexions normals de Minecraft.

Per exemple, si Raknetify2 escolta en el port UDP 25570, redirigeix el port UDP públic a l'adreça local del servidor en el port 25570. El port TCP del servidor pot continuar sent 25565. Per a triar un altre port UDP, consulta la configuració d'escolta del servidor directe.

Velocity o BungeeCord

Dirigeix el trànsit UDP públic a la màquina que executa Velocity o BungeeCord amb el complement Raknetify2. Utilitza com a destinació de la readreça el port d'escolta UDP de RakNet en el servidor intermediari. Conserva la ruta TCP pública que ja usa el servidor intermediari per a les connexions normals de Minecraft.

El servidor intermediari es connecta als servidors de joc Minecraft mitjançant TCP. Instal·lar Raknetify2 en el servidor intermediari no requereix obrir als jugadors els ports UDP dels servidors de joc.

Connexió Accés que s'ha de permetre
Dels jugadors al servidor intermediari UDP públic al port d'escolta de RakNet, a més del port d'escolta TCP públic existent
Del servidor intermediari als servidors de joc Ports TCP de Minecraft dels servidors de joc, accessibles únicament des de les màquines que executen els servidors intermediaris previstos
Dels jugadors directament als ports dels servidors de joc Mantenir bloquejat aquest accés, també per IPv6

Si el servidor intermediari i els servidors de joc s'executen directament en una màquina dedicada que administres, pots fer que els servidors de joc escoltin en adreces de bucle local i configurar el servidor intermediari perquè es connecti a aquestes adreces. Si estan en màquines diferents, utilitza un tallafocs o una xarxa privada aïllada perquè només els servidors intermediaris puguin accedir per TCP als servidors de joc. Els contenidors i els allotjaments gestionats necessiten restriccions equivalents adaptades a la seva xarxa. Consulta la guia de seguretat dels servidors de joc de Velocity i la guia del tallafocs de BungeeCord.

El reenviament d'informació dels jugadors i el tallafocs es complementen. Si es pot accedir directament al servidor de joc, és possible saltar-se els controls d'inici de sessió del servidor intermediari. Per a instal·lar el complement, configurar el reenviament o canviar el port UDP, consulta Velocity i BungeeCord.

Números de port públics i locals

Si l'encaminador tradueix els ports, el port públic pot ser diferent del port d'escolta:

Ajust Port que s'ha d'usar
Adreça del servidor introduïda en el client Port UDP públic
Port extern de la regla de readreça de l'encaminador Port UDP públic
Port intern de la regla de readreça de l'encaminador Port d'escolta UDP de RakNet
Port local en el tallafocs de la màquina Port d'escolta UDP de RakNet

Readreça de ports IPv4

Per a allotjar un servidor darrere d'un encaminador IPv4:

  1. Esbrina l'adreça IPv4 local de la màquina que accepta les connexions RakNet. Usa una reserva DHCP o una adreça estàtica adequada perquè la regla de readreça continuï apuntant a aquesta màquina.
  2. Afegeix una regla de readreça UDP per al port públic que usaran els jugadors.
  3. En la destinació de la regla, indica l'adreça local d'aquesta màquina i el port d'escolta UDP de RakNet.
  4. En el tallafocs de la màquina, permet el trànsit UDP entrant en el port d'escolta.

Per exemple, si el servidor escolta en el port UDP 25565, la regla pot usar el port públic 25565, l'adreça de destinació 192.168.1.100 i el port de destinació 25565. Substitueix l'adreça d'exemple per l'adreça local real del teu servidor.

Conserva la regla TCP existent per a les connexions normals de Minecraft. Una regla que només redirigeix TCP no transmet UDP.

Si la readreça segueix sense funcionar

Comprova si un altre encaminador o el teu proveïdor d'Internet fa NAT abans que el trànsit arribi al teu encaminador. Si administres dos encaminadors en sèrie, configura la readreça en tots dos. Si el teu proveïdor usa NAT compartit entre clients (CGNAT), pregunta-li si pot donar-te una adreça IPv4 pública o usa un allotjament o túnel que admeti UDP entrant. Les regles del teu encaminador no configuren el NAT del proveïdor. La guia de readreça de ports de TP-Link explica el requisit d'una adreça pública en la interfície WAN.

Regles del tallafocs IPv6

Permet el port UDP triat tant en el tallafocs IPv6 de l'encaminador com en el de la màquina. Usa com a destinació l'adreça IPv6 de la màquina que accepta les connexions RakNet.

Comprova que l'adreça IPv6 associada al nom de màquina apunta a aquesta màquina. Si la seva adreça IPv6 canvia, actualitza el registre DNS i qualsevol regla del tallafocs que especifiqui l'adreça antiga.

Si un nom de màquina publica adreces IPv4 i IPv6, cada adreça anunciada necessita una ruta que funcioni. Si un jugador aconsegueix entrar i un altre no, comprova les regles de tots dos protocols.

Si la readreça IPv4 canvia el número de port, assegura't que el port introduït pels jugadors també arriba al servei que escolta en IPv6. La traducció de ports IPv4 no configura la ruta IPv6.

Proveïdors d'allotjament i túnels

El proveïdor o el túnel ha d'admetre UDP en l'adreça i el port públics que comuniquis als jugadors. Comprova els ports assignats i les regles del seu tallafocs de xarxa, a més del tallafocs del servidor.

Si un servidor intermediari UDP addicional reenvia les adreces dels clients mitjançant el protocol PROXY v2, segueix la guia de reenviament UDP i protocol PROXY i limita l'accés al port d'escolta UDP de destinació al servidor intermediari de confiança.

Comprovar la connexió

Connecta't des de fora de la xarxa local del servidor amb un client Raknetify2 actualitzat usant una adreça com raknet;play.example.com:25565. Indica en ella el port UDP públic.

Comprova la ruta amb una connexió RakNet real. Un escaneig UDP que no rep resposta pot donar un resultat indeterminat, ja que un servei operatiu pot descartar una sonda que no reconeix. La documentació de Nmap sobre escaneig UDP explica aquest comportament.

Una connexió TCP correcta només confirma que funciona la ruta TCP. Si s'esgota el temps d'espera de RakNet, comprova el port d'escolta, la destinació de la readreça, el port UDP i les regles del tallafocs amb la guia de solució de problemes.

Compatibilitat

Comprova la compatibilitat de la versió concreta que descarreguis. La branca de desenvolupament pot incloure funcions que encara no formen part de cap versió publicada.

Versions de Minecraft i de Java

Versions de Minecraft i de Java · English

La versió de Java que indica Raknetify2 és el mínim que necessita el mod. Minecraft o el carregador poden requerir una versió més recent. Tria una versió de Java que compleixi els tres requisits.

Versions del client i del servidor

Sempre que puguis, usa la mateixa versió de Raknetify2 en el client i en el servidor o servidor intermediari que rep la connexió. Consulta les notes de la versió abans de combinar versions diferents. Per a xifrar una connexió RakNet, tots dos extrems han d'admetre el protocol de xifrat autenticat. El Raknetify original i les versions de Raknetify2 anteriors a la introducció d'aquest protocol no poden establir aquestes connexions xifrades amb instal·lacions actualitzades.

Raknetify2 transporta el protocol de joc de Minecraft. Per a connectar versions diferents de Minecraft fa falta un sistema compatible de traducció de protocols.

Altres mods

Altres mods · English

Si tens problemes en un paquet de mods més gran, segueix la guia de solució de problemes. Indica en l'informe les versions exactes de tots els mods.

Mode ordenat

Mode ordenat

Normalment els canals de paquets de Raknetify2 són independents: quan un canal espera dades perdudes, els altres poden continuar avançant. En mode ordenat tots els paquets de Minecraft viatgen per un únic canal. Si es perd un paquet, tots els posteriors que viatgen en el mateix sentit esperen que es retransmeti. Això manté l'ordre que esperen alguns sistemes antitrampes, a costa que el trànsit de joc no relacionat també hagi d'esperar.

Activar el mode ordenat

  1. Instal·la una versió de Raknetify2 que admeti el mode ordenat en el servidor o servidor intermediari que accepta les connexions RakNet i en cada client RakNet.

  2. En el directori de treball d'aquest servidor o servidor intermediari, crea el fitxer config/raknetify2-compatibility.json. Si el directori config no existeix, crea'l.

  3. Afegeix aquest contingut:

    {"mode": "ordered"}
  4. Reinicia el servidor o el servidor intermediari.

Els clients adopten l'ajust del servidor automàticament. Els jugadors no necessiten crear un fitxer de configuració ni canviar l'adreça RakNet del servidor.

Tots els paquets de Minecraft, inclosos els delimitadors de grups de paquets i els canvis de món, usen un únic canal fiable i ordenat en cada sentit.

Instal·lacions amb servidor intermediari

Si els jugadors es connecten a través de Velocity o BungeeCord, configura el mode ordenat en aquest servidor intermediari, encara que el sistema antitrampes s'executi en un servidor de joc.

L'ajust continua aplicant-se en canviar de servidor de joc. En mode ordenat, el servidor intermediari reenvia les sol·licituds de manteniment de connexió del servidor de joc al client del jugador en lloc de respondre-les ell mateix.

Comprovar l'ajust

En la primera connexió RakNet, la consola mostra:

Raknetify2 compatibility: ordered (updated clients required, genuine acknowledgements)

Si tots dos extrems negocien correctament el mode de compatibilitat, en el registre també apareix ordered compatibility negotiated, seguit de l'adreça de l'altre extrem.

Mantingues activats els controls antitrampes i prova la teva pròpia configuració.

Clients antics

Els clients RakNet que no admeten el mode ordenat no poden connectar-se a un servidor que l'exigeixi. Actualitza Raknetify2 en aquests clients o connecta't a l'adreça i el port TCP habituals del servidor o del servidor intermediari sense el prefix raknet;.

Tornar al mode multicanal

Substitueix el contingut del fitxer per:

{"mode": "multichannel"}

Després, reinicia el servidor o el servidor intermediari. També pots eliminar el fitxer i reiniciar per a restablir el mode multicanal.

Problemes de configuració

El fitxer ha de contenir un únic ajust anomenat mode, amb el valor "ordered" o "multichannel". Els valors distingeixen entre majúscules i minúscules.

Si la configuració no és vàlida o no es pot llegir, es rebutgen les connexions RakNet. Corregeix el fitxer i reinicia el procés.

Si la consola continua indicant multichannel, comprova que el fitxer estigui sota el directori de treball del servidor o servidor intermediari que rep la connexió RakNet. Després, reinicia aquest procés.

Transferències automàtiques

Els servidors Fabric, Forge i NeoForge poden triar RakNet en transferir un client compatible a una destinació configurada. Per a això utilitzen les transferències que Minecraft incorpora des de Java Edition 1.20.5. Comprova que la teva versió de Raknetify2 sigui compatible amb la versió de Minecraft i el carregador de cada extrem.

Instal·la Raknetify2 en el servidor que envia la transferència i en el client. La destinació ha d'escoltar connexions RakNet compatibles i acceptar transferències entrants de Minecraft.

Aquesta configuració s'aplica a les transferències que envien els tres carregadors anteriors. Els complements de Spigot/Paper, Velocity i BungeeCord no llegeixen aquest fitxer de transferències.

Configurar el servidor d'origen

En el directori del servidor d'origen, crea el fitxer config/raknetify2-transfers.json:

{
  "destinations": [
    {
      "host": "play.example.com",
      "tcpPort": 25565,
      "udpPort": 25570
    }
  ]
}

Substitueix el nom de màquina i els ports de l'exemple pels de la teva destinació. Després, reinicia el servidor d'origen. Si tens més destinacions, afegeix-les a la mateixa llista.

Camp Significat
host Nom de màquina o adreça IP de destinació, sense prefix de transport ni port
tcpPort Port de destinació de la sol·licitud de transferència original
udpPort Port RakNet públic al qual ha de connectar-se el client transferit

Els números de port TCP i UDP poden coincidir. Si un encaminador canvia el número de port UDP, indica el port públic en aquest fitxer. Escriu els ports com a números JSON.

Envia les sol·licituds de transferència al nom de màquina i al port TCP habituals de la destinació. Raknetify2 comprova si el client anuncia que admet transferències automàtiques. Si les admet i la destinació coincideix amb una entrada, selecciona el port UDP configurat. Per als altres clients o destinacions, es conserva l'adreça de transferència original.

La comparació utilitza el nom de màquina i el port TCP de la sol·licitud. En comparar noms de màquina, s'ignoren les diferències entre majúscules i minúscules i el punt DNS final. També es normalitzen les formes equivalents d'escriure una adreça IPv6. No es realitzen consultes DNS. Dos noms que es resolen a la mateixa adreça necessiten entrades independents. No s'admeten comodins.

Configurar la destinació

Si la destinació usa el fitxer server.properties de Minecraft, estableix accepts-transfers=true i reinicia'l. Si és un servidor intermediari, pot tenir un ajust de transferències propi. De manera predeterminada Minecraft rebutja les transferències entrants encara que es pugui entrar directament en el servidor.

El port d'escolta RakNet de la destinació, la readreça UDP pública i el tallafocs de la màquina han d'estar configurats per endavant. El fitxer de transferències del servidor d'origen determina quina adreça s'envia al client.

Si el nom de màquina de la destinació publica adreces IPv4 i IPv6, comprova totes dues rutes. Abans d'investigar problemes amb la transferència automàtica, prova una connexió RakNet directa a la destinació.

Mantingues els controls d'accés i inici de sessió de la destinació. Aquesta configuració no dona accés als jugadors ni substitueix l'autenticació del servidor.

Errors de configuració i desactivació

Si falta un camp, hi ha camps desconeguts, ports no vàlids o destinacions duplicades, es produeix un error de configuració en iniciar-se el servidor. Consulta el registre per a identificar l'error, corregeix el JSON i reinicia.

Per a desactivar la selecció automàtica, elimina el fitxer de configuració o usa {"destinations": []}. Després, reinicia el servidor d'origen. Les seves sol·licituds de transferència conservaran les adreces originals.

Reenviament UDP i protocol PROXY

Un servidor intermediari UDP pot reenviar el trànsit RakNet i conservar l'adreça original del client mitjançant el protocol PROXY v2. Activa aquesta funció si un servidor intermediari UDP situat abans del teu servidor envia aquestes capçaleres al port d'escolta. Per a una readreça de ports normal en l'encaminador no fa falta activar-la.

En el servidor o servidor intermediari Minecraft que rep el trànsit UDP reenviat, crea el fitxer config/raknetify2-proxy-protocol.json:

{
  "trustedProxies": ["192.0.2.10"]
}

Substitueix l'exemple per l'adreça IP d'origen real del servidor intermediari UDP o per un interval CIDR que controles. L'adreça ha de coincidir amb la que veu el servei receptor després de qualsevol NAT intermedi. S'admeten adreces IPv4 i IPv6 escrites directament. Els noms de màquina DNS es rebutgen. Reinicia el servidor o servidor intermediari receptor.

Configura el servidor intermediari que reenvia el trànsit perquè enviï capçaleres del protocol PROXY v2 per a UDP. Raknetify2 només accepta adreces de clients transmeses pels orígens de la llista. Mentre aquesta configuració estigui activa, es rebutgen les connexions RakNet directes que no incloguin aquestes capçaleres. La configuració d'escolta TCP es conserva.

Confiança i control d'accés

Cada servidor intermediari de la llista està autoritzat a indicar les adreces dels clients. Restringeix l'accés al port UDP de destinació en el seu tallafocs perquè només pugui arribar el servidor intermediari previst. Limita els intervals de adreces de confiança tant com permeti la teva xarxa.

El fitxer ha de contenir únicament trustedProxies amb almenys una entrada. Una llista buida produeix un error. Si el fitxer no és vàlid, RakNet no pot obrir el seu port d'escolta.

Per a tornar a les connexions UDP directes, elimina el fitxer i reinicia el servei d'escolta. Actualitza també el reenviament del servidor intermediari anterior i les regles del tallafocs per a la nova ruta.

Si les connexions fallen després d'activar aquesta funció, comprova l'adreça d'origen real del servidor intermediari tal com la veu el servidor de destinació, l'interval de confiança configurat i si el servidor intermediari envia capçaleres PROXY v2 per a UDP.

Per a instal·lar un servidor intermediari Minecraft i configurar els servidors de joc, consulta Velocity i BungeeCord.

Simple Voice Chat

Raknetify2 pot compartir el seu port d'escolta UDP amb Simple Voice Chat en servidors Fabric, Forge, NeoForge, Spigot i Paper.

Instal·la Simple Voice Chat en el servidor i en els clients que vagin a usar el xat de veu. Per a la resta dels ajustos, consulta la seva guia de configuració del servidor.

Col·loca el fitxer de Raknetify2 en el directori config situat en l'arrel del servidor, també en Spigot/Paper. El fitxer de Simple Voice Chat roman en la ubicació que correspongui a la teva plataforma, com s'indica a continuació.

Compartir el port de joc

  1. En el directori del servidor, crea el fitxer config/raknetify2-voicechat.json amb aquest contingut:

    {"enabled": true}
  2. Estableix port=-1 en la configuració de servidor de Simple Voice Chat. En servidors amb mods, el fitxer és config/voicechat/voicechat-server.properties. En Spigot/Paper és plugins/voicechat/voicechat-server.properties.

  3. Deixa buit bind_address si hi ha un únic servei d'escolta RakNet que coincideixi. Si el servidor escolta en diverses adreces en aquest port UDP, indica l'adreça local que vols compartir.

  4. Reinicia el servidor i executa /voicechat test <PLAYERNAME> per a un jugador connectat.

Si RakNet escolta en un port diferent del de Minecraft, indica aquest port UDP local en l'ajust de veu port en lloc d'usar -1. Per exemple, si RakNet escolta en el port UDP local 25570, usa port=25570.

Configura voice_host quan el client necessiti una adreça o un port públic diferent. Si l'encaminador redirigeix el port UDP públic 25580 al port UDP local 25570, usa port=25570 i voice_host=play.example.com:25580. L'adreça pública va en voice_host. L'ajust bind_address selecciona l'adreça local d'escolta.

Raknetify2 proporciona el sòcol UDP compartit mitjançant l'API de Simple Voice Chat. Simple Voice Chat s'ocupa de l'autenticació i el xifrat de la veu. Els jugadors poden usar el xat de veu tant si juguen a través de TCP com si ho fan a través de RakNet.

Altres serveis UDP i servidors intermediaris

Reserva ports UDP diferents per a Query i Geyser. La integració de sòcol compartit només admet Simple Voice Chat.

La integració no comparteix el sòcol del servidor intermediari de veu en Velocity ni en BungeeCord. Segueix la guia de configuració del servidor intermediari de Simple Voice Chat i assigna al servidor intermediari de veu el seu propi port UDP. Amb el complement oficial del servidor intermediari de veu, qualsevol valor públic de voice_host que vulguis fixar ha d'anar en la configuració de veu del servidor intermediari. El complement ignora els ajustos de voice_host dels servidors de joc.

Si utilitzes un túnel UDP genèric, indica en voice_host el nom de màquina i el port UDP públics que condueixen a aquest servidor.

Desactivar l'ús compartit o resoldre un conflicte de sòcols

Si el registre mostra No RakNet listener matches the voice bind address and port, comprova que RakNet hagi arrencat correctament i que el port i l'adreça d'escolta del servei de veu coincideixin amb els de RakNet en aquesta màquina.

Si apareix Multiple RakNet listeners match the voice bind address, selecciona una de les adreces locals coincidents en bind_address i reinicia.

Només un complement de Simple Voice Chat pot proporcionar el sòcol UDP. Si en arrencar s'indica que un altre complement ja ho proporciona, tria quina de les dues integracions vols usar.

Per a desactivar la integració de Raknetify2, estableix {"enabled": false} en el seu fitxer de configuració de veu o elimina el fitxer. Assigna a Simple Voice Chat un altre port UDP, actualitza les regles del tallafocs o de readreça i reinicia el servidor.

Solució de problemes

TCP funciona, però s'esgota el temps d'espera de RakNet

Comprova aquests punts en ordre:

  1. El client té el mod Raknetify2 adequat per al seu carregador i la seva versió de Minecraft.
  2. Raknetify2 està instal·lat en el servidor o servidor intermediari que accepta la connexió i s'ha iniciat sense errors en obrir el port d'escolta.
  3. L'adreça comença per raknet; i usa el port UDP públic.
  4. El proveïdor d'allotjament, l'encaminador i el tallafocs de la màquina permeten UDP en aquest port.
  5. Les adreces IPv4 i IPv6 del nom de màquina apunten a la màquina prevista i les seves regles de tallafocs permeten l'accés.

Una connexió TCP correcta només confirma que funciona la ruta TCP. Consulta la configuració del tallafocs i de l'encaminador per a comprovar la readreça UDP i l'accés IPv6. Si està activat el protocol PROXY, els clients han d'arribar al port d'escolta a través d'un servidor intermediari configurat com de confiança.

Adreça en ús

Comprova si un altre procés usa el port UDP. Query, Geyser i els altres serveis UDP necessiten els seus propis ports. Simple Voice Chat admet l'ús compartit del port.

Pots triar un altre port UDP local en la configuració d'escolta del servidor directe o en la configuració de Velocity i BungeeCord. Comprova quina versió de Spigot/Paper requereix aquest ajust. Canviar únicament el port públic de l'encaminador no resol un conflicte de sòcols en la màquina.

Es pot entrar directament, però les transferències fallen

Connecta't directament a la destinació usant la seva adreça amb el prefix raknet;. Si la connexió falla, corregeix primer el servei d'escolta de destinació o la ruta de xarxa.

Si les connexions directes funcionen, comprova que la destinació accepti transferències entrants. Un servidor Minecraft que utilitza server.properties necessita l'ajust accepts-transfers=true. Una connexió directa no posa a prova aquest ajust.

Després compara el nom de màquina i el port TCP de la transferència amb els de config/raknetify2-transfers.json en el servidor d'origen. Comprova que el fitxer s'hagi carregat després de reiniciar i que el client admeti transferències RakNet automàtiques. Consulta Transferències automàtiques.

Errors de xifrat o de protocol

Comprova les versions de Raknetify2 en tots dos extrems de la connexió. Quan una versió canviï el protocol xifrat, actualitza alhora el client i el servidor o servidor intermediari. Mantingues la configuració d'autenticació del servidor mentre investigues el problema.

Fallades relacionades amb un mod

Anota quina acció provoca la fallada, per exemple obrir un inventari, rebre un paquet de recursos, canviar de món o generar una entitat. Quan sigui possible, repeteix la mateixa acció en una instal·lació de prova a part i compara els resultats amb TCP i RakNet.

Alguns missatges personalitzats depenen de l'ordre dels paquets de Minecraft. Els autors de mods poden declarar aquestes dependències mitjançant la interfície d'ordenació de paquets.

Informa d'un error

Obre una incidència en el registre d'incidències de Raknetify2 i inclou:

  • Les versions de Minecraft, Java, el carregador de mods i Raknetify2 en tots dos extrems.
  • Les versions del programari del servidor i del servidor intermediari, inclòs qualsevol servidor intermediari de reenviament UDP.
  • Els altres mods instal·lats i les seves versions.
  • Els passos per a reproduir el problema i el resultat que esperaves.
  • Si els mateixos passos funcionen amb TCP.
  • Extractes pertinents dels registres del client, del servidor i del servidor intermediari corresponents al mateix intent.

Abans de pujar els registres, elimina els testimonis d'accés, contrasenyes i altra informació privada. Conserva els missatges d'excepció i les traces de la pila necessaris per a diagnosticar el problema.

Integració amb altres mods

Amb Raknetify2, els mods poden indicar quins paquets de Minecraft han de conservar el seu ordre respecte als seus missatges personalitzats. Utilitza aquesta funció si per a processar un missatge és necessari que paquets anteriors hagin creat una entitat o un chunk, preparat un inventari o establert algun altre estat del joc.

Grups d'ordenació

Grup Trànsit relacionat
ui Menús i interaccions independents del món
entity Aparició, eliminació i moviment d'entitats
world_interaction Inventaris i altres interaccions que depenen del món
effects Sons i partícules
chunk Actualitzacions del terreny, els blocs i la il·luminació

Cada grup manté un lliurament fiable i ordenat dins del seu canal. Els paquets de grups diferents poden arribar en un altre ordre relatiu. Tria el grup que correspongui a les dades de les quals depengui el teu missatge.

Integració opcional amb Fabric

Declara un proveïdor en el punt d'entrada raknetify:packet_channels del fitxer fabric.mod.json del teu mod. El proveïdor implementa Consumer<BiConsumer<String, String>> amb tipus del JDK. Rep una funció de registre que accepta l'identificador d'un missatge personalitzat i un grup d'ordenació.

Integra aquesta entrada en les teves metadades actuals. Substitueix el nom de la classe pel nom complet de la classe del teu proveïdor, inclòs el paquet:

{
  "entrypoints": {
    "raknetify:packet_channels": [
      "com.example.mod.OrderingProvider"
    ]
  }
}

Conserva la resta del fitxer fabric.mod.json, inclosos els punts d'entrada existents. L'exemple mostra només un fragment de les metadades.

Per exemple, una extensió que gestioni el moviment d'entitats pot registrar example:entity_path en el grup entity. La documentació de l'API PacketOrdering inclou la implementació del proveïdor.

Si Raknetify2 no està instal·lat, Fabric no invoca aquest punt d'entrada. Els proveïdors han de declarar els identificadors i els grups durant la inicialització, sense dependre del fet que un altre mod ja hagi acabat d'inicialitzar-se.

Funcionament del registre

Els mods de Forge i NeoForge i els complements de servidor o de servidor intermediari poden cridar a PacketOrdering.register(identifier, group) durant la inicialització quan Raknetify2 estigui disponible. La classe és com.ishland.raknetify.api.PacketOrdering. Registra les declaracions abans d'acceptar connexions de jugadors. Si la integració és opcional, evita que el seu codi carregui classes de Raknetify2 quan falti aquesta dependència.

Les declaracions s'apliquen a les connexions noves. Les connexions existents conserven les regles que van rebre en establir-se. Es permet repetir una declaració idèntica. No es pot assignar un mateix identificador a grups diferents.

Els identificadors de missatges han d'usar un espai de noms personalitzat vàlid. L'espai de noms minecraft està reservat. El límit de cada extrem és de 128 declaracions en total, incloses les regles integrades i els registres d'altres mods. Els identificadors admeten fins a 255 caràcters ASCII i han de seguir la sintaxi d'identificadors amb espai de noms de l'API.

Els extrems RakNet actualitzats intercanvien les seves declaracions en establir la connexió. Si un servidor o servidor intermediari no té una regla local per a un missatge, pot usar la declaració de l'altre extrem. Les regles locals tenen prioritat i les declaracions rebudes només s'apliquen a aquesta connexió.

Servidors intermediaris UDP

Per als relés UDP i el reenviament de adreces de clients, consulta Reenviament UDP i protocol PROXY.

Per a configurar un servidor intermediari de Minecraft, consulta Velocity i BungeeCord.

English (US)

Clone this wiki locally