Repository navigation
Wiki brb
- Beginpagina
- Installatie
- Velocity en BungeeCord
- Firewall en router instelle
- Compatibiliteit
- Stand meej vaste pakketvolgorde
- Automatisch van server wissele
- UDP deursture en 't PROXY-protocol
- Simple Voice Chat
- Probleme oplosse
- Oew èège mod aankoppele
- UDP-proxy's
Netwerkverbindinge via RakNet veur Minecraft-clients en -servers.
| Minecraft | Raknetify2 | Client / Server |
|---|---|---|
| Fabric | mods/raknetify2-fabric-*.jar |
Client / Server |
| Forge | mods/raknetify2-forge-*.jar |
Client / Server |
| NeoForge | mods/raknetify2-neoforge-*.jar |
Client / Server |
| Spigot / Paper | plugins/raknetify2-spigot-*.jar |
Server |
| Velocity | plugins/raknetify2-velocity-*.jar |
Velocity |
| BungeeCord | plugins/raknetify2-bungee-*.jar |
BungeeCord |
-
Saome speulen
-
Server toevúúge
-
Serveradres
Serveradres RakNet · UDP raknet;play.example.com:25565TCP play.example.com:25565 -
A kɛra
-
Server bezuuke
| F3 | |
|---|---|
| RakNet · UDP | Actief · MTU 1400 |
| TCP | Ni actief |
- Client · Raknetify2 → UDP → Velocity / BungeeCord · Raknetify2
- Velocity / BungeeCord → TCP → Server
| Poortnummer · 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 |
| Serveradres | UDP |
|---|---|
raknet;play.example.com:25580 |
play.example.com:25580 → NAT → 192.0.2.10:25570
|
Server · 192.0.2.10
|
25570/udp |
Server / Velocity / BungeeCord
| JSON | |
|---|---|
| ① ② ③ | {"mode":"ordered"} |
| ① ∥ ② ∥ ③ | {"mode":"multichannel"} |
| 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
| Serveradres | 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"]}-
Server A · Fabric / Forge / NeoForge ·
config/raknetify2-transfers.json{"destinations":[{"host":"play.example.com","tcpPort":25565,"udpPort":25570}]} -
Server B ·
play.example.com·server.properties→accepts-transfers=true -
Server A ·
/transfer play.example.com 25565 Alex→ Client (Alex) → RakNet ·play.example.com:25570
| Minecraft | |
|---|---|
ui |
Opties |
entity |
Skelet |
world_interaction |
Inventaris |
effects |
Djeiltjes |
chunk |
Blokken |
- Fabric · Minecraft / Java · English
- Forge / NeoForge / Spigot / Paper · GitHub Releases
Raknetify2 gebruikt RakNet over UDP as ge saome Minecraft speult. Ut verdeelt de gegevens over verskillende kanalen. Raokt er op één kanaol 'n pakket kwêt, dan kunne d'aandere kanalen gewoon deur. Zo kan 't speul op oe blijve reagere terwijl ontbrekende gegevens opnieuw verstuurd worre of er chunks over de lijn gaon.
Raknetify2 is 'n zelfstandig onderhouwe fork van Raknetify, da oorsponkelijk deur ishland gemokt is. De fork onderstunt nieuwere Minecraft-versies en onderhoudt ok de transportcode, de koppelingen meej de verskillende platforms en de compatibiliteitstests.
- Kèk welke Minecraft-versies en mods saome werke.
- Haal 't goeie bestand op en installeer 't.
- Mok 'n verbèèning meej 'n adres as
raknet;play.example.com.
- Velocity en BungeeCord
- Firewall en router instelle
- Automatisch van server wissele
- UDP deursture en 't PROXY-protocol
- 'n UDP-poort deele meej Simple Voice Chat
- Probleme oplosse en foute melde
As ge mods mokt, kunde via de interface veur de pakketvolgorde aangeve welke Minecraft-pakketten vur of nao oew èège gegevens moete worre verwerkt.
Raknetify2 valt onder de MIT-licentie en bewaort de oorsponkelijke vermeldingen van 't auteursrecht. De netwerkcode bouwt vort op Raknetify en netty-raknet.
Haal 'n gepubliceerde versie van GitHub Releases. Kèk vur 't installere welke Minecraft-versie en modloader die versie nodig hee.
| Wor ge installeert | Bestand | Map |
|---|---|---|
| Fabric-client of -server | raknetify2-fabric-*.jar |
mods |
| Forge-client of -server | raknetify2-forge-*.jar |
mods |
| NeoForge-client of -server | raknetify2-neoforge-*.jar |
mods |
| Spigot- of Paper-server | raknetify2-spigot-*.jar |
plugins |
| Velocity-proxy | raknetify2-velocity-*.jar |
plugins |
| BungeeCord-proxy | raknetify2-bungee-*.jar |
plugins |
Sluit de client af of stop d'n server vur ge z'n JAR vervangt. Haal de oorsponkelijke Raknetify-JAR en alle ouwere Raknetify2-JAR's uit die installatie vur ge 't nieuwe bestand erbij zet.
Bij de client zitte de mappen in de Minecraft-instantie of 't modpack da ge start. Bij servers en proxy's zitte ze in de map van die installatie. Hee oew loader de map nog nie gemokt, mok ze dan zelf.
- Installeer de clientmod veur oew loader.
- Installeer de bijpassende servermod of, op 'n geschikte server, de Spigot/Paper-plugin.
- Laot UDP-verbèèningen naor d'n server toe zoas uitgelegd bij Firewall en router instelle.
- Start de client en d'n server opnieuw.
- Voeg 'n serveradres toe, bijveurbild
raknet;play.example.comofraknet;play.example.com:25565.
Adressen zonder raknet; vurrop gebruike TCP.
Meej allee de clientmod kunde nog gin vreemden server over RakNet bereike. D'n beheerder mot 'n RakNet-aansluitpunt aanbiede. As ge op 'n aander z'n server meespeult, hoefde normaal gin inkomende poorten deur te sture op oew èège router.
Installeer de bijpassende proxyplugin en de clientmod. Bij Velocity en BungeeCord vinde de listenerinstellingen, 't deursture naor backends, de toegangsbeperkingen en 't adres da de speulers moete gebruike.
Bij 'n rechtstreeks bereikbare Minecraft-server gebruike de Java-optie hieronder die bij oew platform heurt. Veur proxy's zie de listenerinstellingen van Velocity en BungeeCord.
| Platform | Java-optie | Toegestane poorten |
|---|---|---|
| Fabric-, Forge- of NeoForge-server | -Draknetify.fabric.portOverride=25570 |
1 tot en meej 65534
|
| Spigot- of Paper-server | -Draknetify.spigot.portOverride=25570 |
1 tot en meej 65535
|
Forge en NeoForge gebruike dezelfde listenercode as Fabric. Daorom stao d'r ok fabric in de naom van hun instelling. Vervang 25570 deur de UDP-poort die ge wilt.
Spigot / Paper ≥ 0.1.0-beta.1.431
Zet de optie vur -jar in 't Java-startcommando of in 't veld veur JVM-opties bij oew hoster. Start d'n server opnieuw en laot UDP op de gekoze poort toe. Is d'n openbare poort ok 25570, verbind dan meej raknet;play.example.com:25570. As de router de poort omzet, gebruike in de client d'n openbare poort. De TCP-poort blijft 't zelfde.
Bij Spigot/Paper luistert de UDP-listener op hetzelfde lokale adres as d'n TCP-listener van Minecraft. Bij 'n ongeldige waorde of 'n bezette UDP-poort start RakNet nie. In 't opstartlog ziede 't adres en de poort waor de listener an gebonde is. Haal de optie weg en start opnieuw um wir 't poortnummer van d'n TCP-listener te gebruike.
Ge kunt ok op oew router of UDP-proxy 'n aandere openbare UDP-poort opene en deursture naor de bestaande listener. De Java-opties van d'n server hoefde dan nie te verandere.
Open bij GitHub Actions 'n geslaagde run op main en haal 't archief onder Artifacts op. Daor hedde 'n GitHub-account veur nodig. Welche JAR ge uit 't archief mot hebbe, staot bovenaon in de installatietabel.
Velocity en BungeeCord zitte tussen de speulers en de achterliggende Minecraft-servers. Installeer Raknetify2 op de proxy en op elke client die via RakNet verbindt.
Raknetify2-client --UDP--> Velocity of BungeeCord --TCP--> backendserver
Veur die route hebbe de backendservers gin Raknetify2 nodig. Ze hebbe nog wel de mods, plugins en deurstuurinstellingen nodig die bij oew netwerk heure. Raknetify2 vertaolt gin Minecraft-versies en verandert niks an de accountcontrole van de proxy.
- Kèk eers of gewone TCP-verbèèningen via oew proxy werke, ok bij 't aanmelde en bij 't wissele tussen backendservers.
- Stop de proxy en haal de bijpassende plugin van GitHub Releases.
- Zet
raknetify2-velocity-*-all.jarofraknetify2-bungee-*-all.jarin de mappluginsvan de proxy. Haal alle ouwere Raknetify- of Raknetify2-plugins uit die map. - Installeer de goeie Raknetify2-clientmod zoas in de installatiehandleiding staot.
- Kèk de listenerinstellingen hieronder na, start de proxy opnieuw en zoek in 't log naor foutmeldingen van de RakNet-listener.
- Laot openbaar UDP-verkeer naor de proxy toe. Beperk de toegang tot de speulpoorten van de backends zoas bij Firewall en router instelle uitgelegd is.
Gebruik op de client en de proxy Raknetify2-versies die bij mekaor passe. Lees Compatibiliteit vur ge versies deur mekare gebruikt.
In velocity.toml bepaalt bind op welk adres en welke TCP-poort Velocity luistert veur Minecraft. Raknetify2 gebruikt veur UDP normaal 't zelfde poortnummer. De regels onder [servers] moete naor de TCP-adressen van de backends blijve wèèze. Meer staot in de configuratiedocumentatie van Velocity.
Veur 'n aparte UDP-poort zette dees JVM-optie vur -jar in 't startcommando van Velocity:
-Draknetify.velocity.portOverride=25570
Vervang 25570 deur de poort die ge wilt. Da verandert de UDP-poort veur RakNet. De TCP-poort van Velocity en de backendadressen blijve 't zelfde. Start Velocity daorna opnieuw.
Stel 't deursture van speulergegevens op Velocity én op de backends in. Kan de backend modern forwarding an, gebruik da dan en hou de gedeelde sleutel geheim. Volg de stappen veur oew backend in de Velocity-handleiding veur 't deursture van speulergegevens. Hou de firewallregels veur de backend ok actief.
In de config.yml van BungeeCord geeft host bij elk item onder listeners 't luisteradres en de TCP-poort veur Minecraft aon. Raknetify2 gebruikt normaal dazelfde poortnummer veur UDP. Onder servers staon de TCP-adressen van de backends. Zie de configuratiehandleiding van BungeeCord.
Veur 'n aparte UDP-poort zette dees JVM-optie vur -jar in 't startcommando van BungeeCord:
-Draknetify.bungee.portOverride=25570
De instelling geldt veur heel de proxy. Hedde meer as één Minecraft-listener, kèkt dan in 't opstartlog op welke RakNet-aansluitpunten er echt geluisterd wordt vur ge firewallregels toevoegt. Start BungeeCord nao de verandering opnieuw.
Laot de accountcontrole op de proxy aon. Veur Spigot-backends koppelt de handleiding veur IP-forwarding van BungeeCord ip_forward: true op de proxy an settings.bungeecord: true op de backend. Alleen deursture houdt rechtstreekse verbèèningen naor de backend nie tegen. Beperk den toegang zoas in de firewallhandleiding.
Bij allebei de proxy's kunde poorten van 1 tot en meej 65534 instelle. Ongeldige waorden worre overgesloge. Kèk daorom in 't opstartlog welke UDP-poort echt gebonde is. Haal de optie weg en start opnieuw um wir 't poortnummer van de Minecraft-listener te gebruike.
Speulers verbèène meej d'n openbare hostnaom en UDP-poort van de proxy, bijveurbild raknet;play.example.com:25570. Zet de router poorten om, gebruik dan in de client d'n openbare UDP-poort. Zonder raknet; vurrop gaot de verbèèning nog gewôn over de TCP-listener van de proxy.
Gif Query, Geyser en aandere UDP-diensten elk 'n èège UDP-poort. 'n Aandere TCP-poort lost 'n conflict um 'n UDP-socket nie op.
Op Velocity en BungeeCord gebruikt Simple Voice Chat 'n èège proxyplugin en 'n èège UDP-poort. Volg de handleiding veur spraokchatproxy's.
Staot er veur oew Minecraft-proxy nog 'n UDP-relay die PROXY-protocol-v2-headers meestuurt, stel Raknetify2 dan in zoas bij UDP deursture en 't PROXY-protocol. Alleen omda ge Velocity of BungeeCord gebruikt, hoefde dè nie te doen.
Probeer 't meej 'n Raknetify2-client van buite oew lokale netwerk. Ga via de proxy binne, wissel tussen oew backendservers en kèkt of de identiteit en de rechten van de speuler nog kloppe.
- Werkt TCP via de proxy mar loopt RakNet tegen 'n time-out, kèkt dan naor de UDP-listener van de proxy, d'n openbare poort, de IPv4- en IPv6-routes en de firewallregels.
- Mislukke allebei de verbèèningen op 't moment da de proxy naor de backend gaot, kèkt dan naor 't TCP-adres van die backend, de toegangsregels en 't deursture van speulergegevens.
- Meldt de proxy 'n bezette UDP-poort, kèkt dan of Query, Geyser, 'n spraokchatproxy of 'n aander proces die poort gebruikt.
Doe bij 'n foutmelding de logs van proxy en backend van dezelfde poging. Bij Probleme oplosse staot welke versies ge derby mot zette.
Dees handleiding is veur serverbeheerders. Raknetify2 hee 'n werkende UDP-route nodig naor d'n server of proxy die RakNet-verbèèningen anneemt. Standaard gebruikt de listener 't zelfde poortnummer as d'n TCP-listener van Minecraft.
Speulers op 't zelfde lokale netwerk kunne 't lokale serveradres gebruike. Laot UDP deur de firewall van d'n server. Ge moet poorten op oew router deursture as verkeer van internet deur z'n IPv4-NAT mot.
Stuur openbaar UDP-verkeer naor de computer waor de Minecraft-server meej Raknetify2 op draait. De doelpoort is de UDP-poort van de RakNet-listener. Zet die poort open in de firewall van die computer. Hou de bestaande TCP-route veur gewone Minecraft-verbèèningen.
Luistert Raknetify2 bijveurbild op UDP 25570, stuur d'n openbare UDP-poort dan deur naor 't lokale serveradres op poort 25570. De TCP-poort kan op 25565 blijve. 'n Aandere UDP-poort kiest ge bij de listenerinstellingen veur rechtstreekse servers.
Stuur openbaar UDP-verkeer naor de computer waor Velocity of BungeeCord meej de Raknetify2-plugin op draait. Gebruik de RakNet-UDP-listener van de proxy as doel. Hou d'n bestaande openbare TCP-route naor de proxy veur gewone Minecraft-verbèèningen.
De proxy verbindt over TCP meej de Minecraft-backends. Veur Raknetify2 op de proxy hoefde de UDP-speulpoorten van de backends nie open te zette veur speulers.
| Verbèèning | Wè ge toe moet laote |
|---|---|
| Speulers naor de proxy | Openbaar UDP naor de RakNet-listener én d'n bestaande openbare TCP-listener |
| Proxy naor de backendservers | Minecraft-TCP-poorten op de backends, allee bereikbaar van de bedoelde proxycomputers |
| Speulers rechtstreeks naor de speulpoorten van de backends | Dicht laote, ok over IPv6 |
Draaje proxy en backends rechtstreeks op ééne toegeweze computer onder oew beheer, dan kunne de backendlisteners loopbackadressen gebruike. Zet die adressen dan ok in de proxy. Bij verskillende computers beperkt ge TCP-toegang tot de backends tot de proxycomputers, meej 'n firewall of 'n afgeschermd privénetwerk. Containers en beheerde hosting hebbe vergelijkbare beperkingen nodig die bij hun netwerk passe. Zie Velocity z'n handleiding veur backendbeveiliging en de firewallhandleiding van BungeeCord.
't Deursture van speulergegevens en de firewallregels werke saome. Wie rechtstreeks op 'n backend kan, kan de aanmeldcontrole van de proxy omzeile. Veur de plugin, de deurstuurinstellingen en aandere UDP-poorten zie Velocity en BungeeCord.
As de router de poort omzet, kunne d'n openbare poort en de luisterpoort verskille:
| Instelling | Welke poort ge gebruikt |
|---|---|
| Serveradres in de client | Openbare UDP-poort |
| Buitenpoort van de deurstuurregel op de router | Openbare UDP-poort |
| Binnenpoort van de deurstuurregel op de router | UDP-poort van de RakNet-listener |
| Lokale poort in de firewall van de computer | UDP-poort van de RakNet-listener |
As oew server achter 'n IPv4-router staot:
- Zoek 't lokale IPv4-adres van de computer die RakNet-verbèèningen anneemt. Gebruik 'n DHCP-reservering of 'n geschikt vast adres, zoda de regel nao 'n tijd nog naor dieje computer wèèst.
- Mok 'n UDP-deurstuurregel veur d'n openbare poort die de speulers gaon gebruike.
- Zet 't lokale adres van die computer en de UDP-poort van de RakNet-listener as doel.
- Laot in de firewall van de computer inkomend UDP-verkeer op de listenerpoort toe.
Luistert d'n server op UDP-poort 25565, dan kan de regel bijveurbild openbare poort 25565, doeladres 192.168.1.100 en doelpoort 25565 hebbe. Vervang 't veurbeeldadres deur 't echte lokale adres van oew server.
Hou de bestaande TCP-regel veur gewone Minecraft-verbèèningen. Meej allee 'n TCP-regel komt UDP nie deur.
Kèk of 'n aander router of oew internetaanbieder al NAT doet veur 't verkeer bij oew router komt. Hedde twee èège routers, dan motte 't op allebei instelle. Gebruikt oew aanbieder carrier-grade NAT, vraog dan naor 'n openbaar IPv4-adres of gebruik 'n hoster of tunnel die inkomend UDP onderstunt. Meej 'n regel op oew router kunde de NAT van d'n aanbieder nie instelle. TP-Link legt uit worom 'n openbaar WAN-adres nodig is.
Laot de gekoze UDP-poort toe in de IPv6-firewall van de router én in de firewall van de computer. Gebruik as doel 't IPv6-adres van de computer die RakNet-verbèèningen anneemt.
Kèk of 't IPv6-adres van de hostnaom naor die computer wèèst. Verandert z'n IPv6-adres, pas dan 't DNS-record en de firewallregels die da adres gebruike aon.
Publiceert 'n hostnaom IPv4- én IPv6-adressen, dan mot elk gepubliceerd adres z'n èège werkende route hebbe. Kèk allebei de stelle regels nao as d'n ééne speuler binne kumt en d'n aandere nie.
Verandert de IPv4-deurstuurregel de poortnummer, dan mot de poort die de speulers invulle ok de IPv6-listener bereike. 'n IPv4-poortvertaling stelt de IPv6-route nie in.
D'n aanbieder of tunnel mot UDP onderstune op 't openbare eindpunt da ge an de speulers geeft. Kèk de toegeweze poorten en de netwerkfirewall van d'n aanbieder nao, en ok de firewall op d'n server zelf.
Stuurt 'n extra UDP-proxy clientadressen deur meej PROXY-protocol v2, volg dan UDP deursture en 't PROXY-protocol. Laot bij de ontvangende UDP-listener allee de vertrouwde proxy toe.
Verbind van buite 't lokale servernetwerk meej 'n recente Raknetify2-client, bijveurbild via raknet;play.example.com:25565. Gebruik in da adres d'n openbare UDP-poort.
Probeer de route meej 'n echte RakNet-verbèèning. As er gin antwoord komt op 'n UDP-scan, zèèt da nie alles. 'n Werkende dienst kan 'n onbekend testpakket gewoon weggooie. De uitleg van Nmap over UDP-scans licht dè toe.
'n Geslaagde TCP-verbèèning bewèèst allee da TCP werkt. Krijgde bij RakNet 'n time-out, kèkt dan naor de listener, 't doel van de deurstuurregel, de UDP-poort en de firewallregels meej de handleiding veur 't oplosse van probleme.
Kèk welke combinaties werke veur de versie die ge echt ophaolt. D'n ontwikkeltak kan al ondersteuning hebbe die nog nie in 'n gepubliceerde versie zit.
Minecraft- en Java-versies · English
De Java-versie die Raknetify2 aangeeft is 't minimum. Minecraft of de loader kan 'n nieuwere Java-runtime nodig hebbe. Kies 'n versie die an alledrie de eisen voldoet.
Gebruik liefst dezelfde Raknetify2-versie op de client en op d'n server of proxy die z'n verbèèning anneemt. Lees de release-informatie vur ge versies mengt. Veur versleutelde RakNet-verbèèningen motte allebei de kanten 't protocol veur geauthenticeerde versleuteling ondersteune. 't Oorspronkelijke Raknetify en ouwere Raknetify2-versies van vur da protocol kunne zon versleutelde verbèèning nie make meej bijgewerkte tegenpartijen.
Raknetify2 draagt 't bestaande speulprotocol van Minecraft. Veur verskillende Minecraft-versies hedde nog 'n geschikte protocolvertaoler nodig.
Gao veur 'n fout in 'n groter modpack naor Probleme oplosse. Zet de volledige versienummers van alle mods in oew melding.
Normaal kunne de kanalen van Raknetify2 onafhankelijk deur as er één op ontbrekende gegevens wacht. In de stand meej vaste volgorde gaon alle Minecraft-pakketten per richting deur één kanaol. Mist er 'n pakket, dan wachte alle latere pakketten in die richting tot 't opnieuw verstuurd is. Zo blijft de volgorde bewaard die sommigte anti-cheatsoftware verwacht. In die tijd mot de rest van 't speulverkeer in die richting ok wachte.
-
Installeer 'n versie van Raknetify2 meej dees stand op d'n server of proxy die RakNet-verbèèningen anneemt en op elke RakNet-client.
-
Mok
config/raknetify2-compatibility.jsonin de werkmap van dieje server of proxy. Bestao de mapconfignog nie, mok ze dan eers. -
Zet d'r dit in:
{"mode": "ordered"} -
Start d'n server of de proxy opnieuw.
De clients volge de instelling van d'n server vanzelf. Speulers hoeve gin èège configuratiebestand te make en ok hun RakNet-serveradres nie te verandere.
Alle Minecraft-pakketten gaon per richting over één betrouwbaar kanaol in vaste volgorde. Da geldt ok veur bundelgrenze en wirreldwissels.
Verbèène de speulers via Velocity of BungeeCord, stel de vaste volgorde dan in op dieje proxy, ok as de anti-cheat op 'n backendserver draait.
De instelling blijft gelde as ge van backend wisselt. In dees stand stuurt de proxy keepalive-verzoeken van de backend deur naor de echte client in plek van zelf te antwoorde.
Bij de irste RakNet-verbèèning meldt de console:
Raknetify2 compatibility: ordered (updated clients required, genuine acknowledgements)
Nao 'n geslaagde onderhandeling staot er ok ordered compatibility negotiated in 't log, meej daorachter 't adres van d'n andere kant.
Laot de anti-cheatcontroles aon en test oew èège opstelling.
RakNet-clients zonder steun veur de vaste volgorde kunne nie binne op 'n server die ze verplicht stelt. Wèèrk Raknetify2 bij op die clients, of verbind via 't gewone TCP-adres en de poort van d'n server of proxy. Laot raknet; dan weg.
Verander d'n inhoud van 't bestand in:
{"mode": "multichannel"}Start d'n server of proxy daarna opnieuw. Ge kunt 't bestand ok weghaole. Nao 'n herstart zèn de kanalen dan ok weer gesplitst.
't Bestand mot precies één instelling meej de naom mode bevatte, meej as waorde "ordered" of "multichannel". Hoofdletters en kleine letters telle mee.
As de configuratie ongeldig of nie leesbaar is, worre RakNet-verbèèningen geweigerd. Verbeter 't bestand en start 't proces opnieuw.
Meldt de console nog aaltij multichannel, kèkt dan of 't bestand in de werkmap staot van d'n server of proxy die de RakNet-verbèèning anneemt. Start dèt proces opnieuw.
Servers meej Fabric, Forge of NeoForge kunne RakNet kieze as ze 'n geschikte client naor 'n ingestelde bestemming sture. Ze gebruike daor de ingebouwde servertransfer van Minecraft veur, beschikbaar sinds Java Edition 1.20.5. Kèk an allebei de kanten of oew Raknetify2-versie de betreffende Minecraft-versie en loader onderstunt.
Installeer Raknetify2 op d'n verzendende server en op de client. De bestemming mot 'n geschikte RakNet-listener hebbe en inkomende Minecraft-transfers anneme.
Dees instelling geldt veur transfers vanaf servers meej die drie modloaders. De plugins veur Spigot/Paper, Velocity en BungeeCord leze dit transferbestand nie.
Mok in de map van d'n verzendende server config/raknetify2-transfers.json:
{
"destinations": [
{
"host": "play.example.com",
"tcpPort": 25565,
"udpPort": 25570
}
]
}Vervang de hostnaom en poorten uit 't veurbeeld deur die van oew bestemming en start d'n verzendende server opnieuw. Meer bestemmingen zette in dezelfde array.
| Veld | Beteekenis |
|---|---|
host |
Hostnaom of IP-adres van de bestemming, zonder transportvoorvoegsel of poort |
tcpPort |
Doelpoort in 't oorsponkelijke transferverzoek |
udpPort |
Openbare RakNet-poort waor de deurgestuurde client naor toe mot |
TCP en UDP meuge 't zelfde poortnummer hebbe. Zet de router de UDP-poort om, gebruik dan d'n openbare poort in dees bestand. Schrijf poorten as JSON-getalle.
Stuur transfers naor de gewone hostnaom en TCP-poort van de bestemming. Raknetify2 kèkt of de client automatische transfers onderstunt. Kan-ie dè en past de bestemming bij 'n vermelding, dan kiest 't de ingestelde UDP-poort. Bij aandere clients en bestemmingen zonder vermelding blijft 't oorspronkelijke transferadres gelde.
De vergelèèking gebruikt de hostnaom en TCP-poort uit 't transferverzoek. Hoofdletters, 'n DNS-punt op 't end en gelijkwaardige IPv6-schrijfwijzen worre gelijkgetrokke. Er is gin DNS-opzoeking. Twee verskillende hostnamen hebbe dus èège regels nodig, ok as ze naor 't zelfde adres wèèze. Jokertekens worre nie ondersteund.
Gebruikt de bestemming 't Minecraft-bestand server.properties, zet dan accepts-transfers=true en start d'n server opnieuw. 'n Proxy as bestemming kan z'n èège transferinstelling hebbe. Standaard weigert Minecraft inkomende transfers, ok as ge rechtstreeks wel binne kunt.
De RakNet-listener op de bestemming, de openbare UDP-doorstuurregel en de firewall van de computer moete al ingesteld zèn. 't Transferbestand op d'n verzendende server bepaalt welk adres de client krèègt.
Publiceert de hostnaom IPv4 én IPv6, kèkt dan naor allebei de routes. Test eers 'n gewone rechtstreekse RakNet-verbèèning naor de bestemming, vur ge automatische transfers onderzoekt.
Laot de aanmeld- en toegangscontroles op de bestemming aon. Dees instelling geeft speulers gin toegang en vervangt de verificatie op d'n server nie.
Ontbrekende of onbekende velde, ongeldige poorten en dubbele bestemmingen geve bij 't starte 'n configuratiefout. Zoek de fout in 't serverlog, verbeter de JSON en start opnieuw.
Um de automatische keuze uit te zette, haol 't configuratiebestand weg of gebruik {"destinations": []}. Start d'n verzendende server opnieuw. Z'n transferverzoeken houwe dan hun oorsponkelijke adressen.
'n UDP-proxy kan RakNet-verkeer deursture en 't oorsponkelijke clientadres meegeve meej PROXY-protocol v2. Zet dees functie aon as 'n eerdere UDP-proxy zulke headers naor oew listener stuurt. Veur gewone poortdoorsturing op de router hoefde dè nie te doen.
Mok op d'n server of Minecraft-proxy die 't deurgestuurde UDP-verkeer binnenkrèègt config/raknetify2-proxy-protocol.json:
{
"trustedProxies": ["192.0.2.10"]
}Vervang 't veurbeeld deur 't echte bron-IP-adres van de UDP-proxy of 'n CIDR-bereik da ge zelf beheert. 't Mot 't adres zèn da de ontvangende listener ziet nao eventuele NAT onderweg. IPv4- en IPv6-adressen in letterlijke vorm zèn goed. DNS-hostnamen worre geweigerd. Start d'n ontvangende server of proxy opnieuw.
Stel de deursturende proxy zo in dèt-ie veur UDP PROXY-protocol-v2-headers meestuurt. Raknetify2 neemt deurgestuurde clientadressen allee aon van de vermelde bronnen. Zolang die instelling aon staot, worre rechtstreekse RakNet-verbèèningen zonder die headers geweigerd. De TCP-listener houdt z'n bestaande configuratie.
Elke proxy in de lèèst wordt vertrouwd um clientadressen aon te levere. Zorg in de firewall van de backend da alleen de bedoelde proxy z'n UDP-poort kan bereike. Hou de vertrouwde adresbereike zo klein as oew netwerk toelaot.
't Bestand mag allee trustedProxies bevatte, meej tenminste één vermelding. 'n Lege array is fout. Bij 'n ongeldig bestand start de RakNet-listener nie.
Haal 't bestand weg en start de listener opnieuw um wir rechtstreekse UDP-verbèèningen aon te neme. Pas tegelèèk 't deursture op de eerdere proxy en de firewallregels veur de nieuwe route aon.
Lukt 't nao 't aanzette nie om te verbèène, kèkt dan op de backend naor 't echte bronadres van de proxy, 't ingestelde vertrouwde bereik en of de proxy PROXY-protocol-v2-headers veur UDP stuurt.
Veur de installatie van 'n Minecraft-proxy en 't instelle van de backends zie Velocity en BungeeCord.
Op Fabric, Forge, NeoForge, Spigot en Paper kan Raknetify2 z'n UDP-serverlistener meej Simple Voice Chat deele.
Installeer Simple Voice Chat op d'n server en op elke client die spraokchat wil gebruike. Volg veur de rest van de instellingen de serverhandleiding van Simple Voice Chat.
Zet 't bestand van Raknetify2 in de bovenste config-map van d'n server, ok op Spigot/Paper. 't Bestand van Simple Voice Chat zelf blijft op de plek die hieronder veur oew platform staot.
-
Mok in de servermap
config/raknetify2-voicechat.jsonmeej deze inhoud:{"enabled": true} -
Zet in de serverconfiguratie van Simple Voice Chat
port=-1. Op servers meej 'n modloader is daconfig/voicechat/voicechat-server.properties, op Spigot/Paperplugins/voicechat/voicechat-server.properties. -
Laot
bind_addressleeg as er precies één passende RakNet-listener is. Luistere d'r méér op die UDP-poort, vul dan 't lokale adres in van de listener die ge wilt deele. -
Start d'n server opnieuw en voer
/voicechat test <PLAYERNAME>uit veur 'n speuler die al verbinde is.
Gebruikt de RakNet-listener 'n aandere poort as Minecraft, zet de spraokchatinstelling port dan uitdrukkelijk op die lokale UDP-poort in plek van op -1. Luistert RakNet op lokale UDP-poort 25570, dan hedde port=25570 nodig.
Stel voice_host in as clients 'n aander openbaar adres of 'n aandere poort nodig hebbe. Stuurt 'n router openbare UDP-poort 25580 deur naor lokale UDP-poort 25570, gebruik dan port=25570 en voice_host=play.example.com:25580. 't Openbare adres heurt in voice_host. Meej bind_address kiesde 'n lokale listener.
Raknetify2 levert de gedeelde UDP-socket via de API van Simple Voice Chat. Simple Voice Chat regelt de verificatie en versleuteling van spraokchat. Speulers kunne spraokchat gebruike of hun speulverbèèning nou over TCP of over RakNet loopt.
Gif Query en Geyser elk 'n èège UDP-poort. De gedeelde socket werkt allee meej Simple Voice Chat.
Op Velocity en BungeeCord deelt dees koppeling gin socket meej 'n spraokchatproxy. Volg de proxyhandleiding van Simple Voice Chat en gif de spraokchatproxy 'n èège UDP-poort. Meej de officiële proxyplugin heurt 'n afwijkend openbaar voice_host in de spraokchatconfiguratie van de proxy. Die plugin negeert de instellingen van voice_host op de backendservers.
Bij 'n gewone UDP-tunnel zet ge voice_host op de openbare hostnaom en de UDP-poort die naor dees server deurstuurt.
Meldt 't log No RakNet listener matches the voice bind address and port, kèkt dan of RakNet goed gestart is. De spraokchatpoort en 't lokale bindadres moete kloppe meej de listener.
Meldt 't log Multiple RakNet listeners match the voice bind address, kies dan bij bind_address één specifiek passend lokaal adres en start opnieuw.
Er kan mar één plugin de UDP-socket veur Simple Voice Chat levere. Meldt 't opstartlog da 'n aander plugin al 'n socket levert, kies dan welke koppeling ge wilt gebruike.
Um de koppeling van Raknetify2 uit te zette, zet {"enabled": false} in z'n spraokchatconfiguratie of haol da bestand weg. Gif Simple Voice Chat 'n èège UDP-poort, pas de firewall- of deurstuurregels aon en start d'n server opnieuw.
Loop dees punte een veur een nao:
- Op de client is de Raknetify2-mod geïnstalleerd die bij z'n loader en Minecraft-versie past.
- Op d'n server of proxy die de verbèèning anneemt, is Raknetify2 geïnstalleerd. De listener is zonder fout gestart.
- 't Adres begint meej
raknet;en gebruikt d'n openbare UDP-poort. - D'n hoster, de router en de firewall van de computer laote UDP op die poort deur.
- De IPv4- en IPv6-adressen van de hostnaom wèèze naor de goeie computer. De firewallregels laote allebei de routes toe.
'n Geslaagde TCP-verbèèning test alleen de TCP-route. Loop de UDP-doorsturing en de IPv6-toegang nao zoas bij Firewall en router instelle staot. Staot 't PROXY-protocol aon, dan moete clients via 'n ingestelde vertrouwde proxy bij de listener kome.
Kèk of 'n aander proces de UDP-poort gebruikt. Query, Geyser en aandere UDP-diensten hebbe elk hun èège poort nodig. Meej Simple Voice Chat kunde de poort saome gebruike.
'n Aandere lokale UDP-poort kunde kieze bij de listenerinstellingen veur rechtstreekse servers of de instellingen veur Velocity en BungeeCord. Kèk welke versie de Spigot/Paper-instelling nodig hee. Alleen de openbare poort op de router verandere lost 't lokale socketconflict nie op.
Verbind rechtstreeks meej 't raknet;-adres van de bestemming. Mislukt dè al, los dan eers 't probleem meej de bestemmelistener of de netwerkroute op.
Lukt rechtstreeks verbèène wel, kèkt dan of de bestemming inkomende transfers anneemt. 'n Minecraft-server meej server.properties hee accepts-transfers=true nodig. Meej rechtstreeks binnekeume test ge die instelling nie.
Vergelèèk vervolgens de hostnaom en TCP-poort uit 't transferverzoek meej config/raknetify2-transfers.json op d'n verzendende server. Kèk of 't bestand nao 'n herstart gelaje is en of de client automatische RakNet-transfers onderstunt. Zie Automatisch van server wissele.
Kèk welke Raknetify2-versies er an allebei de kante draaie. Verandert 'n versie 't versleutelde protocol, wèèrk dan client en server of proxy saome bij. Laot de verificatie-instellingen van d'n server staon terwijl ge de fout onderzoekt.
Schrijf op wa ge doet wanneer 't misgaot, bijveurbild 'n inventaris opene, 'n resourcepack ontvange, van wirreld wissele of 'n entiteit laote verschijne. Probeer diezelfde actie over TCP en RakNet, liefst in 'n aparte testinstallatie.
Bij sommigte èège datapakketten makt de volgorde tegenover gewone Minecraft-pakketten uit. Modmakers kunne dè aangeve via de interface veur de pakketvolgorde.
Mok 'n melding in de issuetracker van Raknetify2 en zet dit derby:
- De Minecraft-, Java-, loader- en Raknetify2-versies an allebei de kante.
- De versies van de server- en proxysoftware, ok van 'n eventuele UDP-deurstuurproxy.
- Alle aandere geïnstalleerde mods en hun versies.
- De stappe waormee ge 't probleem opnieuw kunt oproepe en wa ge verwacht had.
- Of dezelfde stappe over TCP wel werke.
- Stukke uit de client-, server- en proxylogs van dezelfde poging.
Haol toegangstokens, wachtwoorde en aandere privégegevens uit de logs vur ge ze uploadt. Laot de foutmeldingen en stacktraces staon die nodig zèn veur de diagnose.
Meej Raknetify2 kunne mods aangeve bij welk Minecraft-verkeer de volgorde ten opzichte van hun èège payloads bewaord mot blijve. Dè is van belang as de verwerking van zo'n payload 'n entiteit, chunk, inventaris of aandere toestand nodig hee die deur 'n eerder pakket aangemokt wordt.
| Groep | Welk verkeer d'ronder valt |
|---|---|
ui |
Menu's en interacties die nie an de wirreld gebonde zèn |
entity |
Entiteiten late verschijne, weghaole en verplaatse |
world_interaction |
Inventarisse en aandere interacties die an de wirreld gebonde zèn |
effects |
Geluid en deeltjes |
chunk |
Bijwerkingen van terrein, blokken en belichting |
Binnen elk kanaol worre de pakketten betrouwbaar in de goeie volgorde afgeleverd. Pakketten uit verskillende groepe kunne onderling in 'n aandere volgorde binnekeume. Kies de groep die past bij de gegevens waor oew payload van afhangt.
Zet in de fabric.mod.json van oew mod 'n provider bij 't entrypoint raknetify:packet_channels. Die provider implementeert Consumer<BiConsumer<String, String>> meej JDK-types. Hij krèègt 'n registratiefunctie die 'n ID veur de èège payload en 'n volgordegroep anneemt.
Voeg dit toe an oew bestaande metadata. Vervang de klassenaom deur de volledig gekwalificeerde naom van oew provider:
{
"entrypoints": {
"raknetify:packet_channels": [
"com.example.mod.OrderingProvider"
]
}
}'t Veurbeeld is mar 'n stukske van 't bestand. Behou de rest van oew fabric.mod.json, ok de bestaande entrypoints.
'n Mod die de beweging van entiteiten uitbreidt, kan bijveurbild example:entity_path registrere in de groep entity. De documentatie van de PacketOrdering-API laot zien hoe de provider werkt.
As Raknetify2 nie geïnstalleerd is, roept Fabric dit entrypoint nie aon. Registreer de ID's en groepe bij 't opstarte, zonder ervan uit te gaon da 'n aandere mod dan al klaor is meej z'n èège initialisatie.
As Raknetify2 beschikbaor is, kunne Forge- en NeoForge-mods en server- of proxyplugins bij 't opstarte PacketOrdering.register(identifier, group) aanroepe. De klasse heet com.ishland.raknetify.api.PacketOrdering. Registreer vurdat speulers kunne verbèène. As de koppeling optioneel is, mag oew code gin Raknetify2-klassen laje wanneer die afhankelijkheid ontbreekt.
De regels gelde veur nieuwe verbèèningen. Bestaande verbèèningen houwe de regels die ze bij 't opbouwe krege. Dezelfde regel nog 'ns registrere mag. Twee groepe die mekaor tegenspreke veur dezelfde ID worre geweigerd.
Payload-ID's moete 'n geldige èège namespace gebruike. De namespace minecraft is gereserveerd. Per eindpunt zèn hooguit 128 regels toegestaon, meej inbegrip van ingebouwde regels en registraties van aandere mods. ID's meuge tot 255 ASCII-tekens lang zèn en moete de namespace-syntaxis van de API volge.
Bijgewerkte RakNet-eindpunten wissele bij 't opbouwe van de verbèèning hun regels uit. 'n Server of proxy kan de regel van d'n aander gebruike as-ie veur die payload gin èège regel hee. Lokale regels gaon veur. De regels van d'n aander gelde allee veur dieje verbèèning.
Veur UDP-relays en deurgestuurde clientadressen, zie UDP deursture en 't PROXY-protocol.
Hoe ge 'n Minecraft-proxy instelt, staot bij Velocity en BungeeCord.