Repository navigation
Wiki bg bg
- Дома
- Инсталиране
- 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 ·
compatibility.json·gameVersions/runtimes/depends - Forge / NeoForge / Spigot / Paper · GitHub Releases
В мултиплейър режима на Minecraft Raknetify2 използва RakNet през UDP. Трафикът се разделя на канали, всеки със собствен ред на пакетите. Ако пакет в един канал се изгуби, другите канали могат да продължат да пренасят данни. Така играта може да реагира на действията ви, докато липсващите данни се изпращат повторно или се прехвърлят части от света.
Raknetify2 е независимо поддържан форк на 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 |
Затворете клиента или спрете сървъра, преди да замените неговия Премахване на оригинала Raknetify JAR и всички по-стари Raknetify2 от същата инсталация, преди да добавите новия файл.
Клиентските папки принадлежат на инстанцията на Minecraft или модпака, който стартираш. Папките на сървъра и проксито принадлежат на тази инсталация на сървъра или проксито. Създай подходящата папка, ако твоят зареждач все още не я е създал.
- Инсталирайте клиентския мод за вашия товарач.
- Инсталирайте съответния сървър мод, или Spigot/Paper плъгин на съвместим сървър.
- Следвайте Конфигуриране на защитна стена и рутер да позволи UDP връзки към сървъра.
- Рестартирайте клиента и сървъра.
- Добавете адрес на сървъра, като например
raknet;play.example.comилиraknet;play.example.com:25565.
Адресите без префикс raknet; използват TCP.
Инсталирането на клиентския мод сам по себе си не добавя поддръжка на RakNet към отдалечен сървър. Операторът на сървъра трябва да предостави endpoint на RakNet. Играчите, които се присъединяват към сървър на някой друг, обикновено не се нуждаят от правила за пренасочване на входящи рутери.
Инсталирайте съответния прокси плъгин и клиентската модификация. Следвайте Velocity и BungeeCord за настройки на слушателя, пренасочване на задната част, ограничения за достъп и адреса, който играчите трябва да използват.
За директен Minecraft сървър, задайте съответния аргумент по-долу.Прокси операторите трябва да използват 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 с избрания от вас порт. Това променя UDP порта на RakNet, като запазва TCP порта на Velocity и адресите на бекенда. Рестартирайте Velocity след промяната на аргумента.
Настройте пренасочването на играчите както на Velocity, така и на неговите бекенди. Използвайте модерно пренасочване, когато софтуерът на бекенда го поддържа, и запазете неговия секрет за пренасочване частен. Следвайте инструкциите, специфични за бекенда, в ръководството за пренасочване на информация за играчите на Velocity. Запазете ограниченията на междинната стена на бекенда заедно с пренасочването.]
В BungeeCord's config.yml, стойността host под всяка вноска listeners идентифицира адрес за слушане на Minecraft и TCP порт. Raknetify2 обикновено добавя UDP на този номер на порт. Вноските servers съдържат TCP адреси на бекенда. Тези настройки са описани в ръководството за конфигурация на BungeeCord.
За отделен UDP порт, добавете този JVM аргумент преди -jar в командата за стартиране на BungeeCord:
-Draknetify.bungee.portOverride=25570
Заместването принадлежи на целия прокси процес. За конфигурация с множество Minecraft слушатели, проверете действителното RakNet крайни точки в регистрационния файл за стартиране, преди да добавите правила на защитната стена. Рестартиране BungeeCord след промяна на аргумента.
Поддържане на автентикацията на сметката при проксито. За Spigot бекенди, ръководството за IP форвардинг на BungeeCord] свързва ip_forward: true на проксито с settings.bungeecord: true на бекенда. Самото форвардинг не предотвратява някой да се свърже директно към бекенда. Ограничете достъпа до бекенда, използвайки инструкциите за firewall.
И двете преопределения на проксито приемат портове от 1 до 65534. Невалидните стойности се игнорират, така че проверете свързания UDP порт в лога на стартирането. Премахнете аргумента и рестартирайте, за да се върнете към номера на порта на слушателя на Minecraft.
Играчите се свързват с публичното име на хоста на проксито и UDP порт, например raknet;play.example.com:25570. Когато маршрутизаторът превежда портове, използвайте публичния му UDP порта в клиентския адрес. Адреси без raknet; Префиксът продължава да използва проксито TCP Слушател.
Оставете Query, Geyser и други UDP услуги на отделни UDP портове.Различен TCP порт не разрешава конфликт на UDP сокет.
Simple Voice Chat използва собствения си прокси плагин и UDP порт на Velocity и BungeeCord. Следвайте ръководството за прокси на Voice Chat за тази настройка.
Ако отделно UDP Релето седи пред вас Minecraft Прокси и изпраща PROXY протокол заглавки, конфигуриране Raknetify2 използване на Препращане на UDP и протокол PROXY. Инсталиране на програмата Velocity или BungeeCord сам по себе си не изисква тази конфигурация.
Тествайте извън локалната мрежа с помощта на Raknetify2 Присъединете се чрез прокси сървъра, превключете между задните сървъри, които използвате, и потвърдете, че идентичността и разрешенията на играча остават правилни.
- Ако TCP през проксито работи, но RakNet изтича, проверете UDP слушателя на проксито, публичния порт, маршрутите IPv4 и IPv6 и правилата на защитната стена.
- Ако и двата транспорта се провалят, когато проксито се свърже с гръбначния стълб, проверете TCP адрес, правила за достъп и конфигурация за препращане на плейъра.
- Ако проксито съобщи за зает UDP порт, проверка за Запитване, 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 proxy. Използвай RakNet UDP слушателя на проксито като дестинация за пренасочване. Запази съществуващия публичен TCP маршрут на проксито за обикновени Minecraft връзки.
Проксито се свързва към бекенд Minecraft сървъри чрез TCP. Добавянето на Raknetify2 към проксито не изисква отваряне на UDP портове за геймплей на бекенда за играчите.
| Връзка | Достъп за разрешаване |
|---|---|
| Играчи към проксито | Публично UDP към RakNet слушател, плюс съществуващата публика TCP слушател |
| Прокси до задните сървъри | Задната част Minecraft TCP портове, достъпни само от предвидените прокси хостове |
| Играчите директно към задните портове на играта | Дръжте блокирани, включително чрез IPv6 |
Когато проксито и бекендите работят директно на изцяло контролирана машина, слушателите на бекенда могат да използват адреси за обратна връзка с проксито, конфигуриран да ги достигне там. Между машини, ограничете TCP достъпа до бекенда до хостовете на проксито, използвайки междинен софтуер (firewall) или изолирана частна мрежа. Контейнерите и управляваните хостове се нуждаят от еквивалентни ограничения за тяхната мрежова конфигурация. Вижте Velocity's backend security guide и BungeeCord's firewall guide.
Пренасочването на играчите и ограниченията на междинния софтуер (firewall) работят заедно. Директният достъп до бекенда може да заобиколи проверките за вход на проксито. За инсталиране на плагини, настройки за пренасочване и преопределяне на UDP портове, следвайте Velocity and BungeeCord.
Публичният порт и портът на слушателя могат да се различават, когато маршрутизаторът превежда между тях:
| Настройка | Порт за използване |
|---|---|
| Адрес на клиентския сървър | Публичен порт UDP |
| Външен порт на правилото за пренасочване на маршрутизатора | Публичен порт UDP |
| Вътрешният порт на правилото за препращане на маршрутизатора | RakNet на слушателя UDP порт |
| Локален порт на хост защитната стена | RakNet на слушателя UDP порт |
За хостинг зад IPv4 маршрутизатор:
- Намерете местния IPv4 адрес на машината, приемаща RakNet връзки. Използвайте DHCP резервация или подходящ статичен адрес, така че правилото за препращане да продължи да е насочено към тази машина.
- Добавяне на UDP Правило за препращане за публичния порт, който играчите ще използват.
- Задайте местоназначението на правилото на локалния адрес на тази машина и RakNet на слушателя UDP порт.
- Разрешаване на входящи 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 протокол v2, следвайте Препращане на UDP и протокол PROXY и ограничете достъпа до получаващия UDP слушател до доверения прокси.
Свързване извън локалната мрежа на сървъра с актуализирана версия на Raknetify2 клиент, като се използва адрес като raknet;play.example.com:25565. Използвайте обществеността UDP порта на този адрес.
Използвайте истински RakNet връзка, за да проверите маршрута. UDP Сканиране, което не получава отговор, може да съобщи неубедителен резултат, защото работеща услуга може да отхвърли непозната сонда. Документация за сканиране на UDP обяснява това поведение.
Успешното TCP свързване потвърждава само TCP маршрута. Ако RakNet изтече, проверете слушателя, дестинацията на пренасочването, UDP порта и правилата на защитната стена, използвайки troubleshooting guide.
Проверете съвместимостта за конкретното издание, което изтегляте.Разработващият клон може да съдържа поддръжка, която все още не се е появила в изданието.
За Fabric, изтеглете compatibility.json от същата версия като JAR. Проверете версията на Minecraft си в gameVersions, след това проверете съответния запис под runtimes за изискванията му depends. Този JSON файл е справочен документ и не трябва да се поставя в папката mods.
За Forge, NeoForge, и Spigot/Paper, проверете изискванията за версия, декларирани от артефакта и неговия списък за изтегляне.Подкрепата на един товарач не установява поддръжка на друг.
Изискванията на Java, декларирани от Raknetify2, са минимални. Minecraft или зареждащото устройство може да изискват по-нова версия на Изберете версия на Java, която отговаря и на трите.
Използвайте същото Raknetify2 Издаване на клиента и сървърът или проксито приемат връзката му, когато е възможно. Проверете бележките за изданието, преди да смесвате версии. RakNet Връзките изискват поддръжка на протокола за удостоверено шифроване и в двата края. Оригинален Raknetify и Raknetify2 Изгражданията от преди въвеждането на този протокол не могат да извършват тези шифровани връзки към актуализирани партньори.
Raknetify2 носи съществуващия протокол на играта на Minecraft. Свързването на различни версии на Minecraft изисква настройка за съвместимо превод на протокола.
Работното набори build workflow включва проверки за съвместимост, включващи Polymer, Krypton, PacketFixer и Fast IP Ping. Тези проверки покриват версиите и комбинациите избрани от работния поток. Проверете свързаните резултати от изграждане на една версия, когато изследвате определена комбинация.
За провал в по-голям модпак, следвайте стъпките по-долу: Ръководство за отстраняване на неизправности. Включете пълните версии на модификациите в доклада си.
Обикновено Raknetify2 позволява независимите пакетни канали да продължат, докато един канал чака за липсващи данни. Подреден режим поставя всички Minecraft пакети на един канал, така че липсващият пакет задържа всеки следващ пакет в тази посока, докато не бъде препредаден. Това запазва реда, очакван от някои анти-читащи софтуери, но се отказва от способността на Raknetify2 да поддържа несвързания трафик на играта в движение по време на това изчакване.
-
Инсталирайте сборка Raknetify2, която поддържа пореден режим на сървъра или проксито, приемащо RakNet връзки и на всеки RakNet клиент.
-
Създаване
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 при прехвърляне на способен клиент към конфигурирано място. Това използва нативната поддръжка за прехвърляне на 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 |
Име на хоста или адрес на местоназначението, без транспортен префикс или порт |
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 Протокол заглавки за UDP. Raknetify2 приема препратени клиентски адреси само от изброените източници. Директен RakNet връзки без тези заглавки се отхвърлят, докато тази конфигурация е разрешена. TCP слушател запазва съществуващата си конфигурация.
Всеки изброен прокси е доверен да предоставя адреси на клиентите. Ограничете достъпа до бекенд UDP порт в неговия фаервол, така че само предвиденият прокси да може да го достигне. Запазете доверените диапазони толкова тесни, колкото позволява вашата мрежа.
Файлът трябва да съдържа само trustedProxies, с поне една вноска. Празен масив е грешка. Невалиден файл предотвратява стартирането на RakNet слушателя.
За да се върнете към директни UDP връзки, изтрийте файла и рестартирайте слушателя. Актуализирайте поведението на напред препращането и правилата на фаервола за новия маршрут едновременно.
Ако връзките се провалят след разрешаването на тази функция, проверете действителния адрес на източника на проксито в задната част, конфигурирания надежден диапазон и дали проксито излъчва UDP PROXY Протокол заглавки.
За 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 игровски връзки.
Поддържайте 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 порт, обновите правилата за firewall или пренасочване и рестартирайте сървъра.
Проверете ги в следния ред:
- Клиентът има правилния мод Raknetify2 за неговия товарач и Minecraft версия.
- Сървърът или прокси сървъра, който приема връзката, има инсталиран Raknetify2 и е стартирал без грешка на слушателя.
- Адресът започва с
raknet;и използва публичния порт UDP. - Доставчикът на хостинг, рутера и защитната стена на хоста позволяват UDP на този порт.
- Адресите IPv4 и IPv6 на името на хоста водят до желания хост и имат работещи правила на защитната стена.
Успешното TCP свързване потвърждава само TCP маршрута. Следвайте Firewall and router configuration, за да проверите UDP пренасочване и IPv6 достъп. Ако PROXY протоколът е активиран, клиентите трябва да достигнат слушателя чрез конфигуриран доверен прокси.]
Проверете за друг процес, използвайки порт UDP. Запитване, Geyser и други UDP услуги се нуждаят от собствени портове. Simple Voice Chat може да използва Интеграция на споделен порт.
Можете да изберете друг местен UDP порт с помощта на Настройки на слушателя за директен сървър или Velocity и BungeeCord настройки. Проверете изискванията за версията на Spigot/Paper Промяната само на публичния порт на маршрутизатора оставя конфликта на локалния сокет на мястото си.
Свържете се директно към дестинацията, като използвате raknet; Ако това не успее, първо поправете целевия слушател или мрежовия маршрут.
Ако директните връзки работят, проверете дали дестинацията приема входящи трансфери. Minecraft сървър, използващ server.properties нужди accepts-transfers=true. Директните съединения не тестват тази настройка.
След това сравнете името на хоста за пренос и TCP порта с config/raknetify2-transfers.json на изпращащия сървър. Потвърдете, че файлът е зареден след рестарт и че клиентът поддържа автоматични RakNet преноски. Вижте Automatic transfers.]
Проверете версиите на Raknetify2 от двете страни на връзката. Актуализирайте клиента и сървъра или проксито заедно, когато пускането промени криптирания протокол. Запазете настройките за автентикация на сървъра по време на разследването.
Запишете кое действие задейства провала, като например отваряне на инвентар, получаване на пакет с ресурси, смяна на светове или създаване на същност. TCP и RakNet използване на отделна изпитвателна инсталация, когато това е практично.
Някои потребителски полезни товари зависят от реда на ванилови пакети.Авторите на модификации могат да декларират тези зависимости чрез Интерфейс за пакетно поръчване.
Отворете проблем в менюто Проследяване на проблемите на Raknetify2 и включват:
- Minecraft, Java, loader и Raknetify2 версии на двата края.
- Версии на софтуера за сървър и прокси, включително всеки прокси за препращане на UDP.
- Други инсталирани модификации и техните версии.
- Стъпки за възпроизвеждане на проблема и какво очаквате да се случи.
- Дали същите стъпки работят над 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.