Repository navigation
Wiki mk mk
- Почетна
- Инсталација
- Velocity и BungeeCord
- Конфигурација на фајрвол и рутер
- Компатибилност
- Нареден режим
- Автоматско пренесување
- UDP проследување и PROXY протокол
- Simple Voice Chat
- Решавање проблеми
- Мод интеграција
- UDP прокси
Мрежни врски преку RakNet за клиенти и сервери на Minecraft.
| 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 · Minecraft / Java · English
- Forge / NeoForge / Spigot / Paper · GitHub Releases
За играње Minecraft со повеќе играчи, Raknetify2 го користи протоколот RakNet преку UDP. Сообраќајот се дели на канали и секој канал го задржува редоследот на своите пакети. Ако се изгуби пакет на еден канал, податоците на другите канали можат да продолжат да пристигнуваат. Така играта може да реагира на вашите постапки додека повторно се испраќаат изгубените податоци или се пренесуваат делови од светот.
Raknetify2 е независно одржуван fork на Raknetify, оригинално развиен од ishland. Fork-от додава поддршка за понови верзии на 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
Додадете го аргументот пред -jar во Java командата, или во полето за JVM аргументи на вашиот хост. Рестартирајте го серверот и овозможете UDP на избраниот порт за слушање. Ако јавното порт е исто така 25570, поврзете се со raknet;play.example.com:25570. Ако рутер го преведува портот, користете го неговиот јавен порт во адресата на клиентот. TCP портот останува на неговата постоечка вредност.
На Spigot/Paper, UDP слушателот го задржува локалниот адресен врзан адреса на Minecraft TCP слушателот. Неважечка преовластување или зафатен UDP порт спречува RakNet да започне. Проверете го логот на покренување за да ја видите врзаната UDP адреса и порт. Отстранете го аргументот и рестартирајте за да се вратите на бројот на портот на TCP слушателот.
Рутер или UDP прокси може да изложи и различен јавен UDP порт и да го пренасочи кон постоечкиот слушател без да менува ги Java аргументите на серверот.
Отворете успешен main изврш на GitHub Actions и преземете го неговиот архив на 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 на клиентот и прокситот. Проверете го Компатибилитетот пред да мешате изданија.
Поделката bind во velocity.toml го избира адресот на слушање на Minecraft и TCP портот на Velocity. Raknetify2 обично користи истиот број на портови за UDP. Елементите [servers] го идентификуваат бекендте сервери. Одржувајте овие елементи насочени кон бекендските TCP адреси. Видете го референцата за конфигурација на Velocity.
За да користите одвоен UDP порт, додадете го овој JVM аргумент пред -jar во командата за покренување на Velocity:
-Draknetify.velocity.portOverride=25570
Заменете го 25570 со избраниот порт. Ова го менува RakNet UDP портот додека го задржува Velocity-тот TCP порт и бекендските адреси. Рестартирајте го Velocity по промена на аргументот.
Конфигурирај пренасочување на играчите и на Velocity и на неговите бекенди. Користи модерно пренасочување кога бекенд софтверот го поддржува, и држи го неговото пренасочување тајно. Следи ги упатствата специфични за бекендот во velocity's player information forwarding guide. Одржувај ги ограничувањата на фaйрвол на бекендот заедно со пренасочувањето.
Во config.yml на BungeeCord, вредноста host под секој запис listeners идентификува адреса за слушање на Minecraft и TCP порт. Raknetify2 обично додава UDP на тој број на портови. Записите servers содржат бекенд TCP адреси. Овие поставки се опишани во BungeeCord configuration guide.
За посебен UDP порт, додај го овој JVM аргумент пред -jar во стартувачката команда на BungeeCord:
-Draknetify.bungee.portOverride=25570
Преовластувањето припаѓа на целиот процес на прокси. За конфигурација со повеќе слушатели на Minecraft, провери ги вистинските RakNet крајни точки во стартувачкиот лог пред да додадеш правила на фaйрвол. Рестартирај го BungeeCord по промена на аргументот.
Зачувај ја автентикацијата на сметката на прокситот. За Spigot бекенди, BungeeCord-от guide за 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 сокет.
Simple Voice Chat користи свој прокси плагин и UDP порта на Velocity i BungeeCord. Следете го водичот за прокси за glas chat за тоа поставување.
Ако посебен UDP релеи стои пред вашиот Minecraft прокси и испраќа PROXY протокол v2 наглавја, конфигурирајте Raknetify2 користејќи UDP проследување и PROXY протокол. Инсталирањето на Velocity или BungeeCord само по себе не бара тоа конфигурација.
Тестирај од надвор од вашата локална мрежа со Raknetify2 клиент. Приклучи се преку проксиот, префрли помеѓу бекенд серверите што ги користите и потврди дека идентитетот на играчот и оPermissions остануваат верни.
- Ако TCP преку проксито функционира, но RakNet тајмаутира, проверете го UDP слушарот на проксито, јавниот порт, IPv4 и IPv6 рутите и правилата на фајрвол.
- Ако памеѓу двата преносоци неуспешно функционираат кога проксито се поврзува со бекенд, проверете го TCP адресот на бекендот, правилата за пристап и конфигурацијата за пренасочување на играчите.
- Ако проксито известува за зафатен UDP порт, проверете дали има Query, Geyser, гласов прокси или друг процес поврзан за него.
За известувања, вклучете ги логата на проксито и на бекендот од истата обид за поврзување. Видете Решавање проблеми за информации за верзијата што треба да ги вклучите.
Овој водич е за оператори на сервери. Raknetify2 бара работечка UDP рута кон серверот или прокси-от кој прифаќа RakNet врски. Стандардната поставка користи истиот број на порта како TCP слушател на Minecraft.
За играчи на иста локална мрежа, користете ја локалната адреса на серверот и дозволете UDP низ неговиот хост фајрвол. Пренасочување на портови на рутерот е потребно кога интернет сообраќајот мора да премине низ IPv4 NAT на вашиот рутер.
Испраќајте ја јавниот UDP сообраќај кон машината што ја работи Minecraft со Raknetify2. Дестинацискиот порт е RakNet UDP слушател на тој сервер. Дозволете го тојот порт во хост фајрволот на серверската машина. Зачувајте го неговиот постоечки TCP рут за обични Minecraft врски.
На пример, ако Raknetify2 слуша на UDP 25570, пренасочете го јавниот UDP порт кон локалната адреса на серверот на порт 25570. TCP портот на серверот може да остане на 25565. Видете подесувања на слушател на директен сервер за да изберете друг UDP порт.
Испраќај ја јавниот UDP трафик кон машината што го работи Velocity или BungeeCord со Raknetify2 проксиот плагин. Користете го RakNet UDP слушателот на проксиот како дестинација за пренасочување. Зачувајте го постоечкиот јавен TCP пат на проксиот за обични Minecraft врски.
Проксиот се поврзува со бекенд Minecraft сервери преку TCP. Додавањето на Raknetify2 на проксиот не бара отворање на бекенд UDP портови за играчи.
| Врска | Дозвола за пристап |
|---|---|
| Играчи до проксиот | Јавно UDP до RakNet слушател, плус постоечки јавен TCP слушател |
| Прокси до бекенд сервери | TCP-портите на внатрешните Minecraft сервери, достапни само од предвидените прокси-сервери |
| Играчи директно до портовите за игра на бекендот | Овој пристап нека остане блокиран, вклучително и преку IPv6. |
Кога проксиот и бекендовите работат директно на посветена машина што ја контролирате, слушателите на бекендот можат да користат адреси на лупбек со проксиот конфигуриран да ги достигне таму. Преку различни машини, ограничете го TCP пристапот до бекендот кон хостите на проксиот користејќи ѕид на огнен ѕид или изолирана приватна мрежа. Контејнерите и управуваните хостови треба да имаат еквивалентни ограничувања за нивниот мрежен распоред. Видете Velocity's backend security guide и BungeeCord's firewall guide.
Форвардингот на играчите и ограничувањата на огнен ѕид работат заедно. Директниот пристап до бекендот може да ги заобиколи проверките на најавување на проксиот. За инсталација на плагини, поставки за форвардинг и препишување на UDP портови, следете Velocity and BungeeCord.
Јавна портата и портата на слушателот можат да се разликуваат кога рутер го преведува меѓу нив:
| Подесување | Порта за користење |
|---|---|
| Адреса на серверот на клиентот | Јавна UDP порта |
| Внатрешен порт на правилото за проследување на рутерот | Јавна UDP порта |
| Внатрешен порт на правилото за проследување на рутерот | UDP порт на слушателот на RakNet |
| Локален порт на ѕидот на фајрвол-от | UDP порт на слушателот на RakNet |
За хостинг зад IPv4 рутер:
- Најдете ја локалната IPv4 адреса на машината што прифаќа RakNet врски. Користете DHCP резервација или соодветна статичка адреса за да продолжи правилото за проследување да таргетира таа машина.
- Додадете UDP правило за проследување за јавниот порт што ќе го користат играчите.
- Поставете ја дестинацијата на правилото на локалната адреса на таа машина и UDP порт на слушателот на RakNet.
- Дозволете влезен UDP на портот на слушателот во хост фајрвол.
На пример, сервер кој слуша на UDP порт 25565 може да користи правило со јавен порт 25565, адреса на дестинација 192.168.1.100 и порт на дестинација 25565. Заменете ја примерната адреса со вистинската локална адреса на вашиот сервер.
Зачувајте го постоечкиот TCP проход за обични Minecraft поврзувања. Само едно правило за проследување на TCP не носи UDP.
Проверете дали некој друг рутер или вашиот ISP врши NAT пред да стигне сообраќајот до вашиот рутер. Со два рутера што ги контролирате, проследувањето мора да ги покрие и двата. Ако вашиот ISP користи carrier-grade NAT, прашајте дали може да обезбеди јавен IPv4 адреса или користете услуга за хостинг или тунел што поддржува влезна UDP. Правилото за проследување на вашиот рутер не може да го конфигурира NAT на ISP-от. Видете TP-Link's port forwarding guidance за барање на јавна WAN адреса.
Дозволете го избраниот UDP порт низ и IPv6 факлот на рутериот и факлот на хостот. Целете го IPv6 адресот на машината што прифаќа RakNet врски.
Проверете дали 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 сканирање што не добива одговор може да извештаи нерешитебен резултат бидејќи работечката услуга може да го отфрли неознатот пробен сигнал. Документација за UDP сканирање на Nmap објаснува ова однесување.
Успешна TCP поврзаност потврдува само го TCP патот. Ако RakNet изврши тајмаут, проверете го слушателот, дестинацијата на пренасочување, UDP портот и правилата на фајрвол користејќи го приговорот за решавање проблеми.
Провери компатибилност за конкретната верзија што ја преземаш. Развојната гранка може да содржи поддршка што сè уште не се појавила во некоја верзија.
Верзии на Minecraft и Java · English
Java барањето на Raknetify2 е неговиот минимум. Minecraft или лоадерот може да бара понова средина за извршување. Изберете верзија на Java што ги задоволува сите три.
Користете иста Raknetify2 изданија на клиентот и серверот или проксиот што го прифаќа неговото поврзување кога е можно. Проверете ги белешките за изданија пред да мешате изданија. Шифрираните RakNet врски бараат поддршка за протоколот за автентицирано шифрирање на двата краја. Оригиналните Raknetify и Raknetify2 изградби пред да биде воведена тој протокол не можат да направат овие шифрирани поврзувања кон ажурирани партери.
Raknetify2 носи го постоечкиот протокол на игра на Minecraft. Поврзувањето на различни верзии на Minecraft бара компатибилен поставувач на преведување на протоколот.
За неуспех во поголем модпак, следете го приработните водич. Вклучете ги комплетните верзии на модовите во вашиот извештај.
Нормално, Raknetify2 дозволува независни канали на пакети да продолжиат додека еден канал чека за недостасувачки податоци. Наредениот режим ги става сите Minecraft пакети на еден канал, така што недостасувачкиот пакет го зачувува секој подоцнешен пакет во тој насока додека не биде ретранслиран. Ова го зачувува редот што го очекуваат некои анти-чит софтверски програми, но ја одрекува способноста на Raknetify2 да ги задржи неповрзаните игри трафик во тоа чекање.
-
Инсталирајте Raknetify2 изградба што ги поддржува редотскиот режим на серверот или проксиот што прифаќа RakNet врски и на секој RakNet клиент.
-
Создадете
config/raknetify2-compatibility.jsonрелативно на работната директорија на тој сервер или прокси. Создадете го директориумотconfigако не постои. -
Додадете следново:
{"mode": "ordered"} -
Рестартирајте го серверот или проксиот.
Клиентите автоматски го следат поставувањето на серверот. Играчите не треба да креираат конфигурациски фајл или да сменуваат ја адресата на RakNet серверот.
Сите Minecraft пакети користат еден надежден упореден канал во секој насока, вклучувајќи ги и делитeрите на пакети и преминот на светот.
Кога играчите се поврзуваат преку 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 при пренесување на способна клиент до конфигурирано место. Ова користи нативната поддршка за пренесување на Minecraft, воведена во Java Edition 1.20.5. Проверете дали вашата Raknetify2 верзија поддржува ја верзијата на 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 пребарувањата не учествуваат во совпаѓањето, така што два различни хостнеми кои се решаваат на иста адреса потребни се одделни записи. Директните записи не се поддржани.
За дестинација што користи server.properties на Minecraft, поставете accepts-transfers=true и рестартирајте ја. Дестинацискиот прокси може да има сопствено поставување за префрлување. Дефолтната на Minecraft го одбива пристигнувањето на преноси, дури и кога нормалното директно приклучување функционира.
RakNet слушателот на дестинацијата, јавното UDP пренасочување и хост факлот му мора веќе да бидат конфигурирани. Файлот за преноси на испраќачкиот сервер го избира адресата испратена кон клиентот.
Проверете ги и IPv4 и IPv6 рутите на дестинацијата кога нејзиното хост име ги објавува двата типови адреси. Тестирајте обично директно RakNet поврзување до дестинацијата пред да истражувате го однесувањето на автоматското префрлување.
Зачувајте ги сите проверки на најавување или прифаќање на дестинацијата. Оваа конфигурација не им дава пристап на играчите ниту ги заменува автентикацијата на серверот.
Недостапни полиња, непознати полиња, неважечки портови и дуплицирани дестинации предизвикуваат грешка во конфигурацијата за време на иницијализација. Користете го логот на серверот за да го идентификувате грешката, поправете го JSON-от и рестартирајте.
За да го исклучите автоматското избор, отстранете го конфигурацискиот фајл или користете {"destinations": []}, потоа рестартирајте го испраќачкиот сервер. Неговите барања за префрлување ќе ги задржат нивните оригинални адреси.
UDP прокси може да проследи RakNet трафик и да го запази оригиналниот адреса на клиентот користејќи PROXY протокол v2. Овозможи оваа функција кога горниот UDP прокси ги испраќа овие нагласенија до вашиот слушател. Обичното проследување на портот на рутерот не го бара.
На серверот или Minecraft проксиот кој го прима проследениот UDP трафик, креирајте config/raknetify2-proxy-protocol.json:
{
"trustedProxies": ["192.0.2.10"]
}Заменете го примерот со вистинскиот IP адреса на UDP проксиот или CIDR опсег што го контролирате. Адресата мора да одговара на она што го гледа примачот по било каква меѓувремена NAT. Прифатени се IPv4 и IPv6 литерали. DNS хостнама кои се одбиваат. Рестартирајте го примачкиот сервер или прокси.
Конфигурирајте го проксиот за проследување да испраќа PROXY протокол v2 нагласенија за UDP. Raknetify2 прифаќа адреси на клиенти проследени само од наведените извори. Директните RakNet врски без овие нагласенија се одбиваат додека оваа конфигурација е овозможена. TCP слушателот го задржува своето постоечко конфигурирање.
Секој прокси-сервер на списокот може да ја пријави адресата на клиентот. На заштитниот ѕид на внатрешниот сервер дозволете пристап до неговата UDP-порта само од предвидениот прокси-сервер. Меѓу доверливите адреси вклучете ги само најтесните потребни опсези.
Датотеката мора да содржи само trustedProxies, со најмалку еден запис. Празната масив е грешка. Неважечката датотека спречува навивната на RakNet слушателот да започне.
За да се вратите на директни UDP врски, отстранете го фајлот и рестартирајте го слушателот. Ажурирајте го однесувањето на податокот нагоре и правилата на фајрвол за новиот пат истовремено.
Ако врските не успеат по овозможување на оваа функција, проверете го вистинскиот извор на адреса на проксиот на бекендот, конфигурираниот доверлив опсег и дали проксиот испушта UDP PROXY протокол v2 наглавјата.
За Minecraft Инсталација на прокси и конфигурација на позадина, следете Velocity и BungeeCord.
Raknetify2 може да го сподели својот UDP слушател на серверот со Simple Voice Chat на Fabric, Forge, NeoForge, Spigot и Paper.
Инсталирајте го Simple Voice Chat на серверот и на секој клиент кој сака гласовна комуникација. Следете го неговиот прирачник за поставување на серверот за остатокот од неговата конфигурација.
Користете го горното ниво на директориумот config на серверот за да го ставите фајлот на Raknetify2, вклучувајќи и на Spigot/Paper. Собствениот фајл на Simple Voice Chat останува на платформа-специфичното место подолу.
-
Создадете
config/raknetify2-voicechat.jsonво директориумот на серверот со овој содржина:{"enabled": true} -
Поставете
port=-1во конфигурацијата на серверот на Simple Voice Chat. На модифицирани сервери, ова еconfig/voicechat/voicechat-server.properties. На Spigot/Paper, еplugins/voicechat/voicechat-server.properties. -
Оставете
bind_addressпразен кога има еден RakNet слушател. Ако серверот има повеќе слушатели на тој UDP порт, поставете го на локалната адреса на слушателот што сакате да го споделите. -
Рестартирајте го серверот и извршете
/voicechat test <PLAYERNAME>за поврзан играч.
Ако RakNet слушателот користи друг порт од Minecraft, ја поставувајте port за гласната комуникација на тој локален UDP порт експлицитно наместо да го користите -1. На пример, RakNet слушател на локален UDP порт 25570 бара port=25570.
Поставете voice_host кога клиентите требаат друг јавен адреса или порт. За рутер кој пренасочува јавен UDP 25580 на локален UDP 25570, користете port=25570 и voice_host=play.example.com:25580. Јавната адреса припаѓа во voice_host. Подесецот bind_address го избира локалниот слушател.
Raknetify2 обезбедува го споделената UDP сокет преку API на Simple Voice Chat. Simple Voice Chat ги обработува аутентикацијата и криптирањето на гласот. Играчите можат да користат гласна комуникација со било кои TCP или RakNet игриски врски.
Држете ги Keep 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 порт, ажурирајте ги неговите правила за брандмауол или проследување, и рестартирајте го серверот.
Проверете ги овие во ред:
- Клиентот го има вистинскиот Raknetify2 мод за неговото вчитување и Minecraft Верзија.
- Серверот или проксито што ја прифаќа врската има инсталирано Raknetify2 и е стартувано без грешка на слушачот.
- Адресата започнува со
raknet;и го користи јавниот порт UDP. - Хостинг провајдерот, рутерот и огнениот ѕид на домаќинот сите дозволуваат UDP на тој порт.
- IPv4 и IPv6 адресите на името на домаќинот водат до наменетиот домаќин и имаат работни правила на огнениот ѕид.
Успешната врска TCP ја потврдува само рутата TCP. Следете ја Конфигурација на огнен ѕид и насочувачName за да го проверите пренасочувањето UDP и пристапот IPv6. Ако е овозможен протоколот PROXY, клиентите мора да стигнат до слушачот преку конфигуриран доверлив прокси.
Проверете дали друг процес го користи портот UDP. За Query, Geyser и другите UDP сервиси им требаат свои порти. Simple Voice Chat може да го користи Интеграција на споделен порт.
Можете да изберете друг локален UDP порт со користење на Поставувања на слушачот на директен сервер или Поставувања за Velocity и BungeeCord. Проверете го барањето за верзија за поставувањето Spigot/ Paper. Со менување само на јавниот порт на насочувачот, конфликтот на локалниот сокет останува на местото.
Поврзи се директно со дестинацијата користејќи ја нејзината raknet; адреса. Ако тоа не успее, прво поправете го дестинациониот слушач или мрежната рута.
Ако работат директните поврзувања, проверете дали дестинацијата ги прифаќа влезните трансфери. На серверот Minecraft што користи server.properties му треба accepts-transfers=true. Директните поврзувања не ја тестираат оваа поставеност.
Потоа споредете го името на компјутерот за пренос и портата TCP со config/raknetify2-transfers.json на серверот за испраќање. Потврдете дека датотеката е вчитана по рестартирањето и дека клиентот поддржува автоматски преноси RakNet. Видете Автоматски трансфери.
Проверете ги верзиите на Raknetify2 на двата краја на врската. Ажурирајте го клиентот и серверот или проксито заедно кога ќе се промени криптираниот протокол. Зачувувајте ги поставувањата за автентикација на серверот додека истражувате.
Запишете која акција предизвикува неуспех, како што е отворање на инвентар, добивање на пакет со ресурси, менување на светови или создавање на ентитет. Споредете ја истата акција преку TCP и RakNet користејќи одделна тест инсталација кога е практично.
Некои сопствени корисни товари зависат од редоследот на пакетите. Авторите на модификациите можат да ги декларираат овие зависности преку Интерфејс за наредување на пакети.
Отворете проблем во Пратеч на проблеми на Raknetify2 и вклучете:
- Minecraft, Java, loader, и Raknetify2 верзии на двата краја.
- Сервер и прокси верзии на софтверот, вклучувајќи го и било кој UDP forwarding proxy.
- Други инсталирани модови и нивните верзии.
- Чекорите за да се репродуцира проблемот и она што го очекувавте да се случи.
- Дали истите чекори работат и на TCP.
- Релевантни клиенти, сервери и прокси дневни извадоци од истиот обид.
Пред да ги прикачите дневниците, отстранете ги токените за пристап, лозинките и другите приватни податоци. Зачувајте ги пораките за исклучоци и трагите од повици што се потребни за откривање на проблемот.
Raknetify2 им дозволува на модовите да декларираат кој сообраќај на Minecraft мора да остане подреден со нивните сопствени корисни товари. Користете го ова кога ракувањето со корисни товари бара ентитет, парче, инвентар или друга состојба воспоставена од претходните пакети.
| Група | Сроден сообраќај |
|---|---|
ui |
Независни менија и интеракции |
entity |
Спојување, отстранување и движење на ентитетите |
world_interaction |
Инвентарот и другите интеракции зависни од светот |
effects |
Звуци и честички |
chunk |
Ажурирање на теренот, блоковите и осветлувањето |
Сите групи задржуваат сигурна наредена испорака во рамките на нивниот канал. Пакетите во различните групи може да пристигнат во различен релативен редослед. Изберете ја групата што одговара на зависноста на товарот.
Додај провајдер под влезната точка raknetify:packet_channels во fabric.mod.json на твојата модификација. Провајдерот имплементира Consumer<BiConsumer<String, String>> користејќи типови JDK. Добива регистар кој прифаќа сопствен идентификатор на корисен товар и група за наредување.
Спојете го овој внес во вашите постоечки метаподатоци, заменувајќи го името на класата со целосното име на вашиот провајдер:
{
"entrypoints": {
"raknetify:packet_channels": [
"com.example.mod.OrderingProvider"
]
}
}Зачувај го остатокот од твојот fabric.mod.json, вклучувајќи ги и постоечките влезни точки. Ова е дел од метаподаточната датотека.
На пример, проширувањето за движење на ентитетот може да се регистрира example:entity_path со entity Групата. Документација за PacketOrdering API ја вклучува имплементацијата на провајдерот.
Fabric ја остава оваа влезна точка непрогласена кога Raknetify2 е отсутен. Провајдерите треба да ги декларираат идентификаторите и групите за време на иницијализацијата без да се потпираат на друг мод кој го завршил своето иницијализирање.
Модовите Forge и NeoForge, и приклучоците за сервер или прокси, можат да го повикаат PacketOrdering.register(identifier, group) за време на иницијализацијата кога е достапен Raknetify2. Класата е com.ishland.raknetify.api.PacketOrdering. Регистрирај се пред да прифатиш поврзувања на плеерот, и чувај го опционалниот код за интеграција од вчитување на Raknetify2 класите кога зависноста е отсутна.
Декларациите се применуваат на новите поврзувања. Постоечките поврзувања ги задржуваат правилата што ги добиле при поставувањето. Дозволено е повторување на идентична декларација. Групите во конфликт за истиот идентификатор се отфрлаат.
Идентификаторите на корисниот товар мора да користат валиден сопствен именски простор. Именскиот простор minecraft е резервиран. Ограничувањето на крајната точка е 128 декларациите, вклучувајќи ги и вградените правила и регистрациите од други модови. Идентификаторот може да содржи до 255 ASCII знаци користејќи ја синтаксата на идентификаторот на именскиот простор на API.
Актуелизирани декларации за размена на RakNet партнери за време на поставувањето на поврзувањето. Серверот или проксито може да користи декларација на партнер кога нема локално правило за тоа корисно внесување. Локалните правила имаат приоритет, а декларациите на партнерот остануваат во рамките на таа врска.
Видете UDP пренасочување и PROXY протокол за UDP релеи и пренасочување на клиентски адреси.
За Minecraft Поставување на прокси, видете Velocity и BungeeCord.