Repository navigation
Wiki tt ru
- Баш бит
- Урнаштыру
- Velocity һәм BungeeCord
- Челтәр экранын һәм маршрутизаторны көйләү
- Туры килү
- Бер тәртипле канал режимы
- Автоматик күчерү
- UDP трафигын юнәлтү һәм PROXY протоколы
- Simple Voice Chat
- Хаталарны эзләү
- Модларны ялгау
- UDP проксилары
Minecraft клиентлары һәм серверлары өчен RakNet аша челтәр тоташуы.
| Minecraft | Raknetify2 | Клиент / Сервер |
|---|---|---|
| Fabric | mods/raknetify2-fabric-*.jar |
Клиент / Сервер |
| Forge | mods/raknetify2-forge-*.jar |
Клиент / Сервер |
| NeoForge | mods/raknetify2-neoforge-*.jar |
Клиент / Сервер |
| Spigot / Paper | plugins/raknetify2-spigot-*.jar |
Сервер |
| Velocity | plugins/raknetify2-velocity-*.jar |
Velocity |
| BungeeCord | plugins/raknetify2-bungee-*.jar |
BungeeCord |
-
Челтәр уены
-
Өстәү
-
Сервер адресы
Сервер адресы RakNet · UDP raknet;play.example.com:25565TCP play.example.com:25565 -
Булды
-
Тоташу
| F3 | |
|---|---|
| RakNet · UDP | Актив · MTU 1400 |
| TCP | Актив түгел |
- Клиент · Raknetify2 → UDP → Velocity / BungeeCord · Raknetify2
- Velocity / BungeeCord → TCP → Сервер
| Порт · 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 |
| Сервер адресы | UDP |
|---|---|
raknet;play.example.com:25580 |
play.example.com:25580 → NAT → 192.0.2.10:25570
|
Сервер · 192.0.2.10
|
25570/udp |
Сервер / Velocity / BungeeCord
| JSON | |
|---|---|
| ① ② ③ | {"mode":"ordered"} |
| ① ∥ ② ∥ ③ | {"mode":"multichannel"} |
| Сервер | 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
| Сервер адресы | trustedProxies |
RakNet |
|---|---|---|
192.0.2.10 · PROXY v2 / UDP |
["192.0.2.10"] |
✓ |
192.0.2.11 · PROXY v2 / UDP |
["192.0.2.10"] |
✗ |
| Клиент → RakNet / UDP | ["192.0.2.10"] |
✗ |
config/raknetify2-proxy-protocol.json
{"trustedProxies":["192.0.2.10"]}-
Сервер A · Fabric / Forge / NeoForge ·
config/raknetify2-transfers.json{"destinations":[{"host":"play.example.com","tcpPort":25565,"udpPort":25570}]} -
Сервер B ·
play.example.com·server.properties→accepts-transfers=true -
Сервер A ·
/transfer play.example.com 25565 Alex→ Клиент (Alex) → RakNet ·play.example.com:25570
| Minecraft | |
|---|---|
ui |
Көйләүләр |
entity |
Скелет |
world_interaction |
Инвентарь |
effects |
Кисәкчекләр |
chunk |
Блоклар |
- Fabric ·
compatibility.json·gameVersions/runtimes/depends - Forge / NeoForge / Spigot / Paper · GitHub Releases
Raknetify2 Minecraft челтәр уенында UDP аша RakNet куллана. Пакетлар берничә каналдан бара, һәр каналда үз тәртибе саклана. Берсендә пакет югалса, башка каналлардагы мәгълүмат агышы дәвам итә ала. Шуңа күрә югалган пакет яңадан җибәрелгәндә яки дөнья чанктары күчерелгәндә дә уен гамәлләренә тиз җавап кайтара ала.
Raknetify2 – ishland ясаган Raknetify нигезендә аерым эшләтелә торган тармак. Монда Minecraftның яңарак версияләре өстәлә, челтәр аша тапшыру, платформаларга ялгау һәм туры килү сынаулары алып барыла.
- Minecraft һәм модларның туры килүен тикшерегез.
- Файл сайлагыз һәм аны урнаштырыгыз.
- Мәсәлән,
raknet;play.example.comадресы буенча тоташыгыз.
- Velocity һәм BungeeCord
- Челтәр экранын һәм маршрутизаторны көйләү
- Автоматик күчерү
- UDP трафигын юнәлтү һәм PROXY протоколы
- UDP портын Simple Voice Chat белән уртак куллану
- Хаталарны эзләү һәм хәбәр итү
Мод авторлары пакетларның тәртибен билгеләү интерфейсы ярдәмендә үз мәгълүматларының кайсы Minecraft пакетларына бәйле булуын күрсәтә ала.
Raknetify2 MIT лицензиясе буенча таратыла. Баштагы авторлык хокукы белдерүләре саклана. Челтәр өлеше Raknetify һәм netty-raknet нигезендә эшләнгән.
Чыгарылышны GitHub Releases битеннән алыгыз. Урнаштырганчы шушы чыгарылышка нинди Minecraft версиясе һәм мод йөкләгеч кирәклеген тикшерегез.
| Кая урнаштырасыз | Файл | Папка |
|---|---|---|
| Fabric клиенты яки серверы | raknetify2-fabric-*.jar |
mods |
| Forge клиенты яки серверы | raknetify2-forge-*.jar |
mods |
| NeoForge клиенты яки серверы | raknetify2-neoforge-*.jar |
mods |
| Spigot яки Paper серверы | raknetify2-spigot-*.jar |
plugins |
| Velocity проксие | raknetify2-velocity-*.jar |
plugins |
| BungeeCord проксие | raknetify2-bungee-*.jar |
plugins |
JAR файлын алыштырганчы клиентны ябыгыз яки серверны туктатыгыз. Яңа файлны өстәгәнче шул ук урнаштырудан баштагы Raknetify JAR файлын һәм барлык иске Raknetify2 JAR файлларын алып ташлагыз.
Клиент өчен үзегез җибәрә торган Minecraft күчермәсенең яки модлар җыелмасының папкаларын кулланыгыз. Сервер һәм прокси өчен шул сервер яки прокси урнашкан папкаларны алыгыз. Йөкләгеч кирәкле папканы ясамаган булса, үзегез ясагыз.
- Йөкләгечегезгә туры килә торган клиент модын урнаштырыгыз.
- Серверга туры килгән модны яки ярашлы серверга Spigot/Paper плагинын урнаштырыгыз.
- Челтәр экранын һәм маршрутизаторны көйләү бүлеге буенча серверга UDP тоташуларына рөхсәт итегез.
- Клиентны һәм серверны яңадан эшләтеп җибәрегез.
- Мәсәлән,
raknet;play.example.comякиraknet;play.example.com:25565сервер адресын өстәгез.
raknet; префиксы булмаган адреслар TCP куллана.
Клиент модын гына урнаштыру ерактагы серверга RakNet мөмкинлеген өстәми. Сервер хуҗасы RakNet тоташуын кабул итә торган нокта ачарга тиеш. Чит серверга керүче уенчыларга үз маршрутизаторында керүче портларны юнәлтү гадәттә кирәкми.
Проксига туры килгән плагинны һәм клиентка модны урнаштырыгыз. Тыңлау көйләүләре, эчке серверларга юнәлтү, керүне чикләү һәм уенчыларга бирелә торган адрес турында Velocity һәм BungeeCord бүлеген карагыз.
Туры Minecraft серверы өчен түбәндәге тиешле Java аргументын күрсәтегез. Прокси куллансагыз, Velocity һәм BungeeCord тыңлау көйләүләрен карагыз.
| Платформа | Java аргументы | Рөхсәт ителгән портлар |
|---|---|---|
| Fabric, Forge яки NeoForge серверы | -Draknetify.fabric.portOverride=25570 |
1 дән 65534 кә кадәр |
| Spigot яки Paper серверы | -Draknetify.spigot.portOverride=25570 |
1 дән 65535 кә кадәр |
Forge һәм NeoForge бер үк тыңлау кодын куллана. Шуңа күрә аларда да параметр исемендә fabric бар. 25570 урынына кирәкле UDP портын языгыз.
Spigot / Paper ≥ 0.1.0-beta.1.431
Аргументны Java командасында -jar алдыннан яки хостингтагы JVM аргументлары кырына өстәгез. Серверны яңадан җибәрегез, сайланган портта UDP рөхсәт итегез. Тышкы порт та 25570 булса, raknet;play.example.com:25570 аша тоташыгыз. Маршрутизатор портны үзгәртсә, клиент адресына тышкы портны языгыз. TCP порты шулай кала.
Spigot/Paper серверында UDP тыңлаучысы Minecraft TCP тыңлаучысының җирле адресын ала. Яраксыз кыйммәт яки буш булмаган UDP порты RakNetны җибәрергә ирек бирми. Башлау журналында UDP адресын һәм портын тикшерегез. TCP тыңлаучысы портын кире куллану өчен аргументны бетереп, серверны яңадан җибәрегез.
Маршрутизатор яки UDP проксие башка тышкы UDP портын ачып, трафикны хәзерге тыңлаучыга юнәлтә ала. Моның өчен серверның Java аргументларын үзгәртәсе юк.
GitHub Actions битендә main өчен уңышлы төгәлләнгән эшне ачыгыз һәм Artifacts архивын йөкләп алыгыз. Моның өчен GitHub хисап язмасы кирәк. Архивтан JAR сайлау өчен югарыдагы таблицаны карагыз.
Velocity һәм BungeeCord уенчылар белән эчке Minecraft серверлары арасында тора. Raknetify2не проксига һәм RakNet аша тоташачак һәр клиентка урнаштырыгыз.
Raknetify2 клиенты --UDP--> Velocity яки BungeeCord --TCP--> эчке сервер
Бу юл өчен эчке серверларга Raknetify2 кирәкми. Аларга челтәрегез таләп иткән модлар, плагиннар һәм мәгълүматны проксидан кабул итү мөмкинлеге кирәк. Raknetify2 төрле Minecraft версияләре арасында тәрҗемә итми һәм проксиның хисап язмаларын тикшерүен үзгәртми.
- Прокси аша гадәти TCP тоташуы, хисап язмасын тикшерү һәм эчке серверлар арасында күчү эшләгәнен тикшерегез.
- Проксины туктатыгыз һәм туры килгән плагинны GitHub Releases битеннән алыгыз.
-
raknetify2-velocity-*-all.jarякиraknetify2-bungee-*-all.jarфайлын проксиныңpluginsпапкасына салыгыз. Андагы иске Raknetify яки Raknetify2 плагиннарын алып ташлагыз. - Урнаштыру күрсәтмәсе буенча тиешле Raknetify2 клиент модын куегыз.
- Түбәндәге тыңлау көйләүләрен тикшерегез, проксины яңадан җибәрегез һәм журналдан RakNet тыңлаучысы хаталарын карагыз.
- Проксига тыштан UDP рөхсәт итегез, эчке серверларның уен портларына керүне челтәр экраны һәм маршрутизатор күрсәтмәсе буенча чикләгез.
Клиентта һәм проксида туры килә торган Raknetify2 чыгарылышларын кулланыгыз. Төрлеләрен катнаштырганчы туры килүне тикшерегез.
velocity.toml файлындагы bind Velocity өчен Minecraft тыңлау адресын һәм TCP портын сайлый. Raknetify2 гадәттә UDP өчен дә шул ук порт санын ала. [servers] язмаларында эчке серверларның TCP адресларын калдырыгыз. Velocity көйләүләренең тасвирламасын карагыз.
UDP өчен аерым порт кирәк булса, Velocity башлау командасында -jar алдыннан шушы JVM аргументын өстәгез:
-Draknetify.velocity.portOverride=25570
25570 урынына үз портыгызны языгыз. Бу RakNet UDP портын үзгәртә, Velocity TCP порты һәм эчке сервер адреслары шул килеш кала. Аргументны үзгәрткәч, Velocityне яңадан җибәрегез.
Уенчы мәгълүматын тапшыруны Velocityдә дә, эчке серверларда да көйләгез. Эчке сервер программасы аңлый икән, заманча тапшыру ысулын кулланыгыз һәм аның яшерен ачкычын таратмагыз. Velocity уенчы мәгълүматын тапшыру күрсәтмәсендә серверыгызга тиешле адымнарны карагыз. Эчке серверның челтәр экраны чикләүләрен дә саклагыз.
BungeeCord программасының config.yml файлында һәр listeners язмасының host кыйммәте Minecraft тыңлау адресын һәм TCP портын билгели. Raknetify2 гадәттә шул ук сан белән UDP өсти. servers язмаларында эчке серверларның TCP адреслары тора. BungeeCord көйләүләрен карагыз.
Аерым UDP порты өчен BungeeCord башлау командасында -jar алдыннан шушы JVM аргументын өстәгез:
-Draknetify.bungee.portOverride=25570
Көйләү бөтен прокси процессына карый. Minecraftны берничә тыңлаучы кабул итсә, челтәр экранында кагыйдә өстәгәнче, башлау журналында RakNet кайда тыңлавын тикшерегез. Аргументны үзгәрткәч, BungeeCordны яңадан җибәрегез.
Проксида хисап язмаларын тикшерүне саклагыз. Spigot өчен BungeeCord IP тапшыру күрсәтмәсе проксида ip_forward: true, эчке серверда settings.bungeecord: true куярга куша. Тапшыру үзе генә эчке серверга туры керүгә комачауламый. Челтәр экраны күрсәтмәсе буенча керүне чикләгез.
Ике проксиның да бу көйләве 1 дән 65534 кә кадәр портларны кабул итә. Яраксыз сан исәпкә алынмый, шуңа башлау журналында чын UDP портын тикшерегез. Minecraft тыңлаучысы портына кайту өчен аргументны бетерегез һәм проксины яңадан җибәрегез.
Уенчылар проксиның тышкы исеменә һәм UDP портына тоташа, мәсәлән raknet;play.example.com:25570. Маршрутизатор портларны үзгәртсә, клиент адресында тышкы UDP портын кулланыгыз. raknet; префиксыннан башка адрес проксиның TCP тыңлаучысына бара.
Query, Geyser һәм башка UDP хезмәтләрен аерым UDP портларында калдырыгыз. Башка TCP портын сайлау UDP сокеты бәрелешен бетерми.
Velocity һәм BungeeCord өчен Simple Voice Chat үз прокси плагинын һәм UDP портын куллана. Voice Chat прокси күрсәтмәсен карагыз.
Minecraft проксие алдында аерым UDP ретрансляторы торса һәм ул PROXY protocol v2 башлыкларын җибәрсә, Raknetify2не UDP юнәлтү һәм PROXY протоколы буенча көйләгез. Velocity яки BungeeCord урнаштыру гына моны таләп итми.
Җирле челтәрдән читтәге Raknetify2 клиенты белән сынагыз. Прокси аша керегез, үз эчке серверларыгыз арасында күчегез, уенчының таныклыгы һәм хокуклары дөрес саклануын тикшерегез.
- Прокси аша TCP эшләсә, ләкин RakNet җавап көтү вакытын уздырса, проксиның UDP тыңлаучысын, тышкы портны, IPv4 һәм IPv6 юлларын, челтәр экраны кагыйдәләрен тикшерегез.
- Прокси эчке серверга тоташканда ике транспорт та эшләмәсә, шул серверның TCP адресын, керү кагыйдәләрен һәм уенчы мәгълүматын тапшыру көйләүләрен тикшерегез.
- Прокси UDP порты буш түгел дисә, аны Query, Geyser, тавыш проксие яки башка процесс кулланмавын тикшерегез.
Хәбәргә бер үк тоташу омтылышы өчен прокси һәм эчке сервер журналларын өстәгез. Кайсы версияләрне күрсәтергә икәнен хаталарны эзләү бүлегеннән карагыз.
Бу күрсәтмә сервер хуҗалары өчен. RakNet тоташуын кабул итүче серверга яки проксига UDP юлы эшләргә тиеш. Гадәттә Minecraft TCP тыңлаучысы белән бер үк порт саны кулланыла.
Бер үк җирле челтәрдәге уенчылар серверның җирле адресын куллансын. Сервер машинасының челтәр экранында UDP рөхсәт итегез. Интернет трафигы маршрутизаторның IPv4 NAT аша үтсә, анда порт юнәлтү таләп ителә.
Тышкы UDP трафигын Raknetify2 белән Minecraft серверы эшләгән машинага җибәрегез. Һәммә пакет шул серверның RakNet UDP тыңлаучысы портына килсен. Машинаның челтәр экранында ул портны ачыгыз. Гадәти Minecraft тоташулары өчен булган TCP юлын саклагыз.
Мәсәлән, Raknetify2 UDP 25570 портын тыңласа, тышкы UDP портын серверның җирле адресына һәм 25570 портына юнәлтегез. TCP порты 25565 булып кала ала. Башка UDP портын сайлау өчен туры сервер тыңлаучысы көйләүләрен карагыз.
Тышкы UDP трафигын Raknetify2 прокси плагины белән Velocity яки BungeeCord эшләгән машинага җибәрегез. Юнәлтү максаты итеп проксиның RakNet UDP тыңлаучысын сайлагыз. Гадәти Minecraft тоташулары өчен проксиның булган тышкы TCP юлын саклагыз.
Прокси эчке Minecraft серверларына TCP аша тоташа. Raknetify2не проксига өстәгәч, эчке серверларның уен UDP портларын уенчыларга ачу кирәкми.
| Тоташу | Нинди керү рөхсәт ителә |
|---|---|
| Уенчылардан проксига | RakNet тыңлаучысына тышкы UDP һәм булган тышкы TCP тыңлаучысы |
| Проксидан эчке серверларга | Эчке Minecraft серверларының TCP портларына билгеләнгән прокси машиналарыннан гына кереп булсын |
| Уенчылардан туры эчке уен портларына | Ябык калдырыгыз, IPv6 аша да |
Прокси һәм эчке серверлар үзегез идарә иткән бер машинада турыдан-туры эшләсә, эчке тыңлаучылар өчен кире элемтә адресларын куллана аласыз. Проксины шул адресларга тоташтырыгыз. Төрле машиналарда челтәр экраны яки аерылган шәхси челтәр ярдәмендә эчке TCP портларына прокси машиналарыннан гына керергә рөхсәт итегез. Контейнерлар һәм хостинг өчен дә челтәрләренә туры килгән шундый ук чикләүләр кирәк. Velocity сервер иминлеге күрсәтмәсен һәм BungeeCord челтәр экраны күрсәтмәсен карагыз.
Уенчы мәгълүматын тапшыру челтәр экраны чикләүләре белән бергә эшли. Эчке серверга туры керүче проксиның керү тикшерүләрен узып китә ала. Плагин, тапшыру көйләүләре һәм UDP портын алыштыру турында Velocity һәм BungeeCord бүлеген карагыз.
Маршрутизатор порт санын үзгәртсә, тышкы порт һәм тыңлау порты төрле була ала:
| Көйләү | Кулланыла торган порт |
|---|---|
| Клиентка языла торган сервер адресы | Тышкы UDP порты |
| Маршрутизатор юнәлтү кагыйдәсенең тышкы порты | Тышкы UDP порты |
| Маршрутизатор юнәлтү кагыйдәсенең эчке порты | RakNet тыңлаучысының UDP порты |
| Машина челтәр экранының җирле порты | RakNet тыңлаучысының UDP порты |
IPv4 маршрутизаторы артында сервер тотсагыз:
- RakNet кабул иткән машинаның җирле IPv4 адресын табыгыз. Кагыйдә шул машинага юнәлтүен дәвам итсен өчен DHCPда адресны беркетегез яки яраклы даими адрес куегыз.
- Уенчылар кулланачак тышкы порт өчен UDP юнәлтү кагыйдәсе өстәгез.
- Максат итеп машинаның җирле адресын һәм RakNet тыңлаучысының UDP портын куегыз.
- Машинаның челтәр экранында тыңлау портына керүче UDPга рөхсәт итегез.
Мәсәлән, сервер UDP 25565 портын тыңлый икән, тышкы порт 25565, максат адресы 192.168.1.100, максат порты 25565 була ала. Мисалдагы адрес урынына серверыгызның чын җирле адресын языгыз.
Гадәти Minecraft тоташулары өчен булган TCP кагыйдәсен калдырыгыз. TCP юнәлтү кагыйдәсе генә UDP трафигын үткәрми.
Трафик үз маршрутизаторыгызга килгәнче башка маршрутизатор яки провайдер NAT кулланмыймы икәнен тикшерегез. Ике маршрутизатор да сезнеке булса, икесендә дә портны юнәлтегез. Провайдер уртак NAT (CGNAT) кулланса, тышкы IPv4 адресын сорагыз яки керүче UDPны үткәрүче хостинг яисә туннель кулланыгыз. Үз маршрутизаторыгыз кагыйдәсе провайдер NATын үзгәртми. Тышкы WAN адресы таләбе турында TP-Link күрсәтмәсен карагыз.
Сайланган UDP портын маршрутизаторның IPv6 экранында да, машинаның челтәр экранында да ачыгыз. Максат итеп RakNet кабул иткән машинаның IPv6 адресын күрсәтегез.
Узел исеменең IPv6 адресы шул машинага күрсәтсен. IPv6 адресы үзгәрсә, DNS язмасын һәм иске адреска бәйле челтәр экраны кагыйдәләрен яңартыгыз.
Исем IPv4 һәм IPv6 адресларын икесен дә белдерсә, һәр адрес өчен юл эшләргә тиеш. Бер уенчы керә алып, икенчесе керә алмаса, ике гаилә кагыйдәләрен дә тикшерегез.
IPv4 юнәлтүе порт санын үзгәртсә, уенчы керткән портның IPv6 тыңлаучысына да барып җитүен тикшерегез. IPv4 портын үзгәртү IPv6 юлын көйләми.
Уенчыларга бирелгән тышкы адрес һәм портта провайдер яки туннель UDP үткәрергә тиеш. Серверның үз челтәр экраныннан тыш, провайдер биргән портларны һәм аның челтәр экраны кагыйдәләрен тикшерегез.
Өстәмә UDP проксие PROXY protocol v2 аша клиент адресларын җибәрсә, UDP юнәлтү һәм PROXY протоколы бүлеген карагыз. Кабул итүче UDP тыңлаучысына ышанычлы прокси гына керә алсын.
Серверның җирле челтәреннән читтә яңартылган Raknetify2 клиенты белән, мәсәлән, raknet;play.example.com:25565 адресына тоташыгыз. Бу адреста тышкы UDP портын кулланыгыз.
Юлны чын RakNet тоташуы белән сынагыз. UDP сканында җавап булмау төгәл нәтиҗә бирми: эшли торган хезмәт тә таныш булмаган сынау пакетын ташлый ала. Nmap UDP сканын тасвирлау бүлеген карагыз.
TCP аша уңышлы керү TCP юлын гына раслый. RakNet вакытында җавап бирмәсә, хаталарны эзләү күрсәтмәсе буенча тыңлаучыны, юнәлтү максатын, UDP портын һәм челтәр экраны кагыйдәләрен тикшерегез.
Нәкъ йөкләп алган чыгарылышның нәрсә белән эшләвен тикшерегез. Эшләү тармагында әле чыгарылышка кермәгән мөмкинлекләр булырга мөмкин.
Fabric өчен compatibility.json файлын JAR белән бер үк чыгарылыштан алыгыз. Minecraft версиясен gameVersions эчендә, ә аңа тиешле runtimes язмасының таләпләрен depends эчендә тикшерегез. Бу JSON белешмә өчен генә, аны mods папкасына саласы юк.
Forge, NeoForge һәм Spigot/Paper өчен файлның үзендә һәм йөкләү битендә күрсәтелгән версия таләпләрен тикшерегез. Бер йөкләгечтә эшләү икенчесендә дә эшләячәк дигән сүз түгел.
Raknetify2 Javaның иң түбән яраклы версиясен күрсәтә. Minecraft яки йөкләгеч яңарак Java таләп итә ала. Өч таләпкә дә туры килүче версия сайлагыз.
Мөмкин булса, клиентка һәм тоташуны кабул итүче сервер яки проксига бер үк Raknetify2 чыгарылышын куегыз. Төрлеләрен кушканчы чыгарылыш язмаларын укыгыз. Шифрланган RakNet тоташуы өчен ике як та асыллыкны тикшерүче шифрлау протоколын аңларга тиеш. Баштагы Raknetify һәм ул протоколга кадәр чыккан Raknetify2 җыелмалары яңартылган каршы як белән мондый шифрланган тоташу булдыра алмый.
Raknetify2 Minecraftның үз уен протоколын тапшыра. Төрле Minecraft версияләрен тоташтыру өчен туры килгән протокол тәрҗемәчесе кирәк.
Җыю процессы Polymer, Krypton, PacketFixer һәм Fast IP Ping белән эшләүне тикшерә. Бу сынаулар анда сайланган версияләргә һәм кушылмаларга гына карый. Аерым кушылманы тикшергәндә, үз чыгарылышыгызның җыю нәтиҗәләрен карагыз.
Зур модлар җыелмасында хата чыкса, хаталарны эзләү күрсәтмәсен карагыз. Хәбәрдә модларның тулы версияләрен языгыз.
Гадәттә бер канал югалган пакетны көткәндә, башкалары пакет җибәрүен дәвам итә. Бер тәртипле канал режимында Minecraftның бөтен пакетлары бер каналдан бара. Пакет югалса, ул яңадан китерелгәнче шул юнәлештәге барлык соңрак пакетлар тоткарлана. Кайбер читларга каршы программалар шушы тәртипне көтә. Көтү вакытында бәйсез уен трафигы да туктап тора.
-
RakNet тоташуларын кабул иткән сервер яки проксига һәм һәр RakNet клиентына бу режимны аңлаучы Raknetify2 җыелмасын куегыз.
-
Шул серверның яки проксиның эш папкасында
config/raknetify2-compatibility.jsonфайлын ясагыз.configпапкасы булмаса, аны да ясагыз. -
Моны өстәгез:
{"mode": "ordered"} -
Серверны яки проксины яңадан җибәрегез.
Клиентлар сервер көйләвен автоматик кабул итә. Уенчыга көйләү файлы ясарга яки RakNet сервер адресын үзгәртергә кирәкми.
Һәр юнәлештә барлык Minecraft пакетлары бер ышанычлы тәртипле каналдан бара. Пакет төркемнәре чикләре һәм дөнья алмаштыру хәбәрләре дә шуннан үтә.
Уенчылар Velocity яки BungeeCord аша тоташса, читларга каршы программа эчке серверда эшләсә дә, режимны проксида көйләгез.
Кагыйдә эчке серверны алыштырганда да саклана. Бу режимда прокси эчке серверның элемтәне тикшерү сорауларын чын клиентка тапшыра, аларга үзе җавап бирми.
Беренче RakNet тоташуында консоль болай яза:
Raknetify2 compatibility: ordered (updated clients required, genuine acknowledgements)
Режим турында уңышлы килешкәч, журналга ordered compatibility negotiated һәм аннан соң каршы як адресы языла.
Читларга каршы тикшерүләрне кабызган килеш калдырыгыз һәм үз көйләүләрегезне сынагыз.
Бу режимны аңламаган RakNet клиенты аны таләп иткән серверга тоташа алмый. Клиентларда Raknetify2не яңартыгыз яки серверның я проксиның гадәти TCP адресына һәм портына raknet; префиксыннан башка керегез.
Файл эчтәлеген болай үзгәртегез:
{"mode": "multichannel"}Аннары серверны яки проксины яңадан җибәрегез. Файлны бетереп яңадан җибәрү дә күп каналлы режимны кайтара.
Файлда mode исемле бер генә көйләү булырга тиеш. Кыйммәте "ordered" яки "multichannel". Зур һәм кечкенә хәрефләр аерыла.
Көйләү яраксыз яки укылмый икән, RakNet тоташулары кире кагыла. Файлны төзәтеп, процессны яңадан җибәрегез.
Консоль һаман multichannel дип язса, файлның нәкъ RakNet кабул иткән сервер яки проксиның эш папкасында булуын тикшерегез. Шул процессны яңадан җибәрегез.
Fabric, Forge һәм NeoForge серверлары мөмкинлеге булган клиентны көйләнгән максатка күчергәндә RakNet сайлый ала. Бу Java Edition 1.20.5 белән Minecraftның үзенә өстәлгән күчерүне куллана. Ике яктагы Minecraft версиясе һәм йөкләгеч чыгарылышыгызга туры килсен.
Җибәрүче серверга һәм клиентка Raknetify2не куегыз. Максатта ярашлы RakNet тыңлаучысы булырга һәм ул Minecraft күчерүләрен кабул итәргә тиеш.
Бу көйләү өстәге өч мод йөкләгече аша җибәрелгән күчерүләргә карый. Spigot/Paper, Velocity һәм BungeeCord плагиннары бу күчерү файлын укымый.
Җибәрүче сервер папкасында config/raknetify2-transfers.json файлын ясагыз:
{
"destinations": [
{
"host": "play.example.com",
"tcpPort": 25565,
"udpPort": 25570
}
]
}Мисалдагы узел исемен һәм портларны үз максатыгызныкына алыштырып, җибәрүче серверны яңадан җибәрегез. Башка максатларны шул ук массивка өстәгез.
| Кыр | Мәгънәсе |
|---|---|
host |
Барасы узел исеме яки IP адресы, транспорт префиксыннан һәм порттан башка |
tcpPort |
Баштагы күчерү соравындагы максат порты |
udpPort |
Күчерелгән клиент тоташырга тиешле тышкы RakNet порты |
TCP һәм UDP порт саннары бертөрле була ала. Маршрутизатор UDP портын үзгәртсә, файлга тышкы портны кертегез. Портларны JSON саны итеп языгыз.
Күчерүне максатның гадәти узел исеменә һәм TCP портына җибәрегез. Raknetify2 клиентның автоматик күчерүне аңлавын белдергәнме икәнен тикшерә. Клиент аңласа һәм максат язмага туры килсә, көйләнгән UDP порты сайлана. Башка клиентлар һәм туры килмәгән максатлар баштагы адресны саклый.
Ярашу күчерү соравындагы узел исеме һәм TCP порты буенча тикшерелә. Хәреф зурлыгы, DNS исеменең соңгы ноктасы һәм тиңдәш IPv6 язылышлары бер рәвешкә китерелә. DNS аша эзләү юк: бер адреска күрсәтсә дә, ике төрле исемгә аерым язмалар кирәк. Калып билгеләре кабул ителми.
Максат Minecraftның server.properties файлын кулланса, accepts-transfers=true куеп, аны яңадан җибәрегез. Кабул итүче проксиның үз күчерү көйләве булырга мөмкин. Minecraft гадәттә керүче күчерүләрне, туры керү эшләсә дә, кире кага.
Максатта RakNet тыңлаучысы, тышкы UDP юнәлтүе һәм машина челтәр экраны алдан көйләнгән булсын. Җибәрүче серверның күчерү файлы клиентка тапшырыла торган адресны сайлый.
Максат исеме ике төр адресны да белдерсә, IPv4 һәм IPv6 юлларын икесен дә тикшерегез. Автоматик күчерүне тикшергәнче, максатка RakNet аша туры тоташып карагыз.
Максатның керү һәм рөхсәт тикшерүләрен саклагыз. Бу көйләү уенчыларга керү хокукын бирми һәм серверның шәхесне раславын алыштырмый.
Кыр җитмәсә, билгесез кыр, яраксыз порт яки кабатланган максат булса, башланганда көйләү хатасы чыга. Сервер журналыннан хатаны табыгыз, JSONны төзәтегез һәм яңадан җибәрегез.
Автоматик сайлауны сүндерү өчен көйләү файлын бетерегез яки {"destinations": []} языгыз һәм җибәрүче серверны яңадан эшләтегез. Аның күчерү сорауларында баштагы адреслар калачак.
UDP проксие RakNet трафигын күчереп, PROXY protocol v2 белән клиентның баштагы адресын саклый ала. Бу мөмкинлекне алдагы UDP проксие тыңлаучыгызга шул башлыкларны җибәрсә кабызыгыз. Гадәти маршрутизатор порт юнәлтүенә бу кирәкми.
Юнәлтелгән UDP трафигын кабул итүче серверда яки Minecraft проксиендә config/raknetify2-proxy-protocol.json ясагыз:
{
"trustedProxies": ["192.0.2.10"]
}Мисал урынына UDP проксиенең чын чыганак IP адресын яки үзегез идарә иткән CIDR диапазонын кертегез. Арадагы NATлардан соң тыңлаучы күргән адрес туры килергә тиеш. IPv4 һәм IPv6 санлы адреслары кабул ителә, DNS исемнәре кире кагыла. Кабул итүче серверны яки проксины яңадан җибәрегез.
Юнәлтүче проксидан UDP өчен PROXY protocol v2 башлыкларын җибәрүне көйләгез. Raknetify2 тапшырылган клиент адресларын исемлектәге чыганаклардан гына ала. Бу көйләү кабызылганда, ул башлыкларсыз туры RakNet тоташулары кире кагыла. TCP тыңлаучысының көйләве саклана.
Исемлектәге һәр проксига клиент адресын күрсәтү ышанып тапшырыла. Эчке серверның челтәр экранында UDP портына билгеләнгән проксидан гына кереп булсын. Ышанычлы адрес диапазоннарын челтәрегездә мөмкин кадәр тар итеп куегыз.
Файлда кимендә бер язмасы булган trustedProxies гына булырга тиеш. Буш массив хата санала. Яраксыз файл RakNet тыңлаучысын эшләтми.
Туры UDP тоташуларына кайту өчен файлны бетерегез һәм тыңлаучыны яңадан җибәрегез. Шул ук вакытта алдагы юнәлтү җайланмасын һәм челтәр экраны кагыйдәләрен яңа юлга көйләгез.
Бу мөмкинлекне кабызгач тоташып булмаса, эчке серверга килеп күренгән прокси адресын, ышанычлы диапазонны һәм проксиның UDP өчен PROXY protocol v2 башлыклары җибәрүен тикшерегез.
Minecraft проксиен урнаштыру һәм эчке серверларны көйләү турында Velocity һәм BungeeCord бүлеген карагыз.
Fabric, Forge, NeoForge, Spigot һәм Paper серверларында Raknetify2 үз UDP тыңлаучысын Simple Voice Chat белән уртаклаша ала.
Simple Voice Chatны серверга һәм тавыш чатында катнашучы һәр клиентка куегыз. Башка көйләүләрне аның сервер күрсәтмәсеннән карагыз.
Raknetify2 файлын серверның төп config папкасына куегыз, Spigot/Paper өчен дә шулай. Simple Voice Chatның үз файлы түбәндә платформа өчен күрсәтелгән урында кала.
-
Сервер папкасында
config/raknetify2-voicechat.jsonфайлын ясап, эченә болай языгыз:{"enabled": true} -
Simple Voice Chat сервер көйләүләрендә
port=-1куегыз. Модлы серверда буconfig/voicechat/voicechat-server.properties, Spigot/Paperдаplugins/voicechat/voicechat-server.properties. -
Бер генә RakNet тыңлаучысы туры килсә,
bind_addressкырын буш калдырыгыз. Бер UDP портында берничә тыңлаучы булса, уртак кулланасы тыңлаучының җирле адресын языгыз. -
Серверны яңадан җибәрегез. Тоташкан уенчы өчен
/voicechat test <PLAYERNAME>командасын үтәгез.
RakNet тыңлау порты Minecraftныкыннан аерылса, тавышның port көйләвендә -1 урынына җирле UDP портын ачыктан-ачык языгыз. Мәсәлән, җирле UDP 25570 өчен port=25570 кирәк.
Клиентка башка тышкы адрес яки порт кирәк булса, voice_host куегыз. Маршрутизатор тышкы UDP 25580 портын җирле UDP 25570 портына җибәрсә, port=25570 һәм voice_host=play.example.com:25580 куегыз. Тышкы адрес voice_host кырына керә. bind_address җирле тыңлаучыны сайлый.
Raknetify2 уртак UDP сокетын Simple Voice Chat API аша бирә. Тавыш бәйләнешендә шәхесне тикшерүне һәм шифрлауны Simple Voice Chat башкара. Тавышлы чат уен TCP аша да, RakNet аша да барганда эшли.
Query һәм Geyser өчен аерым UDP портлары калдырыгыз. Сокетны уртак куллану Simple Voice Chat өчен генә эшли.
Velocity яки BungeeCord тавыш проксиенең сокеты уртак кулланылмый. Simple Voice Chat прокси күрсәтмәсе буенча тавыш проксиенә аерым UDP порты бирегез. Рәсми тавыш проксие плагины белән тышкы voice_hostны проксиның тавыш көйләүләрендә билгеләгез. Плагин эчке серверларның voice_host көйләвен исәпкә алмый.
Гадәти UDP туннеле өчен voice_host итеп бу серверга юнәлтелгән тышкы узел исемен һәм UDP портын языгыз.
Журналда No RakNet listener matches the voice bind address and port чыкса, RakNet уңышлы эшли башлаганын, тавыш порты һәм бәйләү адресы аның җирле тыңлаучысына туры килүен тикшерегез.
Multiple RakNet listeners match the voice bind address чыкса, bind_address кырында туры килгән бер җирле адресны сайлап, серверны яңадан җибәрегез.
Simple Voice Chatка UDP сокетын бер генә плагин бирә ала. Башлаганда башка плагинның сокет бирүе күрсәтелсә, кайсысын кулланасыгызны сайлагыз.
Уртак куллануны сүндерү өчен Raknetify2 тавыш көйләүләренә {"enabled": false} языгыз яки шул файлны бетерегез. Simple Voice Chatка аерым UDP порты бирегез, челтәр экраны яки юнәлтү кагыйдәләрен яңартыгыз һәм серверны яңадан җибәрегез.
Шушы тәртиптә тикшерегез:
- Клиентта йөкләгечкә һәм Minecraft версиясенә туры килгән Raknetify2 моды бар.
- Тоташуны кабул итүче серверга яки проксига Raknetify2 куелган, һәм ул тыңлаучы хатасыннан башка эшли башлаган.
- Адрес
raknet;белән башлана һәм тышкы UDP портын куллана. - Хостинг, маршрутизатор һәм машина челтәр экраны бу портта UDP үткәрә.
- Узел исеменең IPv4 һәм IPv6 адреслары кирәкле машинага алып бара, икесендә дә челтәр экраны кагыйдәләре эшли.
TCP аша уңышлы керү TCP юлын гына раслый. Челтәр экраны һәм маршрутизатор бүлеге буенча UDP юнәлтүен һәм IPv6 аша керүне тикшерегез. PROXY протоколы кабызылганда клиент көйләнгән ышанычлы прокси аша гына тыңлаучыга барып җитәргә тиеш.
UDP портын башка процесс кулланмавын тикшерегез. Query, Geyser һәм башка UDP хезмәтләренә үз портлары кирәк. Simple Voice Chat уртак порт куллана ала.
Туры сервер тыңлаучысы көйләүләрендә яки Velocity һәм BungeeCord көйләүләрендә башка җирле UDP портын сайлап була. Spigot/Paper өчен версия таләбен тикшерегез. Маршрутизаторда тышкы портны гына алыштыру җирле сокетны бушатмый.
Максатка аның raknet; адресыннан туры тоташып карагыз. Булмаса, башта максат тыңлаучысын яки челтәр юлын төзәтегез.
Туры тоташу эшләсә, максатның керүче күчерүләрне кабул итүен тикшерегез. server.properties кулланган Minecraft серверына accepts-transfers=true кирәк. Туры керү моны сынамый.
Аннары күчерүдәге узел исемен һәм TCP портын җибәрүче серверның config/raknetify2-transfers.json файлы белән чагыштырыгыз. Яңадан җибәргәч файл укылганын һәм клиент автоматик RakNet күчерүләрен аңлаганын тикшерегез. Автоматик күчерү бүлеген карагыз.
Ике яктагы Raknetify2 версияләрен тикшерегез. Чыгарылыш шифрланган протоколны үзгәртсә, клиентны һәм сервер яки проксины бергә яңартыгыз. Тикшергәндә серверның шәхесне раслау көйләүләрен саклагыз.
Нәрсәдән соң хата чыкканын языгыз: инвентарьны ачкандамы, ресурслар җыелмасын алгандамы, дөньяны алыштыргандамы яки җисем пәйда булгандамы. Мөмкин булса, аерым сынау күчермәсендә шул ук гамәлне TCP һәм RakNet аша чагыштырыгыз.
Модның кайбер пакетлары гади Minecraft пакетларының тәртибенә бәйле. Мод авторлары бу бәйлелекләрне пакетларның тәртибен билгеләү интерфейсы аша күрсәтә ала.
Raknetify2 хаталары исемлегендә яңа хәбәр ачып, шуларны өстәгез:
- Ике яктагы Minecraft, Java, йөкләгеч һәм Raknetify2 версияләре.
- Сервер һәм прокси программалары версияләре, шул исәптән UDP юнәлтүче проксиныкы.
- Башка урнаштырылган модлар һәм аларның версияләре.
- Хатаны кабатлау адымнары һәм нинди нәтиҗә көтүегез.
- Шул ук адымнар TCP аша эшлиме.
- Бер үк омтылыштан клиент, сервер һәм прокси журналларының тиешле өзекләре.
Журналларны йөкләгәнче керү токеннарын, серсүзләрне һәм башка шәхси мәгълүматны бетерегез. Хатаның сәбәбен табу өчен кирәкле искәрмә хәбәрләрен һәм чакыру стегын саклагыз.
Мод Raknetify2гә үз мәгълүматы белән бер тәртиптә барырга тиешле Minecraft пакетларын күрсәтә ала. Мәгълүматны эшкәртүгә алдагы пакет китергән җисем, чанк, инвентарь яки башка халәт кирәк булганда кулланыгыз.
| Төркем | Бәйле трафик |
|---|---|
ui |
Дөньяга бәйсез менюлар һәм гамәлләр |
entity |
Җисемнәрнең пәйда булуы, югалуы һәм хәрәкәте |
world_interaction |
Инвентарьлар һәм дөньяга бәйле башка гамәлләр |
effects |
Тавышлар һәм кисәкчекләр |
chunk |
Җир өслеге, блоклар һәм яктырту яңарулары |
Һәр төркемнең үз каналында ышанычлы, тәртипле китерү саклана. Төрле төркемнәрнең пакетлары бер-берсенә карата башка тәртиптә килә ала. Мәгълүматыгыз бәйле булган төркемне сайлагыз.
Модның fabric.mod.json файлындагы raknetify:packet_channels керү ноктасына тәэмин итүче өстәгез. Ул JDK типлары белән Consumer<BiConsumer<String, String>> интерфейсын гамәлгә ашыра. Аңа үз мәгълүмат идентификаторын һәм тәртип төркемен кабул итүче теркәгеч бирелә.
Бу язманы булган метамәгълүматка өстәгез. Класс исеме урынына үз тәэмин итүчегезнең пакет белән бергә тулы класс исемен языгыз:
{
"entrypoints": {
"raknetify:packet_channels": [
"com.example.mod.OrderingProvider"
]
}
}fabric.mod.json файлының башка өлешләрен һәм керү нокталарын саклагыз. Мисал метамәгълүмат файлының бер өлешен генә күрсәтә.
Мәсәлән, җисем хәрәкәтен тулыландыручы мод example:entity_path идентификаторын entity төркеменә терки ала. Тәэмин итүченең гамәлгә ашырылышы PacketOrdering API тасвирламасында бар.
Raknetify2 юк икән, Fabric бу керү ноктасын чакырмый. Тәэмин итүчеләр идентификаторларны һәм төркемнәрне башланганда игълан итсен, башка мод эшли башлап беткәндер дип уйламасын.
Raknetify2 булганда Forge һәм NeoForge модлары, сервер яки прокси плагиннары башланганда PacketOrdering.register(identifier, group) чакыра ала. Класс – com.ishland.raknetify.api.PacketOrdering. Уенчы тоташуларын кабул иткәнче теркәгез. Raknetify2 куелмаган чакта өстәмә ялгау коды аның классларын йөкләмәсен.
Игъланнар яңа тоташуларга карый. Булган тоташулар ачылганда алган кагыйдәләрен саклый. Шул ук игъланны кабатларга мөмкин. Бер идентификатор өчен бер-берсенә каршы килгән төркемнәр кире кагыла.
Мәгълүмат идентификаторы яраклы махсус исемнәр киңлеген кулланырга тиеш. minecraft киңлеге сакланган. Бер ноктада урнаштырылган кагыйдәләрне һәм башка модлар язмаларын да кертеп, барлыгы 128 игълан була ала. Идентификатор APIның исемнәр киңлеге синтаксисы буенча 255 ASCII билгесенә кадәр була ала.
Яңартылган RakNet яклары тоташканда игъланнарны алмаша. Сервер яки прокси өчен шушы мәгълүматка җирле кагыйдә булмаса, каршы як игъланын куллана ала. Җирле кагыйдәләр өстенрәк, каршы як игъланнары шушы тоташуда гына гамәлдә.
UDP ретрансляторлары һәм тапшырылган клиент адреслары турында UDP трафигын юнәлтү һәм PROXY протоколы бүлеген карагыз.
Minecraft проксиен көйләү өчен Velocity һәм BungeeCord бүлеген карагыз.