Repository navigation
Wiki hu hu
- Főoldal
- Telepítés
- Velocity és BungeeCord
- Tűzfal és router konfiguráció
- Kompatibilitás
- Rendezett mód
- Automata átvitel
- UDP továbbítás és PROXY protokoll
- Simple Voice Chat
- Hibaelhárítás
- Mod integráció
- UDP proxyk
RakNet hálózati kapcsolatok Minecraft-kliensek és -szerverek számára.
| Minecraft | Raknetify2 | Kliens / Szerver |
|---|---|---|
| Fabric | mods/raknetify2-fabric-*.jar |
Kliens / Szerver |
| Forge | mods/raknetify2-forge-*.jar |
Kliens / Szerver |
| NeoForge | mods/raknetify2-neoforge-*.jar |
Kliens / Szerver |
| Spigot / Paper | plugins/raknetify2-spigot-*.jar |
Szerver |
| Velocity | plugins/raknetify2-velocity-*.jar |
Velocity |
| BungeeCord | plugins/raknetify2-bungee-*.jar |
BungeeCord |
-
Többjátékos mód
-
Szerver felvétele
-
Szerver címe
Szerver címe RakNet · UDP raknet;play.example.com:25565TCP play.example.com:25565 -
Kész
-
Csatlakozás
| F3 | |
|---|---|
| RakNet · UDP | Aktív · MTU 1400 |
| TCP | Inaktív |
- Kliens · Raknetify2 → UDP → Velocity / BungeeCord · Raknetify2
- Velocity / BungeeCord → TCP → Szerver
| Port száma · 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 |
| Szerver címe | UDP |
|---|---|
raknet;play.example.com:25580 |
play.example.com:25580 → NAT → 192.0.2.10:25570
|
Szerver · 192.0.2.10
|
25570/udp |
Szerver / Velocity / BungeeCord
| JSON | |
|---|---|
| ① ② ③ | {"mode":"ordered"} |
| ① ∥ ② ∥ ③ | {"mode":"multichannel"} |
| Szerver | 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
| Szerver címe | trustedProxies |
RakNet |
|---|---|---|
192.0.2.10 · PROXY v2 / UDP |
["192.0.2.10"] |
✓ |
192.0.2.11 · PROXY v2 / UDP |
["192.0.2.10"] |
✗ |
| Kliens → RakNet / UDP | ["192.0.2.10"] |
✗ |
config/raknetify2-proxy-protocol.json
{"trustedProxies":["192.0.2.10"]}-
Szerver A · Fabric / Forge / NeoForge ·
config/raknetify2-transfers.json{"destinations":[{"host":"play.example.com","tcpPort":25565,"udpPort":25570}]} -
Szerver B ·
play.example.com·server.properties→accepts-transfers=true -
Szerver A ·
/transfer play.example.com 25565 Alex→ Kliens (Alex) → RakNet ·play.example.com:25570
| Minecraft | |
|---|---|
ui |
Beállítások |
entity |
Csontváz |
world_interaction |
Felszerelés |
effects |
Részecskék |
chunk |
Blokkok |
- Fabric · Minecraft / Java · English
- Forge / NeoForge / Spigot / Paper · GitHub Releases
A Raknetify2 UDP-n keresztül, a RakNet protokollal továbbítja a Minecraft többjátékos módjának adatait. A forgalmat csatornákra osztja, és mindegyiken megőrzi a csomagok sorrendjét. Ha az egyik csatornán elvész egy csomag, a többi csatornán tovább haladhatnak az adatok. Így a játék akkor is reagálhat a műveleteidre, amikor a rendszer újraküldi a hiányzó adatokat, vagy a világ egyes részeit továbbítja.
Raknetify2 egy függetlenül karbantartott fork a Raknetify másolata, eredetileg ishland fejlesztette. A fork támogatást ad hozzá újabb Minecraft verziókhoz, és fenntartja a szállítási, platform integrációkat és kompatibilitási teszteket.
- Ellenőrizze a Minecraft és mod kompatibilitását.
- Válasszon letöltést és telepítse.
- Csatlakozzon egy olyan címmel, mint
raknet;play.example.com.
- Velocity és BungeeCord
- Függvényfal és router konfiguráció
- Automata átvitel
- UDP továbbítás és PROXY protokoll
- UDP port megosztása Simple Voice Chat-el
- Hibaelhárítás és bug jelentések
A mod alkotói használhatják a csomagrendezési felületet a benutzerdefini payload-ok és a Minecraft forgalom közötti függőségek kijelöléséhez.
Raknetify2 az MIT licencet használja és megőrzi az eredeti szerzői jogi megjegyzéseket. Hálózati implementációja a Raknetify-en és a netty-raknet-en épül.
Töltse le egy kiadást a GitHub Releases-ről. Ellenőrizze a Minecraft verzió és a loader követelményeket a telepítés előtt.
| Hol telepíti | Fájl | Mapp |
|---|---|---|
| Fabric kliens vagy szerver | raknetify2-fabric-*.jar |
mods |
| Forge kliens vagy szerver | raknetify2-forge-*.jar |
mods |
| NeoForge kliens vagy szerver | raknetify2-neoforge-*.jar |
mods |
| Spigot vagy Paper szerver | raknetify2-spigot-*.jar |
plugins |
| Velocity proxy | raknetify2-velocity-*.jar |
plugins |
| BungeeCord proxy | raknetify2-bungee-*.jar |
plugins |
Zárja a kliént vagy állítsa le a szervert, mielőtt lecseréli a JAR-t. Távolítsa el az eredeti Raknetify JAR-t és bármilyen régebbi Raknetify2 JAR-t ugyanazon az telepítésből, mielőtt hozzáadná a új fájlt.
A kliens mappák a Minecraft példányhoz vagy modpackhez tartoznak, amit indít. A szerver és proxy mappák a szerverhez vagy proxyhez tartoznak. Létrehozsa a megfelelő mappát, ha a loaderja még nem hozta létre.
- Telepítsd ki a kliens modot a loaderedhez.
- Telepítsd ki a megfelelő szerver modot, vagy a Spigot/Paper plugin-et egy kompatibilis szerverre.
- Kövesd a Firewall és router konfigurációt, hogy engedélyezd a UDP kapcsolatokat a szerverhez.
- Újraindítsd a kliént és a szervert.
- Adjon meg egy szerver címét, például
raknet;play.example.comvagyraknet;play.example.com:25565.
A raknet; előtag nélküli címek TCP-t használnak.
Csak a kliens mod telepítése nem ad RakNet támogatást a távoli szerverhez. A szerver üzemeltetőjenek kell biztosítania egy RakNet végpontot. A mások szerveréhez csatlakozó játékosok általában nem igényelnek bemeneti router továbbítási szabályokat.
Telepítse a megfelelő proxy pluginet és a kliens modot. Kövesse az Velocity és BungeeCord útmutatót a hallgató beállításaihoz, a háttér továbbításához, az hozzáférés korlátozásához és az álacímhez, amelyet a játékosok használnak.
Egy közvetlen Minecraft szerverhez, állítsa be az alábbi megfelelő Java argumentumot. A proxy operatívok a Velocity és BungeeCord meghallgató beállításokat használják.
| Platform | Java argument | Elfogadott portok |
|---|---|---|
| Fabric, Forge vagy NeoForge szerver | -Draknetify.fabric.portOverride=25570 |
1 és 65534 között |
| Spigot vagy Paper szerver | -Draknetify.spigot.portOverride=25570 |
1 és 65535 között |
A Forge és NeoForge megosztott hallgató kódot használják, ezért a tulajdonságuk neve is tartalmazza a fabric-et. Cseréld ki a 25570-et a kívánt UDP port számmal.
Spigot / Paper ≥ 0.1.0-beta.1.431
Adja meg az argumentumot a -jar elé a Java parancsban, vagy a host JVM argumentumok mezőjében. Indítsa újra a szervert, és engedélyezze a választott UDP portot. Ha a nyilvános port is 25570, csatlakozzon a raknet;play.example.com:25570 segítségével. Ha egy router fordítja a portot, használja a nyilvános portját a kliens címben. A TCP port változatlan marad.
Spigot/Paper-en az UDP meghallgató a Minecraft TCP meghallgató helyi kötési címét tartja. Egy érvénytelen átírás vagy elfoglalt UDP port megakadályozza a RakNet elindítását. Ellenőrizze a beindítási logot a kötött UDP cím és port számára. Távolítsa el az argumentumot, és indítsa újra, hogy visszatérjen a TCP meghallgató portjához.
Egy router vagy UDP proxy is eltérő nyilvános UDP portot hozhat előtérbe, és továbbíthatja azt a meglévő meghallgatóhoz anélkül, hogy megváltoztatná a szerver Java argumentumait.
Nyissa meg egy sikeres main futást a GitHub Actions-ben, és töltse le annak Artifacts archivumát. GitHub egy fiókot igényel a munkafolyamat artefaktumainak letöltéséhez. Használja a fent lévő telepítési táblázatot a múltból kiválasztott JAR-típushoz.
A Velocity és BungeeCord a játékosok és a háttér Minecraft szerverek között helyezkednek el. Telepíts Raknetify2-t a proxy-n és minden olyan kliensre, amely RakNet-en keresztül csatlakozik.
Raknetify2 kliens --UDP--> Velocity vagy BungeeCord --TCP--> háttér szerver
A háttér szervereknek nem kell Raknetify2-nak ehhez a kapcsolat útvonalhoz. Meg kell tartaniuk a modokat, plugineket és a továbbítási támogatást, amelyet a hálózata igényel. Raknetify2 nem fordítja le a Minecraft verziókat és nem változtatja meg a proxy fiókautentikációját.
- Ellenőrizd, hogy a proxy-n keresztül történő szokásos TCP kapcsolatok működnek-e, beleértve az autentikációt és a háttér szerverek közötti váltást.
- Állítsa le a proxyt, és töltse le a megfelelő pluginet a GitHub Releases oldalról.
- Helyezze a
raknetify2-velocity-*-all.jarvagyraknetify2-bungee-*-all.jarfájlt a proxypluginsmappájába. Távolítsa el minden régebbi Raknetify vagy Raknetify2 pluginet ebből a mappából. - Telepítse be az alkalmas Raknetify2 kliens modot a telepítési útmutató segítségével.
- Ellenőrizze az alábbi figyelő beállításokat, újraindítsa a proxyt, és vizsgálja meg a logját a RakNet figyelő hibaüzenetek keresése céljából.
- Engedélyezze a nyilvános UDP forgalmat a proxyhoz, és korlátozza a háttér játékportokat, ahogy a Firewall és router konfiguráció részletezi.
Használjon kompatibilis Raknetify2 verziót a kliensön és a proxy-n. Ellenőrizze a Kompatibilitás megkeverés előtt.
A velocity.toml fájl bind beállítása adja meg, hogy a Velocity milyen címen és TCP-porton fogad Minecraft-kapcsolatokat. A Raknetify2 alapértelmezés szerint ugyanezt a portszámot használja UDP-hez. A [servers] bejegyzések a háttérkiszolgálók TCP-címeire mutassanak. További részletek a Velocity beállításainak leírásában.
Ha külön UDP portot szeretnél használni, adj ezt a JVM argumentet a Velocity indítási parancs előtt: -jar
-Draknetify.velocity.portOverride=25570
Cserélje ki a 25570-et a kiválasztott portjával. Ez megváltoztatja a RakNet UDP portját, miközben megőrzi a Velocity TCP portját és a backend címeket. Indítsa újra a Velocityt az argumentum megváltoztatás után.
Konfigurálja a játékos továbbítását a Velocityen és annak háttérrendszerein. Használja a modern továbbítást, ha a háttérszoftver támogatja, és tartsa a továbbítás titkát magánként. Kövesse a háttérszoftverhez specifikus utasításokat a Velocity játékos információ továbbítási útmutatójában. Tartsa fenn a háttérszoftver tűzfal korlátozásait a továbbítás mellett.
BungeeCord'ban a config.yml fájlban az egyes listeners bejegyzések alatti host értéke egy Minecraft figyelő címet és TCP portot azonosít. A Raknetify2 általában UDP-t ad hozzá ehhez a port számhoz. A servers bejegyzések tartalmazzák a háttér TCP címeket. Ezeket a beállításokat a BungeeCord konfigurációs útmutatóban találja le.
Egy külön UDP porthoz adja hozzá ezt a JVM argumentet a BungeeCord indítási parancs előtt: -jar
-Draknetify.bungee.portOverride=25570
A felülírás a teljes proxy folyamatra vonatkozik. Több Minecraft figyelővel rendelkező konfiguráció esetén ellenőrizzük a tényleges RakNet végpontokat az indítási naplóban, mielőtt tűzfalszabályokat adnánk hozzá. Indítsuk újra a BungeeCord-at az argumentum módosítása után.
Tartsa meg az account hitelesítést a proxynál. Spigot háttérrendszerek esetén BungeeCord IP továbbítási útmutatója párosítja az ip_forward: true-t a proxynál az settings.bungeecord: true-val a háttérrendszeren. A továbbítás mag alone nem akadályozza meg, hogy valaki közvetlenül a háttérrendszerhez csatlakozzon. Korlátozza a háttérrendszer hozzáférését a firewall utasításokkal.
Mindkét proxy átírás elfogadja a 1-től 65534-ig terjedő portokat. Érvénytelen értékek figyelmen kívül maradnak, ezért ellenőrizze a beindítási naplózásban megadott UDP portot. Távolítsa el az argumentumot, és indítsa újra, hogy visszatérjen a Minecraft meghallgató portjához.
A játékosok a proxy nyilvános hostnévéhez és UDP portjához csatlakoznak, például raknet;play.example.com:25570. Ha egy router portot fordít, használja annak nyilvános UDP portját a kliens címben. Azok a címek, amelyek nem tartalmaznak raknet; előfixet, továbbra is használják a proxy TCP meghallgatóját.
Hagyja a Query, Geyser és más UDP szolgáltatásokat külön UDP portokon. Egy másik TCP port nem oldja meg a UDP soket konfliktust.
A Simple Voice Chat saját proxy pluginjét és UDP portját használja a Velocity-n és BungeeCord-on. Kövesse a Hangcsatlakozási proxy útmutatót erre a beállításra.
Ha külön UDP relay áll a Minecraft proxy előtt és küld PROXY protokoll v2 fejléceket, kövesse beállítást a Raknetify2-ben a UDP továbbítás és PROXY protokoll használatával. A Velocity vagy BungeeCord egyedül telepítése nem igényel ezt a konfigurációt.
Tesztelje külső hálózaton egy Raknetify2 klienssel. Csatlakozzon a proxy-n keresztül, váltson a használt háttér szerverek között, és erősítse meg, hogy a játékos azonosítója és engedélyei helyesek maradnak.
- Ha a TCP a proxyn keresztül működik, de a RakNet időtúllépséget jelez, ellenőrizze a proxy UDP meghallgatóját, a nyilvános portot, az IPv4 és IPv6 útvonalakat és a tűzfal szabályait.
- Ha mindkét távközlés sikertelen, amikor a proxy egy backendhez csatlakozik, ellenőrizze a backend TCP címét, az hozzáférési szabályokat és a játékos továbbítási konfigurációt.
- Ha a proxy foglalt UDP portot jelent, ellenőrizze a Query, Geyser, egy hang proxy, vagy más folyamat, amely hozzá van kötve.
Hibajelentéshez mellékelje a proxy és a háttérkiszolgáló ugyanahhoz a csatlakozási kísérlethez tartozó naplóját. A szükséges verzióadatokat a Hibaelhárítás sorolja fel.
Ez az útmutató a szerver üzemeltetőknek szól. A Raknetify2 működő UDP útvonalra van szüksége a szerverhez vagy a RakNet kapcsolatokat elfogadó proxyerhez. Az alapértelmezett beállítás ugyanazt a port számot használja, mint a Minecraft TCP meghallogatója.
Ha a játékosok ugyanazon a helyi hálózaton vannak, használja a szerver helyi címét, és engedélyezze az UDP-t a host tűzfalán. A router port forwarding szükséges, ha az internetforgalomnak át kell haladnia a router IPv4 NAT-ján.
Küldje a nyilvános UDP forgalmat a Minecraft szerverhez, amelyen a Raknetify2 fut. A célport a szerver RakNet UDP meghallogatója. Engedélyezze ezt a portot a szerver gép host tűzfalán. Tartsa meg a meglévő TCP útvonalát a szokásos Minecraft kapcsolatokhoz.
Ha például a Raknetify2 a 25570 UDP-porton figyel, a nyilvános UDP-port forgalmát a kiszolgáló helyi címére, a 25570 portra továbbítsa. A kiszolgáló TCP-portja maradhat 25565. Másik UDP-port kiválasztásához lásd a közvetlen kiszolgálókapcsolat beállításait.
Küldje a nyilvános UDP forgalmat a Velocity vagy BungeeCord futtatott gépre a Raknetify2 proxy plugin segítségével. Használja a proxy RakNet UDP figyelőjét a továbbítás célpontként. Tartsa meg a proxy meglévő nyilvános TCP útvonalát a szokásos Minecraft kapcsolatokhoz.
A proxy TCP-n kapcsolódik a háttér Minecraft szerverekhez. A Raknetify2 hozzáadása a proxyhoz nem igényel a háttér játékos UDP portjainak megnyitását.
| Kapcsolat | Hozzáférés engedélyezése |
|---|---|
| Játékosok a proxynál | Köznyilanos UDP a RakNet hallgatóhoz, plusz a meglévő köznyilanos TCP hallgató |
| Proxy a háttér szerverekhez | Háttér Minecraft TCP portok, csak a tervezett proxy hostokból elérhető |
| Játékosok közvetlenül a backend játékportokra | Blokkálva, IPv6-on keresztül is |
Ha a proxy és a backend közvetlenül egy dedikált, általad irányított gépen fut, a backend figyelők a loopback címeket használhatják, ha a proxy úgy van konfigurálva, hogy elérje őket ott. Más gépek között korlátozza a backend TCP hozzáférést a proxy hostokhoz egy tűzfal segítségével vagy egy elszigetelt magánhálózattal. A konténerek és a menedzselt hostoknak ekvivalens korlátozást kell alkalmazniuk a hálózati elrendezésükhez. Látogasson el a Velocity backend biztonsági útmutatójához és a BungeeCord tűzfal útmutatójához.
A játékos továbbítása és a tűzfal korlátozásai együtt működnek. A közvetlen backend hozzáférés elkerülheti a proxy bejelentkezési ellenőrzéseit. A plugin telepítéséhez, a továbbítási beállításokhoz és a UDP port átírásához kövesse a Velocity és BungeeCord.
A nyilvános port és a hallgató port eltérhet, ha egy router fordít át közöttük:
| Beállítás | Használt port |
|---|---|
| Ügyfél szerver címe | Nyilvános UDP port |
| A router továbbítási szabályának külső portja | Nyilvános UDP port |
| A router továbbítási szabályának belső portja | A RakNet meghallgató UDP portja |
| A host tűzfalának helyi portja | A RakNet meghallgató UDP portja |
IPv4 router mögött hostinghez:
- Keresse meg a RakNet kapcsolatokat elfogadó gép helyi IPv4 címét. Használjon DHCP tartalékot vagy megfelelő statikus címet, hogy a továbbítási szabály továbbra is erre a gépre irányuljon.
- Adjon hozzá egy UDP továbbítási szabályt a játékosok által használt nyilvános port számára.
- Állítsa a szabály célpontját erre a gép helyi címére és a RakNet meghallgató UDP portjára.
- Engedélyezze a bemeneti UDP-t a meghallgató porton a host tűzfalban.
Például egy UDP porton, a 25565-en figyelő szerver használhat egy szabályt, amelynek nyilvános portja 25565, célcíme 192.168.1.100 és célportja 25565. Cseréld ki a példa címet a szervered aktuális helyi címmel.
Tartsd meg az eredeti TCP szabályt a szokásos Minecraft kapcsolatokhoz. Egy TCP továbbítási szabály egyedül nem hordoz UDP-t.
Ellenőrizd, hogy más router vagy az ISP-d végzi-e NAT-ot a forgalom elérése előtt a routeredig. Ha két routert irányítasz, a továbbításnak mindkettőt kell lefednie. Ha az ISP-d hordozó-szintű NAT-ot használ, kérdezz meg, hogy biztosíthat-e nyilvános IPv4 címet, vagy használj hosting szolgáltatást vagy csatornát, amely támogatja a bemeneti UDP-t. A routered továbbítási szabálya nem konfigurálhatja az ISP-d NAT-ját. Lásd meg a TP-Link port forwarding útmutatót a nyilvános WAN cím követelménye miatt.
Engedélyezze a kiválasztott UDP portot a router IPv6 tűzfalán és a host tűzfalán is. Célként tűzze ki a RakNet kapcsolatokat elfogadó gép IPv6 címét.
Ellenőrizze, hogy a hostname IPv6 címe arra a gépre mutat. Ha az IPv6 címe megváltozik, frissítse a DNS rekordot és az adresához kapcsolódó tűzfal szabályokat.
Egy hostname, amely IPv4 és IPv6 címeket is publikál, minden hirdetett címhez működő útvonalat igényel. Ellenőrizze mindkét szabálykört, ha egy játékos csatlakozhat, de egy másik nem.
Ha az IPv4 továbbítás megváltoztatja a port számát, győződjön meg róla, hogy a játékosok által megadott port elérje az IPv6 hallgatót. Az IPv4 port transzláció nem konfigurálja az IPv6 útvonalat.
A szolgáltató vagy a tunnellapnak támogatnia kell a nyilvános végponton a UDP-t, amelyet a játékosoknak adsz. Ellenőrizd a port-eloszlásait és a hálózati tűzfal szabályait, valamint a szerver saját tűzfalát is.
Ha egy további UDP proxy továbbítja a kliens címeket PROXY protokoll v2 segítségével, kövesd a UDP továbbítás és PROXY protokoll-t, és korlátozd a beérkező UDP hallgatóját a megbízható proxy-re.
Csatlakozz a szerver helyi hálózataon kívül egy frissített Raknetify2 klienssel, olyan címet használva, mint raknet;play.example.com:25565. Használd ezt a címen a nyilvános UDP portot.
Használj valódi RakNet kapcsolatot a útvonal ellenőrzéséhez. Egy UDP szkennelés, amely nem kap választ, nem döntő eredményt jelenthet, mivel egy működő szolgáltatás elutasíthat egy ismeretlen próbatetést. Nmap UDP szkennelés dokumentációja elmagyarázza ezt a viselkedést.
Egy sikeres TCP kapcsolat csak a TCP útvonalát erősíti meg. Ha a RakNet időtúllépedés mengalami, ellenőrizd a hallgatót, a továbbítási célpontot, az UDP portot és a tűzfal szabályait a hibaelhárítási útmutató segítségével.
Ellenőrizze a letöltött konkrét kiadás kompatibilitását. A fejlesztői ág olyan támogatást tartalmazhat, amely még nem jelent meg egy kiadásban.
Minecraft és Java verziók · English
Raknetify2 által megjelölt Java követelménye a minimum. Minecraft vagy a betöltő újabb futási környezetet igényelhet. Válasszon olyan Java verziót, amely megfelel mindháromnak.
Amikor lehetséges, használjon ugyanazt a Raknetify2 kiadását a kliensön és a szerveren vagy a proxy-n, amely elfogadja a csatlakozását. Ellenőrizze a kiadási jegyzeteket a kiadások keverése előtt. Az enyhített RakNet kapcsolatok támogatást igényelnek az hitelesített enyhítési protokollat mind mindkét végén. Az eredeti Raknetify és Raknetify2 build-ek, amelyek ezt a protokollot megelőzően irodalmaztak, nem tudnak ilyen enyhített kapcsolatokat létrehozni frissített párokhoz.
Raknetify2 hordozza Minecraft meglévő játékprotokollját. Más Minecraft verziókhoz való csatlakozás kompatibilis protokollfordítási beállítási igényel.
Ha egy nagyobb modpack sikertelen, kövesse a hibaelhárítási útmutatót. Vegye figyelembe a teljes mod verziókat jelentésében.
Általában a Raknetify2 lehetővé teszi, hogy független csomagküldő csatornák folytatódjanak, miközben egy csatorna hiányzó adatot vár. A rendezett mód minden Minecraft csomagot egy csatornára helyez, így egy hiányzó csomag megállítja minden későbbi csomagot ebben az irányban, amíg újra küldés nem történik. Ez megőrzi azt az rendet, amit egyes anti-cheat szoftverek várnak, de feladja a Raknetify2 képességét, hogy a kapcsolódó játékforgalmat tovább haladjon a várakozás alatt.
-
Telepítsen be egy Raknetify2 buildet, amely támogatja az utasított módot a RakNet kapcsolatokat elfogadó szerveren vagy proxynál, és minden RakNet kliensnél.
-
Létrehozzon
config/raknetify2-compatibility.jsonfájlt a szerver vagy proxy működési könyvtárához viszonyítva. Létrehozsa aconfigkönyvtárat, ha nem létezik. -
Adja hozzá a következőket:
{"mode": "ordered"} -
Újraindítsa a szervert vagy a proxyt.
A kliensek automatikusan követik a szerver beállításait. A játékosoknak nem kell konfigurációs fájlt létrehozniuk vagy megváltoztatniuk a RakNet szerver címüket.
Minden Minecraft csomag egy megbízható, sorrendet követő csatornát használ minden irányban, beleértve a csomag-szélesítőket és a világváltásokat.
Ha a játékosok Velocity vagy BungeeCord-on keresztül csatlakoznak, állítsa be a sorrendet módját e proxy-n, még akkor is, ha az anti-cheat egy háttérszerveren fut.
A szabály minden háttérkapcsoláson érvényesül. A sorrendet módban a proxy továbbítja a háttér-tartóélő kéréseket a valódi klienshez, helyett hogy helyileg válaszolna rá.
Az első RakNet kapcsolatkor a konzol a következőket jelzi:
Raknetify2 compatibility: ordered (updated clients required, genuine acknowledgements)
Sikeres kompatibilitási csere után a ordered compatibility negotiated üzenet logolódik, amelyet a párt információs címe követ.
Érdemes bekapcsolni az anti-cheat ellenőrzéseket és ellenőrizni saját beállításaidat.
A RakNet kliensek, amelyek nem támogatják az utasított módot, nem tudnak csatlakozni egy ilyen módot igénylő szerverhez. Frissítsd a Raknetify2-t ezeken a klienseken, vagy csatlakozz a szerver vagy proxy normál TCP címére és portjára, anélkül, hogy a raknet; előfixet használnád.
Cservesse a fájlt:
{"mode": "multichannel"}Ezután indítsa újra a szervert vagy a proxyt. A fájl törlése is visszaállítja a multicanal módot újraindítás után.
A fájl pontosan egy mode nevű beállítást kell tartalmaznia, amelynek értéke vagy "ordered", vagy "multichannel" lehet. Az értékek érzékenyek a nagybetűkre.
Érvénytelen vagy olvasatlan konfiguráció elutasítja a RakNet kapcsolatokat. Javítsa a fájlt és indítsa újra a folyamatot.
Ha a konzol továbbra is multichannel-t jelent, ellenőrizze, hogy a fájl a RakNet kapcsolatot elfogadó szerver vagy proxy munkaterületében található-e, majd indítsa újra azt a folyamatot.
A Fabric, Forge és NeoForge szerverek kiválaszthatják a RakNet-et, amikor egy képes ügyfelet egy konfigurált célpontra viszik át. Ez használja Minecraft natív átviteli támogatását, amelyet a Java Edition 1.20.5 vezette be. Ellenőrizze, hogy a Raknetify2 verziója támogatja-e a Minecraft verziót és a betöltőt mindkét végén.
Telepítse be a Raknetify2-t küldő szerveren és ügyfélön. A célpontnak kompatibilis RakNet hallgatót kell biztosítania és elfogadnia a beérkező Minecraft átviteleket.
Ez a konfiguráció a fent említett három mod loader által küldött átvitelre vonatkozik. A Spigot/Paper, Velocity és BungeeCord pluginek nem olvasják ezt az átviteli fájlt.
Létrehozzon a config/raknetify2-transfers.json fájlt a küldő szerver könyvtárában:
{
"destinations": [
{
"host": "play.example.com",
"tcpPort": 25565,
"udpPort": 25570
}
]
}Cserélje ki az példa hostnévét és portjait a céljának értekeivel, majd indítsa újra a küldő szervert. További célpontok ugyanabba az array-be kerülnek.
| Szám | Szemantika |
|---|---|
host |
Célneév vagy IP-cím, transzport előfixus vagy port nélkül |
tcpPort |
Célport az eredeti átviteli kérésben |
udpPort |
Köznyilanos RakNet port, amire a továbbított kliensnek kell csatlakoznia |
A TCP és UDP port számai együttes lehetnek. Ha egy router fordítja a UDP portot, használja a köznyilanos portot ebben a fájlban. Írja a portokat JSON számokként.
Küldje át a továbbításokat a célordinál címének és TCP portjának általános címére. A Raknetify2 ellenőrzi, hogy a kliens igazolja-e az automatikus továbbítás támogatását. Egy képességes kliens és egy megfelelő cél esetén a konfigurált UDP portot választja. Más kliensek és nem megfelelő célok az eredeti továbbítás címét tartják meg.
A megfelelő használat a továbbítási kérésből származó hostnév és TCP portot használja. A hostnév nagybetűssége, egy végleges DNS pontja és az egyenértékű IPv6 írásmód normálizálása. A DNS keresések nem vesznek részt a megfelelősségben, így két különböző hostnév, amelyek ugyanarra a címre oldódnak, külön bejegyzéseket igényelnek. A joker bejegyzések nem támogatottak.
Ha egy cél Minecraft server.properties-t használ, állítsa be az accepts-transfers=true értéket és indítsa újra. Egy cél proxy saját továbbítási beállításait tartalmazhatja. Minecraft alapértelmezett értéke elutasítja a beérkező továbbításokat, még akkor is, ha normál közvetlen csatlakozás működik.
A cél RakNet figyelőpontja, a nyilvános UDP továbbítása és a host tűzfalának már be kell állítva. A küldő szerver továbbítási fájlja választja ki az a címet, amelyet a klienshez küld.
Ellenőrizze a cél IPv4 és IPv6 útvonalait, ha a hostnév mindkét cím típust publikál. Tesztelje egy egyszerű, közvetlen RakNet kapcsolatot a célhoz, mielőtt megvizsgálná az automatikus átvitel viselkedését.
Tartsa fenn a cél bejelentkezési vagy belépési ellenőrzéseket. Ez a konfiguráció nem biztosítja a játékosok hozzáférését és nem helyettesíti a szerver hitelesítését.
A hiányzó mezők, ismeretlen mezők, érvénytelen portok és a duplikat célok konfigurációs hibát okoznak a inicializáció során. Használja a szerver naplóját a hiba azonosításához, javítsa meg a JSON-t és indítsa újra.
Az automatikus kiválasztás kikapcsolásához törölje a konfigurációs fájlt, vagy használja {"destinations": []}-t, majd indítsa újra a küldő szervert. Átviteli kérései megőrzik eredeti címeket.
Egy UDP proxy továbbíthat RakNet forgalmat és megőrizheti az eredeti kliens címet a PROXY protokoll v2 használatával. Aktiválja ezt a funkciót, ha egy felső UDP proxy küldi ezeket a fejléceket a figyelőpontjához. A szokásos router port továbbításához nem szükséges.
A továbbított UDP forgalmat kapó szerveren vagy Minecraft proxy-n hozzon létre: config/raknetify2-proxy-protocol.json:
{
"trustedProxies": ["192.0.2.10"]
}Cserélje ki a példát a UDP proxy valódi forrás IP címével vagy egy általuk irányított CIDR tartományával. Az címnek megegyeznie kell azzal, amit a kapó figyelőpont lát bármilyen beavatkozó NAT után. Elfogadja az IPv4 és IPv6 literálok. Elutasítja a DNS hostnéveket. Indítsa újra a kapó szervert vagy proxy-t.
Konfigurálja a továbbító proxy-t, hogy küldjön PROXY protokoll v2 fejléceket UDP-hez. A Raknetify2 csak a felsorolt forrásoktól kapott kliens címeket fogad el. A közvetlen RakNet kapcsolatokat, amelyek nem tartalmaznak ezeket a fejléceket, elutasítja, ha ez a konfiguráció aktiválva van. A TCP figyelőpont megőrzi a meglévő konfigurációját.
A listán szereplő proxyk megadhatják a kliens címét. A háttérkiszolgáló tűzfalát úgy állítsa be, hogy az UDP-portját csak a kijelölt proxy érhesse el. A megbízható címtartományokat szűkítse a hálózat működéséhez szükséges méretre.
A fájl csak trustedProxies-t tartalmazhat, legalább egy bejegyzéssel. Üres tömb hiba. Egy érvénytelen fájl megakadályozza a RakNet meghallogató indítását.
A közvetlen UDP kapcsolatokhoz visszatéréshez törlésse a fájlt, és újraindítsa a meghallogatót. Frissítse az upstream továbbítási viselkedést és a tűzfal szabályait a új útvonalhoz egy időben.
Ha a kapcsolatok sikertelenek ehhez a funkció bekapcsolása után, ellenőrizze a proxy tényleges forrás címét a backend-en, a konfigurált bizalmú tartományt, és azt, hogy a proxy kibocsát-e UDP PROXY protokoll v2 fejléceket.
A Minecraft proxy telepítéséhez és a backend konfigurációjához kövesse a Velocity és BungeeCord útmutatót.
Raknetify2 megoszthatja szerverének UDP meghallgatóját a Simple Voice Chat-kel a Fabric-, Forge-, NeoForge-, Spigot- és Paper-platformokon.
Telepítse be a Simple Voice Chat-et a szerverre és minden olyan kliensre, amely hangsópédiát szeretne. Kövesse az összeállítási útmutatóját a konfiguráció többi lépéséhez.
Használja a szerver felső szintű config könyvtárát Raknetify2 fájlja számára, beleértve a Spigot/Paper esetében is. A Simple Voice Chat saját fájlja a platform-specifikus helyen marad.
-
Létrehozás a
config/raknetify2-voicechat.jsonfájl a szerver könyvtárában a következő tartalommal:{"enabled": true} -
A Simple Voice Chat szerverkonfigurációjában állítsa be a
port=-1-et. Modolt szervereken ez aconfig/voicechat/voicechat-server.propertiesfájl. Spigot/Paper esetén ez aplugins/voicechat/voicechat-server.properties. -
Üresen hagyja a
bind_address-et, ha van egy RakNet hallgató, ami illeszkedik. Ha a szerver több hallgatót futtat ezen a UDP porton, állítsa be a kívánt hallgató helyi címét. -
Indítsuk újra a szervert és futassuk a
/voicechat test <PLAYERNAME>-et egy csatlakoztatott lejátszóra.
Ha a RakNet meghallogatója más portot használ a Minecraft-nál, állítsa be a hang port-ját kifejezetten erre a helyi UDP portra, ne használja a -1-et. Például egy RakNet meghallogatója a helyi UDP porton 25570-en port=25570-t igényel.
Állítsa be a voice_host-ot, ha a kliensek más nyilvános címet vagy portot igényelnek. Egy router, amely a nyilvános UDP 25580-t helyi UDP 25570-re továbbít, használja port=25570 és voice_host=play.example.com:25580-t. A nyilvános cím a voice_host-ban található. A bind_address beállítás egy helyi meghallogatót választ.
A Raknetify2 biztosítja a megosztott UDP csatlakozást a Simple Voice Chat API-n keresztül. A Simple Voice Chat kezelésíti a hangos autentikációt és az encriptálást. A játékosok hangos chattet használhatnak TCP vagy RakNet játékbeli kapcsolatokon keresztül.
Tartsa a Query-t és a Geyser-et külön UDP portokon, a megosztott socket integráció csak a Simple Voice Chat-at támogatja.
Az integráció nem oszt meg hang-proxy soketot Velocity-n vagy BungeeCord-on. Kövesse a Simple Voice Chat proxy beállítási útmutatóját és adja a hang-proxy-nek saját UDP portot. Az hivatalos hang-proxy pluginnel állítsa be bármilyen nyilvános voice_host átírását a proxy hangkonfigurációjában. Ez a plugin figyelmen kívül hagyja a háttér szerverek voice_host beállításait.
Egy általános UDP tunnellához állítsa be a voice_host-ot a nyilvános hostname-re és UDP portra, amely továbbít ehhez a szerverhez.
Ha a napló jelent meg No RakNet listener matches the voice bind address and port, erősítse meg, hogy a RakNet sikeresen indult, és hogy a hangport és a kötési cím megegyezik a helyi figyelőjével.
Ha jelent meg Multiple RakNet listeners match the voice bind address, válasszon ki egy konkrét illeszkedő helyi címet a bind_address-ben, és indítsa újra.
Csak egy Simple Voice Chat plugin biztosíthat UDP csatlakozást. Ha a beindítás jelzi, hogy egy másik plugin már biztosít csatlakozást, válassza ki, melyik csatlakozási integrációt használja.
A Raknetify2 integráció kikapcsolásához állítsa be {"enabled": false}-t a hang konfigurációjában, vagy törlje ezt a fájlt. Adjon külön UDP portot a Simple Voice Chat-nek, frissítse a tűzfal vagy továbbítási szabályait, és újraindítsa a szervert.
Ellenőrizze ezeket a sorrendben:
- A kliens rendelkezik a megfelelő Raknetify2 moddel a loaderének és a Minecraft verziójának.
- A csatlakozást elfogadó szerver vagy proxy telepítve és futtatva van Raknetify2-vel, és nincs figyelő (listener) hiba.
- A cím
raknet;-el kezdődik és használja a nyilvános UDP portot. - A hosting szolgáltató, router és a host firewall mind engedi a UDP-t ezen a porton.
- A hostname IPv4 és IPv6 címei a kívánt hostra mutatnak, és működő firewall szabályai vannak.
Sikeres TCP kapcsolat csak a TCP útvonalat erősíti meg. Kérem, nézze át a Firewall és router konfigurációt a UDP továbbítás és IPv6 hozzáférés ellenőrzéséhez. Ha bekapcsolják a PROXY protokollot, a klienseknek egy konfigurált megbízható proxyon keresztül kell elérniük a meghallgatót.
Ellenőrizze, hogy más folyamat használja-e a UDP portot. A Query, Geyser és más UDP szolgáltatásoknak saját portjuk kell, hogy legyen. A Simple Voice Chat használhatja a shared-port integrációt.
Más helyi UDP portot választhat egy közvetlen szerver meghallgató beállítás segítségével vagy a Velocity és BungeeCord beállítás segítségével. Ellenőrizze a Spigot/Paper beállítás verziókövetelményét. Csak egy router nyilvános portjának megváltoztatása helyi soket konfliktust hagyja fenn.
Csatlakozzon közvetlenül a célhoz a raknet; címét használva. Ha ez nem sikerül, javítsa először a cél meghallgatóját vagy a hálózati útvonalat.
Ha a közvetlen csatlakozások működnek, ellenőrizze, hogy a cél elfogadja-e a beérkező átvételt. Egy server.properties-t használó Minecraft szervernek accepts-transfers=true beállításra van szüksége. A közvetlen csatlakozások nem tesztelik ezt a beállítást.
Ezután vesse össze az átirányításban szereplő gépnevet és TCP-portot a küldő kiszolgáló config/raknetify2-transfers.json fájljával. Ellenőrizze, hogy a fájl az újraindítás után betöltődött-e, és hogy a kliens támogatja-e az automatikus RakNet-átirányítást. Lásd az automatikus átirányításokról szóló útmutatót.
Ellenőrizze a Raknetify2 verziókat a kapcsolat mindkét végén. Frissítse a kliént és a szervert vagy proxyt együtt, amikor egy kiadás megváltoztatja az eltitkolt protokollot. Tartsa meg a szerver hitelesítési beállításait a vizsgálat során.
Jegyezze fel, melyik művelet okozza a hibát, például készlet megnyitása, erőforrás csomag fogadása, világok váltása vagy entitás generálása. Ha lehetséges, hasonlítsa össze ugyanazt a műveletet TCP és RakNet között külön teszt telepítéssel.
Néhány özel adatcsomag a vanilla csomagok sorrendjétől függ. A mod szerzők e függőségeket a csomagok sorrendi felületen deklarálhatják.
Nyissa meg egy hibát a Raknetify2 hibajelentőkönyvben és mellékelje:
- Minecraft, Java, loader és Raknetify2 verziók mindkét oldalon.
- Szerver- és proxy szoftver verziók, beleértve bármilyen UDP továbbító proxyt.
- Egyéb telepített modok és azok verzióinak száma.
- Lépések a probléma reprodukálására és az, amit várttál.
- Az, hogy ugyanaz a lépés működik-e TCP-n.
- Releváns kliens, szerver és proxy log kivonatok ugyanazon kísérletből.
Távolítsa el az hozzáférési tokeneket, jelszavakat és más magáninformációkat a logok feltöltése előtt. Megőrizze a kivételi üzeneteket és a stack trace-eket a probléma diagnosztizálásához szükségesek.
Raknetify2 lehetővé teszi a modok számára, hogy megjelöljék, mely Minecraft forgalomnak kell maradnia rendezett a saját adatösszegeikkel. Használja ezt, ha egy adatösszege kezelése egy entitást, chunkot, inventárt vagy más állapotot igényel, amelyet korábbi csomagok hoztak létre.
| Csoport | Kapcsolódó forgalom |
|---|---|
ui |
Világfüggetlen menük és interakciók |
entity |
Entitás generálása, eltávolítása és mozgása |
world_interaction |
Inventárok és más világhoz kötött interakciók |
effects |
Hangok és részecskék |
chunk |
Terület, blokk és világítási frissítések |
Minden csoport megőrzi a megbízható, sorrendet követő kézbesítést a csatornáján belül. A különböző csoportok közötti csomagok eltérő relatív sorrendben érkezhetnek. Válassza ki a payload függőségéhez megfelelő csoportot.
Adjon hozzá egy szolgáltatót a raknetify:packet_channels bemenetpont alatt a mod fájlban (fabric.mod.json). A szolgáltató a JDK típusokat használva implementálja a Consumer<BiConsumer<String, String>>-t. Egy regisztrátort kap, amely egy özel payload azonosítót és egy sorrendi csoportot fogad el.
Összeegleştirje ezt az egységet az aktuális metadátájával, helyettesítve a osztálynevet a szolgáltató teljes minősített nevével:
{
"entrypoints": {
"raknetify:packet_channels": [
"com.example.mod.OrderingProvider"
]
}
}Tartsa meg a fabric.mod.json többi részét, beleértve az aktuális bemeneti pontokat. Ez a metadátamáj egy részlete.
Például egy entitás mozgás bővítése regisztrálhatja a example:entity_path-et az entity csoporttal. Az Adatcsomag Rendelési API dokumentáció tartalmazza a szolgáltató implementációt.
A Fabric nem hívja el ezt az bemeneti pontot, ha hiányzik a Raknetify2. A szolgáltatóknek deklarálniuk kell azonosítókat és csoportokat az inicializálás során anélkül, hogy más mod befejezte volna saját inicializációját.
A Forge és NeoForge modok, valamint a szerver vagy proxy pluginek, inicializáció során, ha elérhető a Raknetify2, hívhatják meg a PacketOrdering.register(identifier, group)-ot. A osztály: com.ishland.raknetify.api.PacketOrdering. Regisztráljon a játékos csatlakozásának elfogadása előtt, és tartsa az opcionális integrációs kódot, amely a Raknetify2 osztályainak betöltését halogatja, ha az függőség hiányzik.
A deklarációk az új csatlakozásokra vonatkoznak. A meglévő csatlakozások megőrzik azokat a szabályokat, amelyeket beállításkor kaptak. Azonos deklaráció megismétlése engedélyezett. Konfliktusos csoportok ugyanazon az azonosítóhoz elutasítva.
A payload azonosítóknak érvényes, saját névtérnek kell használniuk. A minecraft névtér tartalékolt. A teljes végpont-szintű korlát 128 deklaráció, beleértve a beépített szabályokat és más modok regisztrációit. Azonosítóknak tartalmazhatnak akár 255 ASCII karaktert az API névtér-azonosító szintaxisát használva.
Az aktualizált RakNet párok cserezzek deklarációkat a csatlakozási beállítás során. Egy szerver vagy proxy használhatja egy párt deklarációját, ha nincs helyi szabálya az adott payloadra. A helyi szabályok előnyben részesülnek, és egy párt deklarációi csak az adott csatlakozásra korlátozódnak.
Lásd a UDP továbbítást és PROXY protokollot a UDP relák és továbbított kliens címekről.
A Minecraft proxy beállításához lásd a Velocity és BungeeCord.