Skip to content

Wiki da dk

pjscruggs edited this page Nov 11, 2026 · 2 revisions

Raknetify2 · Dansk (Danmark)

Sprog

Multiplayer

Netværksforbindelser via RakNet til Minecraft-klienter og -servere.

Download · GitHub

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

Tilføj server

  1. Multiplayer

  2. Tilføj server

  3. Serveradresse

    Serveradresse
    RakNet · UDP raknet;play.example.com:25565
    TCP play.example.com:25565
  4. Færdig

  5. Deltag i serveren

F3 · Raknetify2

F3
RakNet · UDP Aktiv · MTU 1400
TCP Inaktiv

Velocity / BungeeCord

  1. Klient · Raknetify2 → UDP → Velocity / BungeeCord · Raknetify2
  2. Velocity / BungeeCord → TCP → Server
Portnummer · 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

Udløbet

Serveradresse UDP
raknet;play.example.com:25580 play.example.com:25580 → NAT → 192.0.2.10:25570
Server · 192.0.2.10 25570/udp

config/raknetify2-compatibility.json

Server / Velocity / BungeeCord

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

Simple Voice Chat

Server 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

Serveradresse trustedProxies RakNet
192.0.2.10 · PROXY v2 / UDP ["192.0.2.10"] ✓
192.0.2.11 · PROXY v2 / UDP ["192.0.2.10"] ✗
Klient → RakNet / UDP ["192.0.2.10"] ✗

config/raknetify2-proxy-protocol.json

{"trustedProxies":["192.0.2.10"]}

Minecraft ≥ 1.20.5 · /transfer

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

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

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

PacketOrdering

Minecraft
ui Indstillinger
entity Skelet
world_interaction Taske
effects Partikler
chunk Blokke

PacketOrdering.java

Inkompatibel version!

Rapporter fejl

Hjem

Raknetify2

Raknetify2 bruger RakNet over UDP til Minecrafts flerspillertilstand. Trafikken fordeles på kanaler, som hver især leverer deres pakker i rækkefølge. Hvis en pakke går tabt på én kanal, kan de andre fortsætte med at sende data. Spillet kan derfor reagere på spillerens handlinger, mens tabte data sendes igen, eller mens dele af verden overføres.

Raknetify2 er en selvstændigt vedligeholdt forgrening af Raknetify, som oprindeligt blev udviklet af ishland. Projektet tilføjer understøttelse af nyere Minecraft-versioner og vedligeholder transportkoden, integrationen med de forskellige platforme og kompatibilitetstestene.

Kom i gang

  1. Tjek Minecraft- og modkompatibilitet.
  2. Vælg et download og installer det.
  3. Forbind med en adresse som raknet;play.example.com.

Servervejledninger

Mod-udviklere kan bruge packet ordering interface til at deklarere afhængigheder mellem brugerdefinerede payloads og Minecraft-trafik.

Projektlinks

Raknetify2 bruger MIT-licensen og beholder de originale ophavsretsmeddelelser. Dens netværksimplementering bygger på Raknetify og netty-raknet.

Installation

Download en udgivelse fra GitHub Releases. Tjek Minecraft-versionen og loaderkravene for den udgivelse, før du installerer.

Hvor du installerer Fil Mappe
Fabric klient eller server raknetify2-fabric-*.jar mods
Forge klient eller server raknetify2-forge-*.jar mods
NeoForge klient eller server raknetify2-neoforge-*.jar mods
Spigot eller Paper server raknetify2-spigot-*.jar plugins
Velocity proxy raknetify2-velocity-*.jar plugins
BungeeCord proxy raknetify2-bungee-*.jar plugins

Luk klienten eller stop serveren, før du udskifter dens JAR. Fjern den originale Raknetify JAR og eventuelle ældre Raknetify2 JAR fra samme installation, før du tilføjer den nye fil.

Klientmapper tilhører Minecraft-instansen eller modpakken, du starter. Server- og proxymapper tilhører den server- eller proxyinstallation. Opret den passende mappe, hvis din loader endnu ikke har oprettet den.

Direkte serverforbindelser

  1. Installer klientmoddet til din loader.
  2. Installer den matchende servermod, eller Spigot/Paper-pluginet på en kompatibel server.
  3. Følg Firewall og routerkonfiguration for at tillade UDP-forbindelser til serveren.
  4. Genstart klienten og serveren.
  5. Tilføj en serveradresse som raknet;play.example.com eller raknet;play.example.com:25565.

Adresser uden forstien raknet; bruger TCP.

At installere klientmoddet alene tilføjer ikke RakNet-understøttelse til en fjernserver. Serveroperatøren skal levere et RakNet-endpoint. Spillere, der deltager i en anden persons server, behøver normalt ingen indgående router-videresendelsesregler.

Velocity og BungeeCord

Installer det matchende proxy-plugin og klientmoddet. Følg Velocity og BungeeCord for lytterindstillinger, backend-videresendelse, adgangsbegrænsninger og den adresse, spillere skal bruge.

En separat UDP-lytterport

For en direkte Minecraft-server, indstil det passende Java-argument nedenfor. Proxy-operatører bør bruge Velocity og BungeeCord-lytterindstillinger.

Platform Java-argument Accepterede porte
Fabric-, Forge- eller NeoForge-server -Draknetify.fabric.portOverride=25570 1 til 65534
Spigot eller Paper server -Draknetify.spigot.portOverride=25570 1 til 65535

Forge og NeoForge bruger den delte lytterkode, så deres egenskabsnavn indeholder også fabric. Erstat 25570 med det ønskede UDP-portnummer.

Spigot / Paper ≥ 0.1.0-beta.1.431

Tilføj argumentet før -jar i Java-kommandoen eller i din hosts JVM-argumentfelt. Genstart serveren og tillad UDP på den valgte lytteport. Hvis den offentlige port også er 25570, skal du forbinde med raknet;play.example.com:25570. Hvis en router oversætter porten, skal du bruge dens offentlige port i klientadressen. TCP-porten forbliver på dens eksisterende værdi.

På Spigot/Paper bevarer UDP-lytteren den lokale bindeadresse for Minecraft TCP-lytteren. En ugyldig override eller en optaget UDP-port forhindrer RakNet i at starte. Tjek opstartsloggen for den bundne UDP-adresse og port. Fjern argumentet og genstart for at vende tilbage til TCP-lytterens portnummer.

En router eller UDP-proxy kan også eksponere en anden offentlig UDP-port og videresende den til den eksisterende lytter uden at ændre serverens Java-argumenter.

Udviklingsbuilds

Åbn en vellykket main-kørsel i GitHub Actions og download dens Artifacts-arkiv. GitHub kræver en konto for at downloade workflow-artefakter. Brug installationstabellen ovenfor til at vælge en JAR fra arkivet.

Velocity og BungeeCord

Velocity og BungeeCord sidder mellem spillere og backend Minecraft-servere. Installer Raknetify2 på proxien og på hver klient, der vil forbinde via RakNet.

Raknetify2 klient --UDP--> Velocity eller BungeeCord --TCP--> backend server

Backend-serverne behøver ikke Raknetify2 for denne forbindelsessti. De har stadig brug for de mods, plugins og videresendelsesunderstøttelse, som dit netværk kræver. Raknetify2 oversætter ikke Minecraft-versioner eller ændrer proxyens kontoadministration.

Installer proxy-pluginet

  1. Bekræft, at almindelige TCP-forbindelser gennem din proxy fungerer, herunder autentificering og skift mellem backend-servere.
  2. Stop proxien og download den matchende plugin fra GitHub Releases.
  3. Placer raknetify2-velocity-*-all.jar eller raknetify2-bungee-*-all.jar i proxiens plugins-mappe. Fjern enhver ældre Raknetify eller Raknetify2 plugin fra den mappe.
  4. Installer den passende Raknetify2 klientmod ved hjælp af installationsvejledningen.
  5. Tjek lytterindstillingerne nedenfor, genstart proxien og inspicer dens log for RakNet lytterfejl.
  6. Tillad offentlig UDP-trafik til proxien og begræns backend-spilningsporte som beskrevet i Firewall og routerkonfiguration.

Brug kompatible Raknetify2-udgivelser på klienten og proxyen. Tjek Kompatibilitet før du blander udgivelser.

Velocity

Indstillingen bind i velocity.toml vælger Velocity's Minecraft lytteadresse og TCP-port. Raknetify2 bruger normalt samme portnummer til UDP. [servers]-indtastningerne identificerer backend-serverne. Hold disse indtastninger pegende på backend TCP-adresser. Se Velocity's konfigurationsreference.

For at bruge en separat UDP-port, tilføj dette JVM-argument før -jar i Velocity's opstartskommando:

-Draknetify.velocity.portOverride=25570

Erstat 25570 med din valgte port. Dette ændrer RakNet UDP-porten, mens det bevarer Velocity's TCP-port og backend-adresser. Genstart Velocity efter ændring af argumentet.

Konfigurer spillervideresendelse på både Velocity og dens baggrunde. Brug moderne videresendelse, når baggrundsprogramvaren understøtter det, og hold dens videresendelseshemmelighed privat. Følg de baggrundsspecifikke instruktioner i Velocity's guide til spillerinformationsvideresendelse. Behold baggrundsbrændemursbegrænsningerne sammen med videresendelsen.

BungeeCord

I BungeeCords config.yml identificerer værdien host under hver listeners-indgang en Minecraft lytteadresse og TCP-port. Raknetify2 tilføjer normalt UDP på det portnummer. servers-indgangene indeholder baggrunds TCP-adresser. Disse indstillinger er beskrevet i BungeeCord konfigurationsguide.

For en separat UDP-port skal du tilføje dette JVM-argument før -jar i BungeeCord's opstartskommando:

-Draknetify.bungee.portOverride=25570

Overskrivningen tilhører hele proxy-processen. For en konfiguration med flere Minecraft-lyttere, tjek de faktiske RakNet-endepunkter i opstartsloggen, før du tilføjer brændemursregler. Genstart BungeeCord efter ændring af argumentet.

Bevar kontogodkendelse på proxyen. For Spigot-backends parrer BungeeCord's Vejledning til IP-videresendelse ip_forward: true på proxyen med settings.bungeecord: true på backend. Viderestilling alene forhindrer ikke nogen i at oprette forbindelse direkte til en backend. Begræns backend-adgang ved hjælp af Instruktioner til firewall.

Vælg adressen, spillere bruger

Begge proxy-overstyringer accepterer porte fra 1 til 65534. Ugyldige værdier ignoreres, så bekræft den bundne UDP-port i opstartsloggen. Fjern argumentet og genstart for at vende tilbage til Minecraft-lytterens portnummer.

Spillere forbinder til proxyens offentlige hostname og UDP-port, for eksempel raknet;play.example.com:25570. Når en router oversætter porte, skal du bruge dens offentlige UDP-port i klientadressen. Adresser uden raknet;-præfikset fortsætter med at bruge proxyens TCP-lytter.

Lad Query, Geyser og andre UDP-tjenester køre på separate UDP-porte. En anden TCP-port løser ikke en UDP-sokkelkonflikt.

Stemmechat og yderligere UDP-videresendelse

Simple Voice Chat bruger sin egen proxy-plugin og UDP-port på Velocity og BungeeCord. Følg vejledningen til Voice Chat proxy for den opsætning.

Hvis en separat UDP-relæ sidder foran din Minecraft-proxy og sender PROXY-protokol v2-headers, konfigurer Raknetify2 ved hjælp af UDP-videresendelse og PROXY-protokol. Installation af Velocity eller BungeeCord alene kræver ikke den konfiguration.

Tjek forbindelsen

Test fra uden for dit lokale netværk med en Raknetify2-klient. Deltag via proxyen, skift mellem de backend-servere, du bruger, og bekræft at spilleridentitet og tilladelser forbliver korrekte.

  • Hvis TCP gennem proxien virker, men RakNet udløber, så tjek proxyens UDP-lytter, offentlige port, IPv4- og IPv6-ruter samt firewall-regler.
  • Hvis begge transportformer fejler, når proxien forbinder til en backend, så tjek backendens TCP-adresse, adgangsregler og spillervideresendelseskonfiguration.
  • Hvis proxien rapporterer en optaget UDP-port, så tjek efter Query, Geyser, en stemmeprotokoll eller en anden proces, der er bundet til den.

Til rapporter skal du inkludere både proxy- og backend-logs fra det samme forbindelsesforsøg. Se Fejlfinding for den versionsinformation, du skal inkludere.

Firewall- og routerkonfiguration

Denne vejledning er til serveroperatører. Raknetify2 skal have en fungerende UDP rute til serveren eller proxy'en, der accepterer RakNet forbindelser. Standardopsætningen bruger det samme portnummer som Minecraft's TCP lytter.

For spillere på samme lokale netværk, brug serverens lokale adresse og tillad UDP gennem dens værtssikkerhedsnetværk. Routerportvideresendelse er nødvendig, når internettrafik skal krydse din routers IPv4 NAT.

Vælg destination og port

Direkte server

Send offentlig UDP-trafik til maskinen, der kører Minecraft-serveren med Raknetify2. Destinationsporten er den servers RakNet UDP-lytter. Tillad den port i servermaskinens værtssikkerhedsnetværk. Bevar dens eksisterende TCP-rute for almindelige Minecraft-forbindelser.

For eksempel, hvis Raknetify2 lytter på UDP 25570, skal du videresende den offentlige UDP-port til serverens lokale adresse på port 25570. Serverens TCP-port kan forblive på 25565. Se indstillinger for direkte serverlytter for at vælge en anden UDP-port.

Velocity eller BungeeCord

Send offentlig UDP-trafik til maskinen, der kører Velocity eller BungeeCord med Raknetify2 proxy-pluginet. Brug proxyens RakNet UDP-lytter som viderestillingsdestination. Bevar proxyens eksisterende offentlige TCP-rute for almindelige Minecraft-forbindelser.

Proxyen forbinder til backend Minecraft-servere via TCP. At tilføje Raknetify2 til proxyen kræver ikke, at backend gameplay UDP-porte åbnes for spillere.

Forbindelse Adgang tilladelse
Spillere til proxien Offentlig UDP til RakNet-lytteren, plus den eksisterende offentlige TCP-lytter
Proxy til backend-servere Backend Minecraft TCP-porte, kun tilgængelige fra de tilsigtede proxy-hosts
Spillere direkte til backend-spilporte Holdet blokeret, inklusive gennem IPv6

Når proxyen og backends kører direkte på en dedikeret maskine, du kontrollerer, kan backend-lyttere bruge loopback-adresser med proxyen konfigureret til at nå dem der. På tværs af maskiner, begræns backend TCP-adgang til proxy-værterne ved hjælp af en firewall eller et isoleret privat netværk. Containere og administrerede værter har brug for tilsvarende begrænsninger for deres netværkslayout. Se Velocity's backend security guide og BungeeCord's firewall guide.

Spillervideresendelse og firewallbegrænsninger arbejder sammen. Direkte backend-adgang kan omgå proxyens login-tjek. For plugin-installation, videresendelsesindstillinger og UDP-port-overskrivninger, følg Velocity and BungeeCord.

Offentlige og lokale portnumre

Den offentlige port og lytterens port kan være forskellige, når en router oversætter mellem dem:

Indstilling Port at bruge
Klientserveradresse Offentlig UDP-port
Router-videresendelsesreglens eksterne port Offentlig UDP-port
Router-videresendelsesreglens interne port RakNet-lytterens UDP-port
Værtens firewallens lokale port RakNet-lytterens UDP-port

IPv4 portvideresendelse

Til hosting bag en IPv4-router:

  1. Find den lokale IPv4-adresse for maskinen, der modtager RakNet-forbindelser. Brug en DHCP-reservation eller en passende statisk adresse, så videreskrivningsreglen fortsat peger på den maskine.
  2. Tilføj en UDP-videreskrivningsregel for den offentlige port, spillerne vil bruge.
  3. Indstil regelens destination til den maskines lokale adresse og RakNet-lytterens UDP-port.
  4. Tillad indgående UDP på lytterens port i værtens firewall.

For eksempel kan en server, der lytter på UDP-porten 25565, bruge en regel med offentlig port 25565, destinationsadresse 192.168.1.100 og destinationsport 25565. Erstat eksempeladressen med din servers faktiske lokale adresse.

Behold den eksisterende TCP-regel for almindelige Minecraft-forbindelser. En TCP-videresendelsesregel alene bærer ikke UDP.

Når videresendelsen stadig fejler

Undersøg, om en anden router eller din internetudbyder bruger NAT, før trafikken når din router. Hvis du styrer to routere, skal begge videresende porten. Bruger udbyderen operatør-NAT, så spørg efter en offentlig IPv4-adresse, eller brug en vært eller tunnel, der tillader indgående UDP. Din egen router kan ikke konfigurere udbyderens NAT. Se TP-Links vejledning om portvideresendelse om kravet til den offentlige WAN-adresse.

IPv6 firewall-regler

Tillad den valgte UDP-port gennem både routerens IPv6-firewall og værtens firewall. Ret det mod IPv6-adressen på maskinen, der modtager RakNet-forbindelser.

Kontrollér, at domænenavnets IPv6-adresse peger på den maskine. Hvis dens IPv6-adresse ændres, skal DNS-posten og eventuelle adresse-specifikke firewall-regler opdateres.

Et domænenavn, der annoncerer både IPv4- og IPv6-adresser, kræver en fungerende rute for hver annonceret adresse. Kontrollér begge sæt regler, når én spiller kan oprette forbindelse, og en anden ikke kan.

Hvis IPv4-videresendelse ændrer portnummeret, skal du sikre dig, at porten, spillerne indtaster, også når IPv6-lytteren. En IPv4-portoversættelse konfigurerer ikke IPv6-ruten.

Hostingudbydere og tunneler

Leverandøren eller tunnelen skal understøtte UDP på det offentlige endpoint, du giver spillerne. Tjek dens porttildelinger og netværksfiremurregler samt serverens egen firewall.

Hvis en yderligere UDP-proxy videresender klientadresser ved hjælp af PROXY protocol v2, følg UDP forwarding and PROXY protocol og begræns adgangen til den modtagende UDP-lytter til den betroede proxy.

Tjek forbindelsen

Forbind fra uden for serverens lokale netværk med en opdateret Raknetify2-klient ved at bruge en adresse som raknet;play.example.com:25565. Brug den offentlige UDP-port i denne adresse.

Brug en ægte RakNet-forbindelse til at verificere ruten. En UDP-scanning, der ikke modtager svar, kan rapportere et uafklaret resultat, fordi en fungerende tjeneste kan kassere en ukendt probe. Nmap's UDP scan documentation forklarer denne adfærd.

En succesfuld TCP-forbindelse bekræfter kun TCP-ruten. Hvis RakNet udløber, skal du tjekke lytteren, videresendingsdestinationen, UDP-porten og firewallreglerne ved hjælp af troubleshooting guide.

Kompatibilitet

Tjek kompatibiliteten for den specifikke udgivelse, du downloader. Udviklingsgrenen kan indeholde understøttelse, der endnu ikke er dukket op i en udgivelse.

Minecraft og Java-versioner

Minecraft og Java-versioner · English

Java-kravet erklæret af Raknetify2 er dets minimum. Minecraft eller loaderen kan kræve en nyere runtime. Vælg en Java-version, der opfylder alle tre.

Klient- og serverversioner

Brug samme Raknetify2-udgivelse på klienten og serveren eller proxyen, der accepterer dens forbindelse, når det er muligt. Tjek udgivelsesnoterne, før du blander udgivelser. Krypterede RakNet-forbindelser kræver understøttelse af det autentificerede krypteringsprotokol på begge sider. Oprindelige Raknetify- og Raknetify2-builds fra før dette protokol blev introduceret, kan ikke etablere disse krypterede forbindelser til opdaterede peers.

Raknetify2 bærer Minecrafters eksisterende spilprotokol. At forbinde forskellige Minecraft-versioner kræver et kompatibelt protokoloversættelsesopsætning.

Andre mods

Andre mods · English

Ved en fejl i en større modpakke, følg fejlfindingguiden. Inkluder de komplette modversioner i din rapport.

Ordnet tilstand

Ordnet tilstand

Normalt lader Raknetify2 uafhængige pakke-kanaler fortsætte, mens én kanal venter på manglende data. Ordnet tilstand placerer alle Minecraft-pakker på én kanal, så en manglende pakke blokerer alle senere pakker i den retning, indtil den genudsendes. Dette bevarer rækkefølgen, som nogle anti-cheat-software forventer, men opgiver Raknetify2's evne til at holde urelateret spiltrafik i bevægelse under den ventetid.

Aktivere ordnet tilstand

  1. Installer en Raknetify2-build, der understøtter ordnet tilstand på serveren eller proxien, der accepterer RakNet-forbindelser, og på hver RakNet-klient.

  2. Opret config/raknetify2-compatibility.json i forhold til den pågældende servers eller proxys arbejdsmappe. Opret config-mappen, hvis den ikke eksisterer.

  3. Tilføj følgende:

    {"mode": "ordered"}
  4. Genstart serveren eller proxien.

Kunder følger serverens indstillinger automatisk. Spillere behøver ikke at oprette en konfigurationsfil eller ændre deres RakNet-serveradresse.

Alle Minecraft-pakker bruger én pålidelig ordnet kanal i hver retning, inklusive bundel-delimitere og verdensskift.

Proxy-opsætninger

Når spillere forbinder gennem Velocity eller BungeeCord, skal du konfigurere ordnet tilstand på den proxy, selvom anti-cheaten kører på en backend-server.

Politikken gælder på tværs af backend-switches. I ordnet tilstand videresender proxyen backend keepalive-anmodninger til den rigtige klient i stedet for at besvare dem lokalt.

Tjek indstillingen

Ved den første RakNet-forbindelse rapporterer konsollen:

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

Et succesfuldt kompatibilitetsudveksling logger også ordered compatibility negotiated, efterfulgt af peerens adresse.

Hold anti-cheat-tjek aktiveret og valider din specifikke opsætning.

Ældre klienter

RakNet-klienter, der ikke understøtter ordnet tilstand, kan ikke forbinde til en server, der kræver det. Opdater Raknetify2 på disse klienter, eller forbind ved hjælp af serverens eller proxyens normale TCP-adresse og port uden raknet;-præfikset.

Tilbage til multichannel-tilstand

Skift filen til:

{"mode": "multichannel"}

Genstart derefter serveren eller proxien. At fjerne filen genopretter også multichannel-tilstanden efter en genstart.

Konfigurationsproblemer

Filen skal indeholde præcis én indstilling kaldet mode, med enten "ordered" eller "multichannel" som værdi. Værdierne er case-sensitive.

Ugyldig eller ulæselig konfiguration afviser RakNet-forbindelser. Korriger filen og genstart processen.

Hvis konsollen stadig rapporterer multichannel, skal du tjekke, at filen er i serverens eller proxyens arbejdsmappe, der accepterer RakNet-forbindelsen, og derefter genstarte den proces.

Automatisk overførsel

Fabric-, Forge- og NeoForge-servere kan vælge RakNet, når de overfører en kapabel klient til en konfigureret destination. Dette bruger Minecrafters indbyggede overførselssupport, introduceret i Java Edition 1.20.5. Tjek, at din Raknetify2-udgivelse understøtter Minecraft-versionen og loaderen i hver ende.

Installer Raknetify2 på sendende server og klient. Destinationen skal levere en kompatibel RakNet-lytter og acceptere indkommende Minecraft-overførsler.

Denne konfiguration gælder for overførsler sendt af de tre mod-loadere ovenfor. Spigot/Paper-, Velocity- og BungeeCord-plugins læser ikke denne overførselsfil.

Konfigurer senderserveren

Opret config/raknetify2-transfers.json i senderserverens mappe:

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

Erstat eksempel-hostname og porte med dine destinationsværdier, og genstart derefter senderserveren. Yderligere destinationer føjes til den samme array.

Felt Betydning
host Destinationshostname eller IP-adresse, uden transportpræfiks eller port
tcpPort Destinationsport i den oprindelige overførselsanmodning
udpPort Offentlig RakNet-port, som den overførte klient skal kontakte

TCP- og UDP-portnumrene kan være ens. Hvis en router oversætter UDP-porten, skal du bruge den offentlige port i denne fil. Skriv porte som JSON-tal.

Sender overførsler til destinationens almindelige værtnavn og TCP-port. Raknetify2 tjekker, om klienten annoncerer automatisk-overførselssupport. For en kapabel klient og en matchende destination vælger den den konfigurerede UDP-port. Andre klienter og ikke-matchende destinationer beholder den oprindelige overførselsadresse.

Matchende bruger værtnavnet og TCP-porten fra overførselsanmodningen. Størrelseshævning af værtnavn, et afsluttende DNS-punkt og ækvivalent IPv6-stavemåde normaliseres. DNS-opslag deltager ikke i matchen, så to forskellige værtnavne, der opløses til samme adresse, kræver separate indtastninger. Wildcard-indtastninger understøttes ikke.

Destination opsætning

For en destination, der bruger Minecraft's server.properties, skal du indstille accepts-transfers=true og genstarte den. En destinationsproxy kan have sin egen overførselsindstilling. Minecraft's standard afviser indgående overførsler, selv når en normal direkte join virker.

Destinationens RakNet-lytter, offentlig UDP-videresendelse og værtens firewall skal allerede være konfigureret. Afsenders serverens overførselsfil vælger adressen sendt til en klient.

Tjek både destinationens IPv4- og IPv6-ruter, når dens hostname publicerer begge adresse-typer. Test en almindelig direkte RakNet-forbindelse til destinationen, før du undersøger automatisk overførselsadfærd.

Behold enhver destinationens login- eller adgangstjek på plads. Denne konfiguration giver ikke spillere adgang eller erstatter serverautentificering.

Konfigurationsfejl og deaktivering

Manglende felter, ukendte felter, ugyldige porte og duplikerede destinationer forårsager en konfigurationsfejl under initialiseringen. Brug serverloggen til at identificere fejlen, ret JSON'en og genstart.

For at deaktivere automatisk valg, fjern konfigurationsfilen eller brug {"destinations": []}, derefter genstart senderen. Dens overførselsanmodninger vil beholde deres oprindelige adresser.

UDP-videresendelse og PROXY-protokol

En UDP-proxy kan videresende RakNet-trafik og bevare den oprindelige klientadresse ved hjælp af PROXY-protokol v2. Aktiver denne funktion, når en upstream UDP-proxy sender disse headers til din lytter. Almindelig routerportvideresendelse kræver det ikke.

På serveren eller Minecraft-proxyen, der modtager den videresendte UDP-trafik, opret config/raknetify2-proxy-protocol.json:

{
  "trustedProxies": ["192.0.2.10"]
}

Erstat eksemplet med UDP-proxyens faktiske kilde-IP-adresse eller et CIDR-område, du kontrollerer. Adressen skal matche, hvad den modtagende lytter ser efter enhver mellemliggende NAT. IPv4- og IPv6-literaler accepteres. DNS-hostnavne afvises. Genstart den modtagende server eller proxy.

Konfigurer videresendelsesproxyen til at sende PROXY-protokol v2 headers for UDP. Raknetify2 accepterer kun videresendte klientadresser fra de angivne kilder. Direkte RakNet-forbindelser uden disse headers afvises, mens denne konfiguration er aktiveret. TCP-lytteren beholder sin eksisterende konfiguration.

Tillid og adgang

Hver angivet proxy er betroet til at levere klientadresser. Begræns adgangen til backend UDP-porten i din firewall, så kun den tilsigtede proxy kan nå den. Hold de betroede intervaller så snævre som dit netværk tillader.

Filen skal kun indeholde trustedProxies, med mindst én indtastning. En tom array er en fejl. En ugyldig fil forhindrer RakNet-lytteren i at starte.

For at vende tilbage til direkte UDP-forbindelser, fjern filen og genstart lytteren. Opdater upstream-videresendelsesadfærden og firewallreglerne for den nye rute samtidig.

Hvis forbindelser fejler efter aktivering af denne funktion, skal du tjekke proxyens faktiske kildeadresse på backend, det konfigurerede betroede interval og om proxyen udsender UDP PROXY protokol v2-headers.

For Minecraft proxy installation og backend konfiguration, følg Velocity og BungeeCord.

Simple Voice Chat

Raknetify2 kan dele sin server UDP-lytter med Simple Voice Chat på Fabric, Forge, NeoForge, Spigot og Paper.

Installer Simple Voice Chat på serveren og på hver klient, der ønsker talechat. Følg dets serveropsætningguide for resten af dets konfiguration.

Brug serverens topniveau config-mappe til Raknetify2's fil, herunder på Spigot/Paper.Simple Voice Chat's egen fil forbliver i den platformspecifikke placering nedenfor.

Del spilporten

  1. Opret config/raknetify2-voicechat.json i serverens mappe med dette indhold:

    {"enabled": true}
  2. Sæt port=-1 i Simple Voice Chat's serverkonfiguration. På modificerede servere er dette config/voicechat/voicechat-server.properties, på Spigot/Paper er det plugins/voicechat/voicechat-server.properties.

  3. Lad bind_address være tom, hvis der er én matchende RakNet lytter. Hvis serveren har flere lyttere på den UDP-port, skal du indstille den til den lokale adresse af lytteren, du vil dele.

  4. Genstart serveren og kør /voicechat test <PLAYERNAME> for en tilsluttet afspiller.

Hvis RakNet-lytteren bruger en anden port end Minecraft, skal du indstille stemmen port til den lokale UDP-port eksplicit i stedet for at bruge -1.For eksempel skal en RakNet-lytter på lokal UDP-port 25570 bruge port=25570.

Set voice_host når klienter har brug for en anden offentlig adresse eller port. For en router, der videresender offentlige UDP 25580 til lokal UDP 25570, brug port=25570 og voice_host=play.example.com:25580. Den offentlige adresse hører hjemme i voice_host- Den. bind_address Denne indstilling vælger en lokal lytter.

Raknetify2 stiller den delte UDP-socket til rådighed via API’et i Simple Voice Chat. Simple Voice Chat står for godkendelse og kryptering af taletrafikken. Spillerne kan bruge talechat med både TCP- og RakNet-forbindelser til spillet.

Andre UDP-tjenester og proxyservere

Hold Query og Geyser på separate UDP-porte. Den delte socket integration understøtter kun Simple Voice Chat.

Integrationen deler ikke en stemme-proxy-stikkontakt på Velocity eller BungeeCord. Følg Opsætningsvejledning til Simple Voice Chat's proxy og giv stemmeproxyen sin egen UDP-port. Med det officielle stemmeproxy-plugin skal du indstille enhver offentlig voice_host-tilsidesættelse i proxyens stemmekonfiguration. Dette plugin ignorerer backend-servernes voice_host-indstillinger.

For en generisk UDP-tunnel skal du indstille voice_host til det offentlige værtsnavn og UDP-porten, der videresender til denne server.

Deaktivere deling eller løse en socketkonflikt

Hvis logfilen rapporterer No RakNet listener matches the voice bind address and port, skal du bekræfte, at RakNet er startet korrekt, og at stemmeporten og bindeadressen stemmer overens med den lokale lytter.

Hvis den rapporterer Multiple RakNet listeners match the voice bind address, skal du vælge en specifik matchende lokal adresse i bind_address og genstarte.

Kun et Simple Voice Chat-plugin kan levere sin UDP-socket.Hvis opstart rapporterer, at et andet plugin allerede leverer en socket, skal du vælge, hvilken socketintegration der skal bruges.

For at deaktivere Raknetify2's integration skal du indstille {"enabled": false} i dens stemmekonfiguration eller fjerne filen, give Simple Voice Chat en separat UDP-port, opdatere dens firewall eller viderestillingsregler og genstarte serveren.

Fejlfinding

TCP virker, men RakNet gange ud

Tjek disse i rækkefølge:

  1. Klienten har den korrekte Raknetify2 mod til sin loader og Minecraft version.
  2. Serveren eller proxyen, der accepterer forbindelsen, har Raknetify2 installeret og startet uden en lyttefejl.
  3. Adressen starter med raknet; og bruger den offentlige UDP-port.
  4. Hostingudbyderen, routeren og værtens firewall tillader alle UDP på den port.
  5. Værtsnavnets IPv4- og IPv6-adresser fører til den tilsigtede vært og har fungerende firewallregler.

En vellykket TCP-forbindelse bekræfter kun TCP-ruten. Følg Konfiguration af firewall og router for at kontrollere UDP-videresendelse og IPv6-adgang.Hvis PROXY-protokollen er aktiveret, skal klienter nå lytteren via en konfigureret proxy, der er tillid til.

Adressen er allerede i brug

Søg efter en anden proces ved hjælp af UDP-porten. Query, Geyser og andre UDP-tjenester har brug for deres egne porte. Simple Voice Chat kan bruge Integration af delt port.

Du kan vælge en anden lokal UDP-port ved hjælp af Indstillinger for direct-server-lytter eller Indstillinger for Velocity og BungeeCord.Tjek versionskravene for Spigot/Paper-indstillingen. Hvis du kun ændrer en routers offentlige port, forbliver den lokale socketkonflikt på plads.

Tilslutning virker, men overførsler mislykkes

Opret forbindelse direkte til destinationen ved hjælp af dens raknet;-adresse, og hvis det ikke lykkes, skal du først rette destinationslytteren eller netværksruten.

Hvis direkte forbindelser virker, skal du kontrollere, om destinationen accepterer indgående overførsler. En Minecraft-server, der bruger server.properties, skal bruge accepts-transfers=true. Direkte joinforbindelser tester ikke denne indstilling.

Sammenlign derefter overførselsnavnet og TCP-porten med config/raknetify2-transfers.json på den sendende server. Bekræft, at filen blev indlæst efter en genstart, og at klienten understøtter automatisk RakNet-overførsler. Se Automatic transfers.

Krypterings- eller protokolfejl

Kontroller Raknetify2-versionerne i begge ender af forbindelsen. Opdater klienten og serveren eller proxyen sammen, når en udgivelse ændrer den krypterede protokol. Bevar serverens godkendelsesindstillinger, mens du undersøger.

Mod-specifikke fejl

Optag hvilke handlinger der udløser fejlen, såsom åbning af et inventar, modtagelse af en ressourcepakke, skift af verdener eller spawn af en entitet.Sammenlign den samme handling over TCP og RakNet ved hjælp af en separat testinstallation, når det er praktisk.

Nogle brugerdefinerede payloads afhænger af rækkefølgen af vanilla pakker, mod forfattere kan erklære disse afhængigheder gennem Grænseflade til pakkebestilling.

Rapporter en fejl

Åbn et problem i Udgivelsesbemærkninger for Raknetify2 og inkludere:

  • Minecraft, Java, loader, og Raknetify2 versioner i begge ender.
  • Server og proxy software versioner, herunder enhver UDP videresendelse proxy.
  • Andre installerede mods og deres versioner.
  • Fremgangsmåder til at genskabe problemet, og hvad du forventede at ske.
  • Om de samme trin virker over TCP.
  • Relevante klient, server og proxy log uddrag fra samme forsøg.

Fjern adgangstokens, adgangskoder og andre private oplysninger, før du uploader logfiler, og bevar undtagelsesmeddelelserne og staksporinger, der er nødvendige for at diagnosticere problemet.

Mod integration

Raknetify2 lader mods erklære, hvilken Minecraft-trafik skal forblive ordnede med deres brugerdefinerede nyttelast.Brug dette, når håndtering af en nyttelast kræver en enhed, chunk, opgørelse eller anden tilstand etableret af tidligere pakker.

Bestilling af grupper

Gruppe Relateret trafik
ui Verdensuafhængige menuer og interaktioner
entity Entity spawn, fjernelse og bevægelse
world_interaction Inventarer og andre verden-afhængige interaktioner
effects Lyde og partikler
chunk Terræn, blok og belysning opdateringer

Alle grupper bevarer pålidelig ordnet levering inden for deres kanal. Pakker i forskellige grupper kan ankomme i forskellig relativ rækkefølge.Vælg den gruppe, der matcher nyttelastets afhængighed.

Valgfri Fabric integration

Tilføj en udbyder under raknetify:packet_channels-indgangspunktet i din mods fabric.mod.json.Udbyderen implementerer Consumer<BiConsumer<String, String>> ved hjælp af JDK-typer.Den modtager en registrator, der accepterer en brugerdefineret payload-identifikator og en bestillingsgruppe.

Flet denne post med dine eksisterende metadata, og erstat klassenavnet med din udbyders fuldt kvalificerede navn:

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

Behold resten af din fabric.mod.json, herunder dens eksisterende indgangspunkter.Dette er et fragment af metadatafilen.

En udvidelse til enhedsbevægelse kan f.eks. registrere example:entity_path med gruppen entity, mens Dokumentation til PacketOrdering API indeholder implementeringen af udbyderen.

Fabric efterlader dette indgangspunkt upåkaldt, når Raknetify2 Providere bør deklarere identifikatorer og grupper under initialisering uden at være afhængige af at en anden mod har afsluttet sin egen initialisering.

Adfærd ved registrering

Forge og NeoForge mods, og server eller proxy plugins, kan kalde PacketOrdering.register(identifier, group) under initialisering, når Raknetify2 er tilgængelig.Klassen er com.ishland.raknetify.api.PacketOrdering.Registrer før du accepterer spillerforbindelser, og hold valgfri integrationskode fra at indlæse Raknetify2-klasser, når afhængigheden er fraværende.

Erklæringer gælder for nye forbindelser. Eksisterende forbindelser bevarer de regler, de modtog ved opsætningen. Gentagelse af en identisk erklæring er tilladt. Modstridende grupper for samme identifikator afvises.

Payload-identifikatorer skal bruge et gyldigt brugerdefineret namespace. minecraft-namespace er reserveret. Endepunkt-dækkende grænse er 128 erklæringer, inklusive indbyggede regler og registreringer fra andre mods. Identifikatorer kan indeholde op til 255 ASCII-tegn ved hjælp af API'ens namespaced identifier-syntaks.

Opdaterede RakNet peers udveksler erklæringer under forbindelsesopsætning. En server eller proxy kan bruge en peers erklæring, når den ikke har nogen lokal regel for den pågældende nyttelast. Lokale regler har forrang, og en peers erklæringer forbliver omfanget til den pågællende forbindelse.

UDP proxies

Se UDP videresendelse og PROXY protokol for UDP relæer og videresendte klientadresser.

For Minecraft proxy-opsætning, se Velocity og BungeeCord.

English (US)

Clone this wiki locally