Skip to content

Wiki no no

pjscruggs edited this page Nov 11, 2026 · 1 revision

Raknetify2 · Norsk bokmål (Norge)

Språk

Flerspiller

Nettverksforbindelser med RakNet for Minecraft-klienter og -tjenere.

Last ned · GitHub

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

Legg til server

  1. Flerspiller

  2. Legg til server

  3. Serveradresse

    Serveradresse
    RakNet · UDP raknet;play.example.com:25565
    TCP play.example.com:25565
  4. Ferdig

  5. Kobl til server

F3 · Raknetify2

F3
RakNet · UDP Aktiv · MTU 1400
TCP Inaktiv

Velocity / BungeeCord

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

Tidsavbrudd

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

config/raknetify2-compatibility.json

Tjener / Velocity / BungeeCord

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

Simple Voice Chat

Tjener 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. Tjener A · Fabric / Forge / NeoForge · config/raknetify2-transfers.json

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

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

PacketOrdering

Minecraft
ui Innstillinger
entity Skjelett
world_interaction Forråd
effects Partikler
chunk Blokker

PacketOrdering.java

Inkompatibel versjon!

Meld inn feil

Hjem

Raknetify2

Raknetify2 bruker RakNet over UDP når flere spiller Minecraft sammen. Trafikken fordeles på kanaler som hver holder styr på sin egen pakkerekkefølge. Hvis en pakke går tapt på én kanal, kan data fortsatt komme fram på de andre. Dermed kan spillet reagere på det du gjør mens tapte data sendes på nytt eller deler av verdenen overføres.

Raknetify2 er en uavhengig vedlikeholdt forgrening av Raknetify, opprinnelig utviklet av ishland. Forgreningen legger til støtte for nyere Minecraft-versjoner og opprettholder transport-, plattformintegrasjoner og kompatibilitetstester.

Kom i gang

  1. Sjekk kompatibilitet mellom Minecraft og mod.
  2. Velg en nedlasting og installer den.
  3. Koble til med en adresse som raknet;play.example.com.

Serverguider

Modutviklere kan bruke pakkeordningsgrensesnittet til å deklarere avhengigheter mellom egendefinerte nyttelast og Minecraft-trafikk.

Prosjektlenker

Raknetify2 bruker MIT-lisensen og beholder de opprinnelige opphavsrettserklæringene. Nettverksimplementeringen bygger på Raknetify og netty-raknet.

Installasjon

Last ned en utgivelse fra GitHub Releases. Sjekk Minecraft-versjon og loader-krav for den utgivelsen 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

Lukk klienten eller stopp serveren før du erstatter JAR-filen. Fjern den originale Raknetify JAR-filen og alle eldre Raknetify2 JAR-filer fra samme installasjon før du legger til den nye filen.

Klientmapper tilhører Minecraft-instansen eller modpakken du kjører. Server- og proxymapper tilhører den server- eller proxyinstallasjonen. Opprett den aktuelle mappen hvis lasteren din ennå ikke har opprettet den.

Direkte serverforbindelser

  1. Installer klientmodden for din loader.
  2. Installer den matchende servermodden, eller Spigot/Paper-pluginen på en kompatibel server.
  3. Følg Brannmur- og ruterkonfigurasjon for å tillate UDP-tilkoblinger til serveren.
  4. Start på nytt klienten og serveren.
  5. Legg til en serveradresse som raknet;play.example.com eller raknet;play.example.com:25565.

Adresser uten raknet;-prefiks bruker TCP.

Å installere kun klientmodden legger ikke til RakNet-støtte til en ekstern server. Serveroperatøren må tilby et RakNet-endepunkt. Spillere som kobler til noen annen sin server trenger vanligvis ingen innkommende rutervideresendingsregler.

Velocity og BungeeCord

Installer den tilsvarende proxy-pluginen og klientmodden. Følg Velocity og BungeeCord for innstillinger for lyttere, bakoverretting, tilgangsbegrensninger og adressen spillerne bør bruke.

En separat UDP-lytterport

For en direkte Minecraft-server, sett det aktuelle Java-argumentet nedenfor. Proxy-administratorer bør bruke Velocity- og BungeeCord-lytterinnstillingene.

Plattform Java-argument Aksepterte porter
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 bruker delt lytterkode, så egenskapenavnet deres inneholder også fabric. Erstatt 25570 med ønsket UDP-port.

Spigot / Paper ≥ 0.1.0-beta.1.431

Legg til argumentet før -jar i Java-kommandoen, eller i vertens JVM-argumentfelt. Start serveren på nytt og tillat UDP på den valgte lytteporten. Hvis den offentlige porten også er 25570, koble til med raknet;play.example.com:25570. Hvis en ruter oversetter porten, bruk dens offentlige port i klientadressen. TCP-porten forblir på sin eksisterende verdi.

På Spigot/Paper beholder UDP-lytteren den lokale bindeadressen til Minecraft TCP-lytteren. En ugyldig overstyring eller en okkupert UDP-port forhindrer RakNet i å starte. Sjekk oppstartsloggen for den bundne UDP-adressen og porten. Fjern argumentet og start på nytt for å gå tilbake til TCP-lytterens portnummer.

En ruter eller UDP-proxy kan også eksponere en annen offentlig UDP-port og videresende den til den eksisterende lytteren uten å endre serverens Java-argumenter.

Utviklingsbygg

Åpne en vellykket main-kjøring i GitHub Actions og last ned arkivet med dens Artifacts. GitHub krever en konto for å laste ned arbeidsflyt-artefakter. Bruk installasjonstabellen ovenfor til å velge en JAR fra arkivet.

Velocity og BungeeCord

Velocity og BungeeCord sitter mellom spillere og backend Minecraft-servere. Installer Raknetify2 på proxyen og på hver klient som skal koble seg til via RakNet.

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

Backend-serverne trenger ikke Raknetify2 for denne tilkoblingsveien. De trenger fortsatt moddene, pluginene og videresendingsstøtten som kreves av nettverket ditt. Raknetify2 oversetter ikke Minecraft-versjoner eller endrer proxyens kontoutentisering.

Installer proxy-pluginen

  1. Bekreft at vanlige TCP-tilkoblinger gjennom proxyen din fungerer, inkludert autentisering og bytting mellom backend-servere.
  2. Stopp proxien og last ned den matchende pluginen fra GitHub Releases.
  3. Plasser raknetify2-velocity-*-all.jar eller raknetify2-bungee-*-all.jar i proxyens plugins-mappe. Fjern alle eldre Raknetify- eller Raknetify2-plugins fra den mappen.
  4. Installer den aktuelle Raknetify2-klientmodden ved hjelp av installasjonsguiden.
  5. Sjekk lytterinnstillingene nedenfor, start proxyen på nytt, og inspiser loggen for RakNet-lytterfeil.
  6. Tillat offentlig UDP-trafikk til proxien og begrens bakendespillportene som beskrevet i Brannmur- og ruterkonfigurasjon.

Bruk kompatible Raknetify2-utgivelser på klienten og proxyen. Sjekk Kompatibilitet før du blander utgivelser.

Velocity

The bind setter inn velocity.toml velger Velocity's Minecraft lytteadresse og TCP port. Raknetify2 Bruker normalt det samme portnummeret for UDP- Den. [servers] Disse oppføringene identifiserer backend-serverne. Hold disse oppføringene pekende mot backend-serveren. TCP Se alle adresser. Velocity's oppsettsreferanse.

Slik bruker du en separat UDP port, legg til dette JVM argument før -jar i Velocity's oppstartskommando:

-Draknetify.velocity.portOverride=25570

Erstatt 25570 med valgt port. Dette endrer RakNet UDP-porten samtidig som det beholder Velocitys TCP-port og bakendadresser. Start Velocity på nytt etter å ha endret argumentet.

Konfigurer spillervideresending på både Velocity og dens bakender. Bruk moderne videresending når bakend-programvaren støtter det, og hold videresendingshemmeligheten privat. Følg bakend-spesifikke instruksjoner i Velocitys guide for videresending av spillerinformasjon. Behold bakend-brannmurrestriksjonene sammen med videresendingen.

BungeeCord

I BungeeCords config.yml identifiserer verdien host under hver listeners-oppføring en Minecraft-lytteadresse og TCP-port. Raknetify2 legger vanligvis til UDP på det portnummeret. servers-oppføringene inneholder bakend-TCP-adresser. Disse innstillingene er beskrevet i BungeeCord konfigurasjonsguide.

For en separat UDP port, legg til dette JVM argument før -jar i BungeeCord's oppstartskommando:

-Draknetify.bungee.portOverride=25570

Overstyringen tilhører hele proxy-prosessen. For en konfigurasjon med flere Minecraft-lyttere, sjekk de faktiske RakNet-endepunktene i oppstartsloggen før du legger til brannmurregler. Start BungeeCord på nytt etter å ha endret argumentet.

Behold kontogodkjenning på proxyen. For Spigot motorer, BungeeCord's Veiledning for IP- videresending par ip_forward: true på mellomtjeneren med settings.bungeecord: true Videresending alene hindrer ikke noen fra å koble seg direkte til en backend. Begrens backend-tilgang ved hjelp av Brannmur- instruksjoner.

Velg adressen spillerne bruker

Begge proxyoverstyringene aksepterer porter fra 1 til 65534. Ugyldige verdier ignoreres, så bekreft den bundne UDP-porten i oppstartsloggen. Fjern argumentet og start på nytt for å returnere til Minecraft-lytterens portnummer.

Spillere kobler til proxyens offentlige vertsnavn og UDP-port, for eksempel raknet;play.example.com:25570. Når en ruter oversetter porter, bruk dens offentlige UDP-port i klientadressen. Adresser uten raknet;-prefiks fortsetter å bruke proxyens TCP-lytter.

La Query, Geyser og andre UDP-tjenester kjøre på separate UDP-porter. En annen TCP-port løser ikke en UDP-sokkelkonflikt.

Stemmechat og tilleggs UDP-videresending

Simple Voice Chat bruker sin egen proxy-plugin og UDP-port på Velocity og BungeeCord. Følg veiledningen for stemmechat proxy for den oppsettet.

Hvis en separat UDP-relé sitter foran Minecraft-proxyen din og sender PROXY-protokoll v2-hoder, konfigurer Raknetify2 ved hjelp av UDP-videresending og PROXY-protokoll. Å installere Velocity eller BungeeCord alene krever ikke den konfigurasjonen.

Sjekk tilkoblingen

Test fra utenfor ditt lokale nettverk med en Raknetify2-klient. Kobl til via proxyen, bytt mellom backend-serverne du bruker, og bekreft at spilleridentitet og tillatelser forblir korrekte.

  • Hvis TCP gjennom proxyen fungerer, men RakNet tidsavbrytes, sjekk proxyens UDP-lytter, offentlig port, IPv4- og IPv6-ruter, og brannmurregler.
  • Hvis begge transportene feiler når proxyen kobler seg til en backend, sjekk den backendens TCP-adresse, tilgangsregler og spillervideresendingskonfigurasjon.
  • Hvis proxyen rapporterer en okkupert UDP-port, sjekk etter Query, Geyser, en stemmeprotokoll eller en annen prosess som er bundet til den.

For rapporter, inkluder både proxy- og backend-logger fra samme tilkoblingsforsøk. Se Feilsøking for versjonsinformasjonen du skal inkludere.

Brannmur- og ruterkonfigurasjon

Denne guiden er for serveradministratorer. Raknetify2 trenger en fungerende UDP-rute til serveren eller en proxy som aksepterer RakNet-tilkoblinger. Standardoppsettet bruker samme portnummer som Minecrafters TCP-lytter.

For spillere på samme lokale nettverk, bruk serverens lokale adresse og tillat UDP gjennom vertens brannmur. Ruterportvideresending er nødvendig når internettrafikk må krysse ruterens IPv4 NAT.

Velg destinasjon og port

Direkte server

Send offentlig UDP-trafikk til maskinen som kjører Minecraft-serveren med Raknetify2. Destinasjonsporten er den serverens RakNet UDP-lytter. Tillat den porten i vertmaskinens brannmur. Behold dens eksisterende TCP-rute for vanlige Minecraft-tilkoblinger.

For eksempel, hvis Raknetify2 lytter på UDP 25570, videresend den offentlige UDP-porten til serverens lokale adresse på port 25570. Serverens TCP-port kan forbli på 25565. Se innstillinger for direkte serverlytter for å velge en annen UDP-port.

Velocity eller BungeeCord

Send offentlig UDP-trafikk til maskinen som kjører Velocity eller BungeeCord med Raknetify2-proxy-pluginen. Bruk proxyens RakNet UDP-lytter som videresendingsdestinasjon. Behold proxyens eksisterende offentlige TCP-rute for vanlige Minecraft-tilkoblinger.

Proxyen kobler seg til bakend Minecraft-servere over TCP. Å legge til Raknetify2 i proxyen krever ikke at bakend spill-UDP-porter åpnes for spillere.

Tilkobling Tilgang for å tillate
Spillere til proxien Offentlig UDP til RakNet-lytteren, pluss den eksisterende offentlige TCP-lytteren
Proxy til bakend-servere Bakend Minecraft TCP-porter, kun tilgjengelig fra de tiltenkte proxy-vertene
Spillere direkte til bakendspillportene Hold blokkert, inkludert via IPv6

Når proxyen og bakendene kjører direkte på en dedikert maskin du kontrollerer, kan bakendlytterne bruke loopback-adresser med proxyen konfigurert til å nå dem der. Mellom maskiner, begrens bakend-TCP-tilgang til proxy-vertene ved hjelp av en brannmur eller et isolert privat nettverk. Containere og administrerte vertskap trenger tilsvarende begrensninger for nettverkslayouten sin. Se Velocity's backend security guide og BungeeCord's firewall guide.

Spillervideresending og brannmurrestriksjoner fungerer sammen. Direkte bakendtilgang kan omgå proxyens påloggingskontroller. For plugin-installasjon, videresendingsinnstillinger og UDP-portoverstyringer, følg Velocity and BungeeCord.

Offentlige og lokale portnumre

Den offentlige porten og lytterens port kan være forskjellige når en ruter oversetter mellom dem:

Innstillinger Port å bruke
Klientserveradresse Offentlig UDP-port
Ekstern port for rutervideringsregel Offentlig UDP-port
Intern port for rutervideringsregel RakNet-lytterens UDP-port
Vertsbrannmurens lokal port RakNet-lytterens UDP-port

IPv4 portvideresending

For hosting bak en IPv4-ruter:

  1. Finn den lokale IPv4-adressen til maskinen som aksepterer RakNet-tilkoblinger. Bruk en DHCP-reservasjon eller en egnet statisk adresse slik at videregelen fortsetter å peke mot den maskinen.
  2. Legg til en UDP-videregel for den offentlige porten spillerne vil bruke.
  3. Sett regelens destinasjon til den maskinens lokale adresse og RakNet-lytterens UDP-port.
  4. Tillat innkommende UDP på lytterens port i vertens brannmur.

For eksempel kan en server som lytter på UDP-porten 25565 bruke en regel med offentlig port 25565, destinasjonsadresse 192.168.1.100 og destinasjonsport 25565. Erstatt eksempeladressen med din servers faktiske lokale adresse.

Behold den eksisterende TCP-regelen for vanlige Minecraft-tilkoblinger. En TCP-videresendelsesregel alene bærer ikke UDP.

Når videresending fortsatt feiler

Undersøk om en annen ruter eller internettleverandøren bruker NAT før trafikken når ruteren din. Har du to rutere, må begge videresende porten. Bruker leverandøren operatør-NAT, kan du be om en offentlig IPv4-adresse eller bruke en vert eller tunnel som tar imot UDP utenfra. Din egen ruter kan ikke konfigurere leverandørens NAT. TP-Links veiledning om portvideresending forklarer hvorfor du trenger en offentlig WAN-adresse.

IPv6 brannmurregler

Tillat den valgte UDP-porten gjennom både ruterenes IPv6-brannmur og vertens brannmur. Målrett mot maskinens IPv6-adresse som aksepterer RakNet-tilkoblinger.

Sjekk at vertnavnets IPv6-adresse peker til den maskinen. Hvis IPv6-adressen endres, oppdater DNS-oppføringen og eventuelle adresse-spesifikke brannmurregler.

Et vertnavn som publiserer både IPv4- og IPv6-adresser trenger en fungerende rute for hver annonsert adresse. Sjekk begge sett med regler når én spiller kan koble til og en annen ikke kan.

Hvis IPv4-videresending endrer portnummeret, sørg for at porten spillerne taster inn også når IPv6-lytteren. En IPv4-portoversettelse konfigurerer ikke IPv6-ruten.

Vertskapstjenester og tunneler

Leverandøren eller tunnelen må støtte UDP på det offentlige endepunktet du gir til spillerne. Sjekk porttildelingene og nettverksbrannmurreglene samt serverens egen brannmur.

Hvis en tilleggs UDP-proxy videresender klientadresser ved hjelp av PROXY-protokoll v2, følg UDP-videresending og PROXY-protokoll og begrens tilgangen til den mottakende UDP-lytteren til den betrodde proxyen.

Sjekk tilkoblingen

Koble til fra utenfor serverens lokale nettverk med en oppdatert Raknetify2-klient, ved å bruke en adresse som raknet;play.example.com:25565. Bruk den offentlige UDP-porten i denne adressen.

Bruk en ekte RakNet-tilkobling for å bekrefte ruten. En UDP-skanning som ikke mottar svar kan rapportere et uavgjort resultat fordi en fungerende tjeneste kan forkaste en ukjent sonde. Nmap's UDP scan documentation forklarer denne oppførselen.

En vellykket TCP-tilkobling bekrefter kun TCP-ruten. Hvis RakNet tidsavbrytes, sjekk lytteren, videresendingsdestinasjonen, UDP-porten og brannmurreglene ved hjelp av feilsøkingsguiden.

Kompatibilitet

Sjekk kompatibiliteten for den spesifikke utgivelsen du laster ned. Utviklingsgrenen kan inneholde støtte som ennå ikke er dukket opp i en utgivelse.

Minecraft- og Javaversjoner

For Fabric, last ned compatibility.json fra samme utgivelse som JAR-filen. Sjekk Minecraft-versjonen din i gameVersions, og sjekk deretter den relevante oppføringen under runtimes for dens depends-krav. Denne JSON-filen er et referansedokument og trenger ikke å legges i mods-mappen.

For Forge, NeoForge og Spigot/Paper, sjekk versjonskravene som er deklarert av artefaktet og dets nedlastingsliste. Støtte på én loader etablerer ikke støtte på en annen.

Java-kravet erklært av Raknetify2 er minimumskravet. Minecraft eller loaderen kan kreve en nyere kjøretid. Velg en Java-versjon som oppfyller alle tre.

Klient- og serverversjoner

Bruk samme Raknetify2-utgivelse på klienten og serveren eller proxyen som aksepterer tilkoblingen. Sjekk utgivelsesnotatene før du blander utgivelser. Krypterte RakNet-tilkoblinger krever støtte for autentisert krypteringsprotokoll på begge sider. Opprinnelige Raknetify- og Raknetify2-bygg fra før denne protokollen ble introdusert, kan ikke etablere disse krypterte tilkoblingene til oppdaterte parter.

Raknetify2 bærer Minecrafters eksisterende spillprotokoll. Å koble sammen forskjellige Minecraft-versjoner krever et kompatibelt protokolloversettelsessett.

Andre modifikasjoner

Byggearbeidsflyten build workflow inkluderer kompatibilitetskontroller som involverer Polymer, Krypton, PacketFixer og Fast IP Ping. Disse kontrollene dekker versjonene og kombinasjonene som er valgt av arbeidsflyten. Sjekk byggeresultatene til en utgivelse når du undersøker en bestemt kombinasjon.

Ved feil i en større modpakke, følg feilsøkingsguiden. Inkluder de komplette modversjonene i rapporten din.

Ordnet modus

Ordnet modus

Normalt lar Raknetify2 uavhengige pakkekanaler fortsette mens én kanal venter på manglende data. Ordnet modus legger alle Minecraft-pakker på én kanal, så en manglende pakke stopper alle senere pakker i den retningen inntil den blir retransmittert. Dette bevarer rekkefølgen som forventes av noe anti-cheat-programvare, men gir fra seg Raknetify2s evne til å holde urelatert spilltrafikk i bevegelse under den ventetiden.

Aktivere ordnet modus

  1. Installer en Raknetify2-bygge som støtter ordnet modus på serveren eller proxien som aksepterer RakNet-tilkoblinger og på hver RakNet-klient.

  2. Opprett config/raknetify2-compatibility.json relativt til den serverens eller proxyens arbeidsmappe. Opprett config-mappen hvis den ikke eksisterer.

  3. Legg til følgende:

    {"mode": "ordered"}
  4. Start på nytt serveren eller proxien.

Klienter følger serverens innstilling automatisk. Spillere trenger ikke å opprette en konfigurasjonsfil eller endre sin RakNet-serveradresse.

Alle Minecraft-pakker bruker én pålitelig ordnet kanal i hver retning, inkludert pakkeavgrensere og verdensoverganger.

Proxy-oppsett

Når spillere kobler til via Velocity eller BungeeCord, konfigurer ordnet modus på den proxyen, selv om anti-cheaten kjører på en backend-server.

Retningslinjen gjelder på tvers av backend-svitsjer. I ordnet modus videresender proxyen backend keepalive-forespørsler til den virkelige klienten i stedet for å svare lokalt.

Sjekke innstillingen

Ved den første RakNet-tilkoblingen rapporterer konsollen:

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

Et vellykket kompatibilitetsutveksling logger også ordered compatibility negotiated, etterfulgt av peerens adresse.

Hold anti-cheat-kontrollene aktivert og valider din spesifikke oppsett.

Eldre klienter

RakNet-klienter som ikke støtter ordnet modus kan ikke koble til en server som krever det. Oppdater Raknetify2 på disse klientene, eller koble til ved hjelp av serverens eller proxyens normale TCP-adresse og port uten raknet;-prefiks.

Går tilbake til flermodus

Endre filen til:

{"mode": "multichannel"}

Start deretter serveren eller proxien på nytt. Å fjerne filen gjenoppretter også flermodus etter en omstart.

Konfigurasjonsproblemer

Filen må inneholde nøyaktig én innstilling kalt mode, med enten "ordered" eller "multichannel" som verdi. Verdiene er kasusfølsomme.

Ugyldig eller ulestbar konfigurasjon avviser RakNet-tilkoblinger. Korriger filen og start prosessen på nytt.

Hvis konsollen fortsatt rapporterer multichannel, sjekk at filen er i arbeidsmappen til serveren eller proxyen som aksepterer RakNet-tilkoblingen, og start deretter den prosessen på nytt.

Automatisk overføring

Fabric-, Forge- og NeoForge-servere kan velge RakNet ved overføring av en kapabel klient til et konfigurert mål. Dette bruker Minecrafterens innebygde overføringsstøtte, introdusert i Java Edition 1.20.5. Sjekk at din Raknetify2-utgivelse støtter Minecraft-versjonen og loaderen på hver ende.

Installer Raknetify2 på sendeserveren og klienten. Målet må tilby en kompatibel RakNet-lytter og akseptere innkommende Minecraft-overføringer.

Denne konfigurasjonen gjelder for overføringer sendt av de tre mod-loaderne ovenfor. Spigot/Paper-, Velocity- og BungeeCord-pluginene leser ikke denne overføringsfilen.

Konfigurer senderserveren

Opprett config/raknetify2-transfers.json i senderserverens katalog:

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

Erstatt eksempelnavnet og portene med verdiene til destinasjonen din, og start deretter senderserveren på nytt. Ytterligere destinasjoner legges til i samme array.

Felt Betydning
host Destinasjonsvertnavn eller IP-adresse, uten transportprefiks eller port
tcpPort Destinasjonsport i den opprinnelige overføringsforespørselen
udpPort Offentlig RakNet-port som den overførte klienten skal kontakte

TCP- og UDP-portnumrene kan være like. Hvis en ruter oversetter UDP-porten, bruk den offentlige porten i denne filen. Skriv portene som JSON-tall.

Send overføringer til destinasjonens vanlige vertsnavn og TCP-port. Raknetify2 sjekker om klienten annonserer støtte for automatisk overføring. For en kapabel klient og en matchende destinasjon velger den den konfigurerte UDP-porten. Andre klienter og ikke-matchende destinasjoner beholder den opprinnelige overføringsadressen.

Matchende bruker vertsnavnet og TCP-porten fra overføringsforespørselen. Kasus på vertsnavn, et avsluttende DNS-punkt og tilsvarende IPv6-skriving normaliseres. DNS-oppslag deltar ikke i matchende, så to forskjellige vertsnavn som løser til samme adresse krever separate oppføringer. Stjerneoppføringer støttes ikke.

Destinasjonsinnstilling

For en destinasjon som bruker Minecraft's server.properties, sett accepts-transfers=true En destinasjonsproxy kan ha sine egne overføringsinnstillinger, og det kan hende at du må konfigurere dem. Minecraft's standard avviser innkommende overføringer, selv når en normal direkte sammenføyning fungerer.

Destinasjonens RakNet-lytter, offentlig UDP-videresending og vertens brannmur må allerede være konfigurert. Avsenderserverens overføringsfil velger adressen som sendes til en klient.

Sjekk både destinasjonens IPv4- og IPv6-ruter når vertnavnet publiserer begge adresse­typene. Test en vanlig direkte RakNet-tilkobling til destinasjonen før du undersøker automatisk overførselsatferd.

Behold eventuelle destinasjonsinnloggings- eller adgangssjekker på plass. Denne konfigurasjonen gir ikke spillere tilgang eller erstatter serverautentisering.

Konfigurasjonsfeil og deaktivering

Manglende felt, ukjente felt, ugyldige porter og dupliserte destinasjoner forårsaker en konfigurasjonsfeil under initialisering. Bruk serverloggen for å identifisere feilen, korriger JSON-en og start på nytt.

For å deaktivere automatisk valg, fjern konfigurasjonsfilen eller bruk {"destinations": []}, deretter start sendingsserveren på nytt. Dens overføringsforespørsler vil beholde sine opprinnelige adresser.

UDP-videresending og PROXY-protokoll

En UDP-proxy kan videresende RakNet-trafikk og bevare den opprinnelige klientadressen ved hjelp av PROXY-protokoll v2. Aktiver denne funksjonen når en oppstrøms UDP-proxy sender disse hodene til lytteren din. Vanlig ruterportvideresending krever det ikke.

På serveren eller Minecraft-proxyen som mottar den videresendte UDP-trafikken, opprett config/raknetify2-proxy-protocol.json:

{
  "trustedProxies": ["192.0.2.10"]
}

Erstatt eksemplet med UDP-proxyens faktiske kilde-IP-adresse eller et CIDR-område du kontrollerer. Adressen må samsvare med det mottakende lytteren ser etter eventuell mellomliggende NAT. IPv4- og IPv6-literaler aksepteres. DNS-domener avvises. Start på nytt den mottakende serveren eller proxyen.

Konfigurer videresendingsproxyen til å sende PROXY-protokoll v2-hodene for UDP. Raknetify2 aksepterer kun videresendte klientadresser fra de oppførte kildene. Direkte RakNet-tilkoblinger uten disse hodene blir avvist mens denne konfigurasjonen er aktivert. TCP-lytteren beholder sin eksisterende konfigurasjon.

Tillit og tilgang

Hver oppført proxy er betrodd å levere klientadresser. Begrens tilgangen til backend UDP-porten i brannmuren slik at kun den tiltenkte proxyen kan nå den. Hold de betrodde områdene så smale som nettverket ditt tillater.

Filen må kun inneholde trustedProxies, med minst én oppføring. En tom array er en feil. En ugyldig fil forhindrer RakNet-lytteren i å starte.

For å gå tilbake til direkte UDP-tilkoblinger, fjern filen og start lyttaren på nytt. Oppdater oppstrømsvideresendelsesatferden og brannmurreglene for den nye ruten samtidig.

Hvis tilkoblinger feiler etter at denne funksjonen er aktivert, sjekk proxyens faktiske kildeadresse på backend, det konfigurerte betrodde området, og om proxyen sender UDP PROXY-protokoll v2-hoder.

Se Velocity og BungeeCord for å installere Minecraft-proxyen og sette opp de bakenforliggende serverne.

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 som ønsker stemmechat. Følg dens serveroppsettguide for resten av konfigurasjonen.

Bruk serverens toppnivå config-mappe for Raknetify2s fil, inkludert på Spigot/Paper. Simple Voice Chats egen fil forblir i plattformspesifikk plassering nedenfor.

Del spillporten

  1. Opprett config/raknetify2-voicechat.json i servermappen med dette innholdet:

    {"enabled": true}
  2. Sett port=-1 i Simple Voice Chat sin serverkonfigurasjon. På moddede servere er dette config/voicechat/voicechat-server.properties. På Spigot/Paper er det plugins/voicechat/voicechat-server.properties.

  3. La bind_address være tom når det er én som samsvarer med RakNet-lytteren. Hvis serveren har flere lyttere på den UDP-porten, sett den til den lokale adressen til lytteren du vil dele.

  4. Start serveren på nytt og kjør /voicechat test <PLAYERNAME> for en tilkoblet spiller.

Hvis RakNet-lytteren bruker en annen port enn Minecraft, sett stemme port til den lokale UDP-porten eksplisitt i stedet for å bruke -1. For eksempel, en RakNet-lytter på lokal UDP-port 25570 trenger port=25570.

Sett voice_host når klienter trenger en annen offentlig adresse eller port. For en ruter som videresender offentlig UDP 25580 til lokal UDP 25570, bruk port=25570 og voice_host=play.example.com:25580. Den offentlige adressen hører hjemme i voice_host. bind_address-innstillingen velger en lokal lytter.

Raknetify2 leverer den delte UDP-sokkelen gjennom Simple Voice Chats API. Simple Voice Chat håndterer stemmeautentisering og kryptering. Spillere kan bruke stemmechat med enten TCP eller RakNet spillforbindelser.

Andre UDP-tjenester og proxier

Hold Keep Query og Geyser på separate UDP-porter. Den delte sokkelintegrasjonen støtter kun Simple Voice Chat.

Integrasjonen deler ikke en stemmeprotokoll-sokkel på Velocity eller BungeeCord. Følg Simple Voice Chat sin proxy-oppsettguide og gi stemmeprotokollen sin egen UDP-port. Med den offisielle stemmeprotokoll-pluginen, sett enhver offentlig voice_host-overstyring i proxyens stemmekonfigurasjon. Den pluginen ignorerer backend-serverenes voice_host-innstillinger.

For en generell UDP-tunnel, sett voice_host til det offentlige vertsnavnet og UDP-porten som videresender til denne serveren.

Deaktiver deling eller løs en sokkelkonflikt

Hvis loggen rapporterer No RakNet listener matches the voice bind address and port, bekreft at RakNet startet vellykket og at stemmeporten og bindeadressen samsvarer med dens lokale lytter.

Hvis den rapporterer Multiple RakNet listeners match the voice bind address, velg en spesifikk matchende lokal adresse i bind_address og start på nytt.

Bare én Simple Voice Chat-plugin kan levere sin UDP-sokkel. Hvis oppstarten rapporterer at en annen plugin allerede leverer en sokkel, velg hvilken sokkelintegrasjon du vil bruke.

Å deaktivere Raknetify2's integrasjon, sett {"enabled": false} i stemmekonfigurasjonen, eller fjern den filen. Gi Simple Voice Chat en separat UDP port, oppdater brannmuren eller videresendingsreglene, og start serveren på nytt.

Feilsøking

TCP fungerer, men RakNet tidsavbrytes

Sjekk disse i rekkefølge:

  1. Klienten har riktig Raknetify2-mod for sin loader og Minecraft-versjon.
  2. Serveren eller proxyen som aksepterer tilkoblingen har Raknetify2 installert og startet uten lytterfeil.
  3. Adressen starter med raknet; og bruker den offentlige UDP-porten.
  4. Vertsprovideren, ruteren og vertens brannmur tillater alle UDP på den porten.
  5. Hostnameets IPv4- og IPv6-adresser leder til den tiltenkte verten og har fungerende brannmurregler.

En vellykket TCP-tilkobling bekrefter kun TCP-ruten. Følg Brannmur- og ruterkonfigurasjon for å sjekke UDP-videresending og IPv6-tilgang. Hvis PROXY-protokollen er aktivert, må klienter nå lytteren via en konfigurert betrodd proxy.

Adresse allerede i bruk

Sjekk for andre prosesser som bruker UDP-porten. Query, Geyser og andre UDP-tjenester trenger sine egne porter. Simple Voice Chat kan bruke delt-port-integrasjonen.

Du kan velge en annen lokal UDP-port ved hjelp av direkte-server-lytterinnstillingene eller Velocity- og BungeeCord-innstillingene. Sjekk versjonskravet for Spigot/Paper-innstillingen. Å endre kun en ruteres offentlige port lar den lokale sokkettkonflikten forbli.

Å koble til fungerer, men overføringer feiler

Koble direkte til destinasjonen ved hjelp av dens raknet;-adresse. Hvis det mislykkes, fikser først destinasjonslytteren eller nettverksruten.

Hvis direkte tilkoblinger fungerer, sjekk om destinasjonen aksepterer innkommende overføringer. En Minecraft-server som bruker server.properties trenger accepts-transfers=true. Direkte tilkoblinger tester ikke denne innstillingen.

Sammenlign deretter overføringsnavnet og TCP-porten med config/raknetify2-transfers.json på senderserveren. Bekreft at filen ble lastet etter en omstart og at klienten støtter automatisk RakNet-overføring. Se Automatisk overføring.

Krypterings- eller protokollfeil

Sjekk Raknetify2-versjonene på begge ender av tilkoblingen. Oppdater klienten og serveren eller proxyen samtidig når en utgivelse endrer den krypterte protokollen. Bevar serverens autentiseringsinnstillinger mens du undersøker.

Modspesifikke feil

Registrer hvilken handling som utløser feilen, for eksempel å åpne et inventar, motta en ressurspakke, bytte verdener eller sponse en enhet. Sammenlign samme handling over TCP og RakNet ved hjelp av en separat testinstallasjon når det er praktisk.

Noen tilpassede nyttelaster avhenger av rekkefølgen av vanillettpakker. Modutviklere kan deklarere disse avhengighetene gjennom pakkeordningsgrensesnittet.

Rapporter en feil

Åpne en oppgave i Raknetify2-oppfølgingssystemet og inkluder:

  • Minecraft-, Java-, loader- og Raknetify2-versjoner på begge sider.
  • Server- og proxyprogramvareversjoner, inkludert eventuelle UDP-videresendingsproxyer.
  • Andre installerte modifikasjoner og deres versjoner.
  • Trinn for å reprodusere problemet og hva du forventet skulle skje.
  • Om de samme trinnene fungerer over TCP.
  • Relevante utdrag fra klient-, server- og proxy-logger fra samme forsøk.

Fjern tilgangstokener, passord og annen privat informasjon før du laster opp logger. Behold unntakmeldinger og stakkspor som er nødvendige for å diagnostisere problemet.

Mod-integrasjon

Raknetify2 lar mods deklarere hvilken Minecraft-trafikk som må forbli ordnet med sine egendefinerte nyttelaster. Bruk dette når håndtering av en nyttelast krever en enhet, chunk, inventar eller annen tilstand etablert av tidligere pakker.

Ordningsgrupper

Gruppe Relatert trafikk
ui Verdensuavhengige menyer og interaksjoner
entity Entitetsskaping, fjerning og bevegelse
world_interaction Lager og andre verdensavhengige interaksjoner
effects Lyder og partikler
chunk Terreng-, blokk- og lysoppdateringer

Alle grupper beholder pålitelig ordnet levering innenfor sin kanal. Pakker i forskjellige grupper kan ankomme i en annen relativ rekkefølge. Velg gruppen som samsvarer med nyttelastens avhengighet.

Valgfri Fabric-integrasjon

Legg til en leverandør under raknetify:packet_channels entrypoint i din mods fabric.mod.json. Leverandøren implementerer Consumer<BiConsumer<String, String>> ved hjelp av JDK-typer. Den mottar en registrar som aksepterer en tilpasset nyttelastidentifikator og en ordningsgruppe.

Slå sammen denne oppføringen i din eksisterende metadata, og erstatt klassenavn med din leverandørs fullt kvalifiserte navn:

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

Behold resten av din fabric.mod.json, inkludert dens eksisterende inngangspunkter. Dette er et fragment av metadatafilen.

For eksempel kan en utvidelse for enhetsbevegelse registrere example:entity_path med entity-gruppen. PacketOrdering API-dokumentasjonen inkluderer leverandørimplementeringen.

Fabric lar dette inngangspunktet være uanropet når Raknetify2 mangler. Leverandører bør deklarere identifikatorer og grupper under initialisering uten å stole på at en annen mod har fullført sin egen initialisering.

Registreringsatferd

Forge- og NeoForge-mods, samt server- eller proxy-plugins, kan kalle PacketOrdering.register(identifier, group) under initialisering når Raknetify2 er tilgjengelig. Klassen er com.ishland.raknetify.api.PacketOrdering. Registrer før du aksepterer spillerforbindelser, og hold valgfri integrasjonskode fra å laste Raknetify2-klasser når avhengigheten mangler.

Deklarasjoner gjelder for nye tilkoblinger. Eksisterende tilkoblinger beholder reglene de mottok ved oppsett. Å gjenta en identisk deklarasjon er tillatt. Konflikterende grupper for samme identifikator blir avvist.

Payload-identifikatorer må bruke et gyldig tilpasset namespace. minecraft-namespace er reservert. Grensesnittomfattende grense er 128 deklarasjoner, inkludert innebygde regler og registreringer fra andre mods. Identifikatorer kan inneholde opptil 255 ASCII-tegn ved å bruke APIens namespaced identifier-syntaks.

Oppdaterte RakNet-peers utveksler deklarasjoner under tilkoblingsoppsett. En server eller proxy kan bruke en peers deklarasjon når den ikke har en lokal regel for den payloaden. Lokale regler har forrang, og en peers deklarasjoner forblir avgrenset til den tilkoblingen.

UDP-proxier

Se UDP-videresending og PROXY-protokoll for UDP-reléer og videresendte klientadresser.

For Minecraft-proxyoppsett, se Velocity og BungeeCord.

English (US)

Clone this wiki locally