Repository navigation
Wiki tr tr
- Ana Sayfa
- Kurulum
- Velocity ve BungeeCord
- Firewall ve yönlendirici yapılandırması
- Uyumluluk
- Sıralı mod
- Otomatik transferler
- UDP yönlendirme ve PROXY protokolü
- Simple Voice Chat
- Sorun Giderme
- Mod entegrasyonu
- UDP proxy'ler
Minecraft istemcileri ve sunucuları için RakNet ağ bağlantıları.
| Minecraft | Raknetify2 | İstemci / Sunucu |
|---|---|---|
| Fabric | mods/raknetify2-fabric-*.jar |
İstemci / Sunucu |
| Forge | mods/raknetify2-forge-*.jar |
İstemci / Sunucu |
| NeoForge | mods/raknetify2-neoforge-*.jar |
İstemci / Sunucu |
| Spigot / Paper | plugins/raknetify2-spigot-*.jar |
Sunucu |
| Velocity | plugins/raknetify2-velocity-*.jar |
Velocity |
| BungeeCord | plugins/raknetify2-bungee-*.jar |
BungeeCord |
-
Çok Oyunculu
-
Sunucu Ekle
-
Sunucu Adresi
Sunucu Adresi RakNet · UDP raknet;play.example.com:25565TCP play.example.com:25565 -
Bitti
-
Sunucuya Katıl
| F3 | |
|---|---|
| RakNet · UDP | Etkin · MTU 1400 |
| TCP | Etkin değil |
- İstemci · Raknetify2 → UDP → Velocity / BungeeCord · Raknetify2
- Velocity / BungeeCord → TCP → Sunucu
| Bağlantı Noktası Numarası · 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 |
| Sunucu Adresi | UDP |
|---|---|
raknet;play.example.com:25580 |
play.example.com:25580 → NAT → 192.0.2.10:25570
|
Sunucu · 192.0.2.10
|
25570/udp |
Sunucu / Velocity / BungeeCord
| JSON | |
|---|---|
| ① ② ③ | {"mode":"ordered"} |
| ① ∥ ② ∥ ③ | {"mode":"multichannel"} |
| Sunucu | 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
| Sunucu Adresi | trustedProxies |
RakNet |
|---|---|---|
192.0.2.10 · PROXY v2 / UDP |
["192.0.2.10"] |
✓ |
192.0.2.11 · PROXY v2 / UDP |
["192.0.2.10"] |
✗ |
| İstemci → RakNet / UDP | ["192.0.2.10"] |
✗ |
config/raknetify2-proxy-protocol.json
{"trustedProxies":["192.0.2.10"]}-
Sunucu A · Fabric / Forge / NeoForge ·
config/raknetify2-transfers.json{"destinations":[{"host":"play.example.com","tcpPort":25565,"udpPort":25570}]} -
Sunucu B ·
play.example.com·server.properties→accepts-transfers=true -
Sunucu A ·
/transfer play.example.com 25565 Alex→ İstemci (Alex) → RakNet ·play.example.com:25570
| Minecraft | |
|---|---|
ui |
Ayarlar |
entity |
İskelet |
world_interaction |
Envanter |
effects |
Parçacıklar |
chunk |
Bloklar |
- Fabric · Minecraft / Java · English
- Forge / NeoForge / Spigot / Paper · GitHub Releases
Raknetify2, Minecraft’ın çok oyunculu oyun trafiğini UDP üzerinde RakNet ile taşır. Trafiği, her biri kendi paket sırasını koruyan kanallara ayırır. Bir kanalda paket kaybolursa diğer kanallardaki veri aktarımı sürebilir. Böylece kayıp veri yeniden gönderilirken veya dünya parçaları aktarılırken oyun, oyuncunun eylemlerine yanıt vermeye devam edebilir.
Raknetify2, ishland tarafından geliştirilen Raknetify modunun bağımsız olarak sürdürülen bir çatalıdır. Daha yeni Minecraft sürümlerini destekler. Proje ayrıca ağ aktarım kodunu, platform entegrasyonlarını ve uyumluluk testlerini güncel tutar.
- Minecraft ve mod uyumluluğunu kontrol edin.
- Download edin ve kurun.
-
raknet;play.example.comgibi bir adrese bağlanın.
- Velocity ve BungeeCord
- Firewall ve yönlendirici yapılandırması
- Otomatik transferler
- UDP yönlendirme ve PROXY protokolü
- Simple Voice Chat ile UDP portunu paylaşmak
- Düzeltme ve hata raporlaması
Mod yazarları, özel yükler ile Minecraft trafiği arasındaki bağımlılıkları belirtmek için paket sıralama arayüzünü kullanabilirler.
Raknetify2, MIT lisansını kullanır ve orijinal telif hakkı uyarılarını korur. Ağ uygulamasını Raknetify ve netty-raknet üzerine inşa eder.
GitHub Releases’den bir sürüm indirin. Kurmadan önce, o sürümün Minecraft sürümünü ve yükleme gereksinimlerini kontrol edin.
| Nerede kurulum yapıyorsunuz? | Dosya | Klasör |
|---|---|---|
| Fabric istemci veya sunucusu | raknetify2-fabric-*.jar |
mods |
| Forge client veya server | raknetify2-forge-*.jar |
mods |
| NeoForge istemci veya sunucusu | raknetify2-neoforge-*.jar |
mods |
| Spigot veya Paper sunucusu | raknetify2-spigot-*.jar |
plugins |
| Velocity proxy | raknetify2-velocity-*.jar |
plugins |
| BungeeCord proxy | raknetify2-bungee-*.jar |
plugins |
JAR dosyasını değiştirmeden önce istemciyi kapatın veya sunucuyu durdurun. Yeni dosyayı ekledikten sonra, aynı kurulumdan orijinal Raknetify JAR dosyasını ve daha eski Raknetify2 JAR dosyasını kaldırın.
Müşteri klasörleri, başlattığınız Minecraft örneğine veya modpaketine aittir. Sunucu ve proxy klasörleri ise ilgili sunucuya veya proxy kurulumuna aittir. Eğer yükleme programınız henüz klasör oluşturmamışsa, uygun klasörü oluşturun.
- Yükleyiciniz için client modunu yüklein.
- Uygun bir sunucuda, uyumlu bir sunucu modu olarak Spigot/Paper eklentisini yüklemeyi deneyin.
- UDP bağlantılarını sunucuya izin vermek için Firewall ve yönlendirici yapılandırması’ni takip edin.
- Client ve sunucuyu yeniden başlatın.
-
raknet;play.example.comveyaraknet;play.example.com:25565gibi bir sunucu adresi ekleyin.
raknet; öneki olmayan adresler TCP kullanır.
Sadece client modunu kurmak, uzak bir sunucuya RakNet desteği eklememektedir. Sunucu operatörü bir RakNet uç nokta sağlamalıdır. Başka bir sunucuya katılan oyuncular genellikle gelen giden ağ geçidi kurallarına ihtiyaç duymazlar.
Uygun proxy eklentisini ve client modunu kurun. Dinleyici ayarları, arka uç yönlendirme, erişim kısıtlamaları ve oyuncuların kullanması gereken adresler için Velocity ve BungeeCord adreslerini takip edin.
Doğrudan bir Minecraft sunucusu için, aşağıdaki Java argümanları ayarlayın. Proxy operatörleri Velocity ve BungeeCord dinleyici ayarlarını kullanmalıdır.
| Platform | Java Argümanı | Kabul Edilen Portlar |
|---|---|---|
| Fabric, Forge veya NeoForge sunucusu | -Draknetify.fabric.portOverride=25570 |
1’den 65534’e kadar |
| Spigot veya Paper sunucusu | -Draknetify.spigot.portOverride=25570 |
1’den 65535’e kadar |
Forge ve NeoForge, paylaşılan dinleyici kodunu kullanır. Bu yüzden özellik adları da fabric içerir. 25570 değerini istediğiniz UDP portu ile değiştirin.
Spigot / Paper ≥ 0.1.0-beta.1.431
Java komutundaki -jar öncesine argümanı ekleyin, veya hostun JVM argüman alanına ekleyin. Sunucuyu yeniden başlatın ve seçilen dinleyici portunda UDP’yi etkinleştirin. Eğer genel port da 25570 ise, raknet;play.example.com:25570 ile bağlanın. Eğer bir yönlendirici portu çeviriyorsa, istemci adresinde onun genel portunu kullanın. TCP portu mevcut değeriyle kalır.
Spigot/Paper üzerinde, UDP dinleyici Minecraft TCP dinleyicisinin yerel bağlantı adresini tutar. Geçersiz bir değiştirme veya işgal edilmiş bir UDP portu, RakNet’in başlamasını engeller. Bağlı UDP adresi ve portu için başlatma günlüğünü kontrol edin. Argümanı kaldırın ve TCP dinleyicisinin port numarasına geri dönmek için yeniden başlatın.
Bir yönlendirici veya UDP proxy, farklı bir kamu UDP portunu da açabilir ve bunu sunucunun Java argümanlarını değiştirmeden mevcut dinleyiciye yönlendirebilir.
GitHub Actions’de başarılı bir main çalıştırmasını açın ve ilgili Artifacts arşivini indirin. GitHub, iş akışı artefaklarını indirmek için bir hesaba ihtiyaç duyar. Yukarıdaki kurulum tablosunu kullanarak arşirden bir JAR dosyası seçin.
Velocity ve BungeeCord, oyuncular ile Minecraft arka uç sunucuları arasında yer alır. RakNet üzerinden bağlanacak her bir istemciye ve proxyye Raknetify2 yüklemeniz gerekir.
Raknetify2 client --UDP--> Velocity veya BungeeCord --TCP--> backend sunucusu
Arka uç sunucuların bu bağlantı yolu için Raknetify2’ye ihtiyacı yoktur. Ağınızın gerektirdiği mod’lar, eklentiler ve yönlendirme desteğine hâlâ ihtiyaçları vardır. Raknetify2, Minecraft sürümlerini çevirmez veya proxy’nin hesap kimlik doğrulamasını değiştirmez.
- Proxy aracılığıyla yapılan normal TCP bağlantılarının, kimlik doğrulama ve arka uç sunucular arasında geçişin de dahil olmak üzere sorunsuz çalıştığını doğrulayın.
- Proxy’yi durdurun ve GitHub Releases’ten uygun eklentiyi indirin.
-
raknetify2-velocity-*-all.jarveyaraknetify2-bungee-*-all.jardosyalarını proxy’ninpluginsdizinine koyun. O dizinden daha eski Raknetify veya Raknetify2 eklentilerini kaldırın. - İnşaat rehberi kullanılarak uygun Raknetify2 istemci modunu yükleyin.
- Aşağıdaki dinleyici ayarlarını kontrol edin, proxy’yi yeniden başlatın ve RakNet dinleyici hatalarını bulmak için logunu inceleyin.
- Proxy’ye kamu UDP trafiğini izin verin ve Firewall ve yönlendirici yapılandırması bölümünde açıklanan gibi arka uç oyun portlarını kısıtlayın.
Müşteri ve proxy üzerinde uyumlu Raknetify2 sürümlerini kullanın. Sürümleri karıştırmadan önce Uyumluluk konusunu kontrol edin.
velocity.toml dosyasındaki bind ayarı, Velocity’nin Minecraft dinleme adresini ve TCP portunu seçer. Raknetify2 genellikle UDP için aynı port numarasını kullanır. [servers] girişleri arka uç sunucularını tanımlar. Bu girişlerin arka uç TCP adreslerine işaretlemesi gerekir. Daha fazla bilgi için Velocity’nin konfigürasyon referansına bakınız.
Ayrı bir UDP portu kullanmak istiyorsanız, Velocity’nin başlatma komutundaki -jar öncesine bu JVM argümanını ekleyin:
-Draknetify.velocity.portOverride=25570
25570 değerini seçtiğiniz portla değiştirin. Bu, Velocity’nin TCP portunu ve arka uç adreslerini korurken RakNet’in UDP portunu değiştirir. Argümanı değiştirdikten sonra Velocity’yi yeniden başlatın.
Velocity ve arka planları üzerinde oyuncu iletimini yapılandırın. Arka plan yazılımı bunu destekliyorsa modern iletim yöntemlerini kullanın ve iletim işlemini gizli tutun. Velocity’nin oyuncu bilgi iletim rehberi’deki arka plan özel talimatlarına uyun. Arka plan güvenlik duvarı kısıtlamalarını iletim işleminin yanında koruyun.
BungeeCord’un config.yml dosyasında, her bir listeners girişindeki host değeri, bir Minecraft dinleme adresi ve TCP portunu tanımlar. Raknetify2 genellikle bu port numarasına UDP ekler. servers girişleri ise arka uç TCP adreslerini içerir. Bu ayarlar BungeeCord yapılandırma kılavuzunda açıklanmıştır.
Ayrı bir UDP port için, BungeeCord’un başlatma komutundaki -jar kelimesinden önce şu JVM argümanını ekleyin:
-Draknetify.bungee.portOverride=25570
Bu geçersizleştirme işlemi, tüm proxy sürecine aittir. Birden fazla Minecraft dinleyicisi içeren bir yapılandırma durumunda, firewall kurallarını eklemeden önce başlatma logundaki gerçek RakNet uç noktalarını kontrol edin. Argümanları değiştirdikten sonra BungeeCord’u yeniden başlatın.
Proxy’de hesap kimliğini koru. Spigot backend’leri için, BungeeCord’un IP yönlendirme kılavuzu’ında proxy’deki ip_forward: true değerini, backend’deki settings.bungeecord: true ile eşleştirir. Yalnızca yönlendirme, birinin doğrudan backend’e bağlanmasını engellemez. Backend’e erişimi firewall talimatları kullanarak kısıtlayın.
Her iki proxy değişikliği de 1 ile 65534 arasındaki portları kabul eder. Geçersiz değerler göz ardı edilir, bu yüzden başlatma logundaki bağlı UDP portunu kontrol edin. Argümanı kaldırın ve Minecraft dinleyici port numarasına geri dönmek için yeniden başlatın.
Oyuncular, örneğin raknet;play.example.com:25570 gibi, proxy’nin public hostname’una ve UDP portuna bağlanır. Bir yönlendiricinin portları çevirdiği durumlarda, istemci adresinde bu yönlendiricinin public UDP portunu kullanın. raknet; öneki olmayan adreslerde ise proxy’nin TCP dinleyici kullanmaya devam edin.
Sorguyu, Geyser’ı ve diğer UDP hizmetlerini ayrı UDP portlarında tutun. Farklı bir TCP portu, UDP soket çakışmalarını çözemez.
Simple Voice Chat, Velocity ve BungeeCord’da kendi proxy eklentisini ve UDP portunu kullanır. Bu ayarlamalar için Voice Chat proxy rehberine bakın.
Eğer Minecraft proxy’nin önünde ayrı bir UDP relay bulunuyorsa ve PROXY protokolü v2 başlıklarını gönderiyorsa, Raknetify2’yi UDP yönlendirme ve PROXY protokolü kullanarak yapılandırın. Velocity veya BungeeCord’un tek başına kurulması bu yapılandırmayı gerektirmez.
Yerel ağınızın dışından Raknetify2 istemcisi kullanarak test edin. Proxy aracılığıyla katılın, kullandığınız arka uç sunucular arasında değişiklik yapın ve oyuncu kimliği ile izinlerinin hala doğru olduğunu teyit edin.
- Eğer proxy üzerinden TCP çalışıyorsa ancak RakNet zaman aşımı yapıyorsa, proxy’nin UDP dinleyicisini, public portunu, IPv4 ve IPv6 rotalarını ve güvenlik duvarı kurallarını kontrol edin.
- Proxy, bir arka uça bağlarken her iki taşıyıcı da başarısız olursa, o arka uçun TCP adresini, erişim kurallarını ve oyuncu yönlendirme yapılandırmasını kontrol edin.
- Eğer proxy, işgal edilmiş bir UDP portu bildiriyorsa, Query, Geyser, ses proxyi veya ona bağlı başka bir süreci kontrol edin.
Raporlamalar için, aynı bağlantı denemesinden hem proxy hem de backend loglarını ekleyin. İçermesi gereken sürüm bilgileri için Troubleshooting bölümüne bakın.
Bu rehber sunucu operatörleri için hazırlanmıştır. Raknetify2’nin, RakNet bağlantılarını kabul eden sunucuya veya proxy’ye çalışan bir UDP yoluna ihtiyacı vardır. Varsayılan kurulum, Minecraft’ın TCP dinleyicisiyle aynı port numarasını kullanır.
Aynı yerel ağdaki oyuncular için, sunucunun yerel adresini kullanın ve UDP’yi host güvenlik duvarından geçirin. İnternet trafiğinin routerun IPv4 NAT’ını geçmesi gerektiğinde, router port yönlendirme gereklidir.
Raknetify2 ile Minecraft sunucusunu çalıştıran makineye kamu UDP trafiği gönderin. Varış portu, sunucunun RakNet UDP dinleyici portudur. Bu portu sunucu makinesinin host güvenlik duvarında açın. Normal Minecraft bağlantıları için mevcut TCP yolunu koruyun.
Örneğin, Raknetify2 UDP 25570 üzerinden dinlerse, kamu UDP portunu sunucunun yerel adresine 25570 portunda yönlendirin. Sunucunun TCP portu 25565 olarak kalabilir. Farklı bir UDP portu seçmek için doğrudan sunucu dinleyici ayarları’e bakın.
Raknetify2 proxy eklentisi ile Velocity veya BungeeCord çalıştıran makineye kamu UDP trafiğini gönderin. Proxy’nin RakNet UDP dinleyicisini yönlendirme hedefi olarak kullanın. Normal Minecraft bağlantıları için proxy’nin mevcut kamu TCP yolunu koruyun.
Proxy, TCP üzerinden arka uç Minecraft sunucularına bağlanır. Raknetify2’yi proxyye eklemek, oyunculara arka uç oyun UDP portlarını açmayı gerektirmez.
| Bağlantı | Erişim izinleri |
|---|---|
| Proxyye bağlı oyuncular | RakNet dinleyiciye açık UDP bağlantısı ve mevcut açık TCP dinleyici. |
| Arka uç sunuculara proxy kullanımı | Sadece çevrimiçi Minecraft bağlantıları için gerekli olan arka uç TCP portları, yalnızca belirlenen proxy sunucularından erişilebilir. |
| Oyuncular doğrudan arka plan oyun portlarına gidin. | Engellenmiş durumda, IPv6 aracılığıyla da dahil olmak üzere. |
Proxy ve backend’ler doğrudan kontrol ettiğiniz özel bir makinede çalıştığında, backend dinleyiciler proxy’nin onlara oradan ulaşacak şekilde yapılandırıldığı loopback adreslerini kullanabilir. Makineler arası iletişimde, backend TCP erişimini proxy hostlarına güvenlik duvarı veya izole özel bir ağ kullanarak kısıtlayın. Konteynerler ve yönetilen host’lar için de aynı kısıtlamalar geçerlidir. Daha fazla bilgi için Velocity’nin backend güvenlik rehberine ve BungeeCord’un güvenlik duvar rehberine bakın.
Oyuncu yönlendirme ve güvenlik duvarı kısıtlamaları birlikte çalışır. Doğrudan arka uç erişimi, proxy’nin giriş kontrollerini atlayabilir. Eklenti kurulumu, yönlendirme ayarları ve UDP port değişiklikleri için Velocity ve BungeeCord adreslerine bakın.
Bir yönlendiricinin bunlar arasında çeviri yapması durumunda, kamu port ve dinleyici port farklı olabilir:
| Ayarlar | Kullanılacak port |
|---|---|
| İstemci sunucu adresi | Kamu UDP portu |
| Yönlendirici iletim kuralının harici portu | Kamu UDP portu |
| Yönlendirici iletim kuralının iç portu | RakNet dinleyicisinin UDP portu |
| Host güvenlik duvarının yerel portu | RakNet dinleyicisinin UDP portu |
IPv4 yönlendirici arkasında barındırma için:
- RakNet bağlantıları kabul eden makinenin yerel IPv4 adresini bulun. DHCP rezervasyonu veya uygun bir statik adres kullanarak, yönlendirme kuralının o makineyi hedeflemeye devam etmesini sağlayın.
- Oyuncuların kullanacağı kamu portu için bir UDP yönlendirme kuralı ekleyin.
- Kuralın hedefini o makinenin yerel adresi ve RakNet dinleyicisinin UDP portu olarak ayarlayın.
- Host güvenlik duvarındaki dinleyici portunda gelen UDP trafiğini izin verin.
Örneğin, 25565 UDP portunda dinleyen bir sunucu, 25565 halka açık port, 192.168.1.100 hedef adres ve 25565 hedef portu olan bir kural kullanabilir. Örnek adresi, sunucunuzun gerçek yerel adresiyle değiştirin.
Normal Minecraft bağlantıları için mevcut TCP kuralını koruyun. Sadece bir TCP yönlendirme kuralı UDP’yi taşıyamaz.
Trafik, yönlendiricinize ulaşmadan önce başka bir yönlendiricinin veya ISP’nin NAT yaptığından emin olun. Kontrol ettiğiniz iki yönlendirici olduğunda, yönlendirme her ikisini de kapsamalıdır. ISP’niz taşıyıcı düzeyinde NAT kullanıyorsa, kamu IPv4 adresi sağlayıp sağlayamayacağını veya gelen UDP’yi destekleyen bir barındırma hizmeti veya tünel kullanıp kullanamayacağını sorun. Yönlendiricinizin yönlendirme kuralı, ISP’nin NAT’ını yapılandıramaz. Kamu WAN adresi gereksinimi için TP-Link’in port yönlendirme rehberine bakın.
Seçilen UDP portunu hem router’ın IPv6 güvenlik duvarı hem de ana bilgisayarın güvenlik duvarından geçirerek izin verin. RakNet bağlantıları kabul eden makinenin IPv6 adresini hedefleyin.
Host adının IPv6 adresinin o makineye işaret ettiğinden emin olun. IPv6 adresi değişirse, DNS kaydını ve herhangi bir adrese özgü güvenlik duvarı kurallarını güncelleyin.
Hem IPv4 hem de IPv6 adreslerini yayınlayan bir ana bilgisayarın, her bir yayınlanan adrese uygun bir yönlendirme rotasına sahip olması gerekir. Bir oyuncunun bağlanabildiği ve diğerinin bağlanamadığı durumlarda her iki kural setini de kontrol edin.
Eğer IPv4 yönlendirme port numarasını değiştiriyorsa, portların IPv6 dinleyicisine ulaşmasını sağlayın. IPv4 port çevirisi, IPv6 güzergahını yapılandırmaz.
Oyunculara verdiğiniz kamu uç noktasında sağlayıcı veya tünelin UDP’yi desteklemesi gerekir. Sağlayıcının port tahsisleri, ağ güvenlik duvarı kuralları ve sunucunun kendi güvenlik duvarını kontrol edin.
Eğer ek bir UDP proxy, PROXY protokolü v2 kullanarak istemci adreslerini iletiyorsa, UDP yönlendirme ve PROXY protokolü adımlarını takip edin ve alıcı UDP dinleyicideki erişimi sadece güvenilir proxyye kısıtlayın.
Sunucunun yerel ağından dışarıdan, güncellenmiş Raknetify2 istemcisi kullanarak raknet;play.example.com:25565 gibi bir adresle bağlanın. Bu adreste public UDP portunu kullanın.
Yolun doğrulanması için gerçek bir RakNet bağlantısı kullanın. Yanıt alamayan bir UDP taraması, çalışan bir servisin yabancı bir sorguyu atlayabileceği için sonuçsuz bir sonuç bildirebilir. Nmap’ın UDP tarama dokümanı bu davranışı açıklar.
Başarılı bir TCP bağlantısı yalnızca TCP yolunu onaylar. Eğer RakNet zaman aşımı yaptıysa, troubleshooting guide kullanılarak dinleyici, yönlendirme hedefi, UDP portu ve güvenlik duvarı kurallarını kontrol edin.
Indirdiğiniz belirli sürümün uyumluluğunu kontrol edin. Geliştirme branşı, henüz bir sürümde yer almayan destekleri içerebilir.
Minecraft ve Java sürümleri · English
Raknetify2 tarafından belirtilen Java gereksinimi asgari düzeyindedir. Minecraft veya yükleme aracı daha yeni bir çalışma ortamı gerektirebilir. Üçünü de karşılayacak bir Java sürümü seçin.
Mümkün olduğunda, istemci ve sunucuda aynı Raknetify2 sürümünü kullanın veya bağlantıyı kabul eden bir proxy kullanın. Sürümleri karıştırmadan önce notları kontrol edin. Şifrelenmiş RakNet bağlantıları, her iki uçta da kimlik doğrulama ile şifreleme protokolü desteğine ihtiyaç duyar. O protokolün tanıtıldığıdan önceki Raknetify ve Raknetify2 sürümleri, güncellenmiş eşlerle bu tür şifreli bağlantıları yapamaz.
Raknetify2, Minecraft’ın mevcut oyun protokolünü taşır. Farklı Minecraft sürümleri arasında bağlantı kurmak için uyumlu bir protokol çevirisi kurulumu gereklidir.
Daha büyük bir mod paketinde bir arıza olursa, troubleshooting rehberini takip edin. Raporunuzda tüm mod sürümlerini belirtin.
Normalde, Raknetify2, bir kanal eksik verileri bekleirken bağımsız paket kanallarının devam etmesine izin verir. Sıralı mod, tüm Minecraft paketlerini tek bir kanalda tutar. Bu sayede eksik bir paket, yeniden iletilene kadar o yöndeki tüm sonraki paketleri engeller. Bu durum, bazı anti-cheat yazılımlarının beklediği sırayı korur, ancak Raknetify2’nin bu bekleme süresi boyunca ilgisiz oyun trafiğinin devam etmesini sağlama yeteneğini kaybeder.
-
RakNet bağlantılarını kabul eden sunucu veya proxy üzerinde ve her bir RakNet istemcisinde, sıralı modu destekleyen bir Raknetify2 sürümünü kurun.
-
O sunucu veya proxy’nin çalışma dizini altında
config/raknetify2-compatibility.jsondosyasını oluşturun. Eğerconfigdizini mevcut değilse, onu oluşturun. -
Aşağıdakileri ekleyin:
{"mode": "ordered"} -
Sunucuyu veya proxy’yi yeniden başlatın.
Müşteriler otomatik olarak sunucunun ayarlarını takip eder. Oyuncuların bir yapılandırma dosyası oluşturmalarına veya RakNet sunucu adreslerini değiştirmelerine gerek yoktur.
Tüm Minecraft paketleri, paket sınırları ve dünya geçişleri de dahil olmak üzere, her yönde bir güvenilir ve düzenli kanal kullanır.
Oyuncular Velocity veya BungeeCord aracılığıyla bağlandığında, anti-cheat işlemleri bir arka uç sunucuda yürütülse bile, o proxy üzerinde sıralı modu etkinleştirin.
Bu politika tüm arka uç anahtarlar için geçerlidir. Sıralı modda, proxy, arka uç bekleme isteklerini yerel olarak yanıtlamak yerine gerçek istemciye iletir.
İlk RakNet bağlantısında konsol şu bilgiyi gösterir:
Raknetify2 compatibility: ordered (updated clients required, genuine acknowledgements)
Başarılı bir uyumluluk değişimi aynı zamanda ordered compatibility negotiated mesajını da kaydeder. Ardından karşı tarafın adresi gelir.
Anti-hile kontrollerini etkin tutun ve özel ayarlarınızı doğrulayın.
Sıralı modu desteklemeyen RakNet istemcileri, bunu gerektiren bir sunucuya bağlanamaz. Bu istemcilerde Raknetify2 yükseltmesi yapılmalı veya raknet; öneki olmadan sunucunun veya proxy’nin normal TCP adresi ve portu kullanılarak bağlantı kurulmalıdır.
Dosyayı şu şekilde değiştirin:
{"mode": "multichannel"}Ardından sunucuyu veya proxy’yi yeniden başlatın. Dosyayı kaldırmanın, yeniden başlatmadan sonra çok kanallı modu da geri getirdiğini unutmayın.
Dosya, mode adında tam olarak bir ayar içermeli ve bu ayarın değeri "ordered" veya "multichannel" olmalıdır. Değerler büyük/küçük harfe duyarlıdır.
Geçersiz veya okunamayan yapılandırma bilgileri RakNet bağlantılarını reddeder. Dosyayı düzeltin ve işlemi yeniden başlatın.
Eğer konsol hala multichannel raporluyorsa, dosyanın RakNet bağlantısını kabul eden sunucu veya proxy'nin çalışma dizininde olduğundan emin olun, ardından o süreci yeniden başlatın.
Fabric, Forge ve NeoForge sunucuları, yetkin bir müşteriyi yapılandırılmış bir hedefe aktarırken RakNet’i seçebilir. Bu, Java Edition 1.20.5’de tanıtılan Minecraft’ın yerleşik aktarım desteğini kullanır. Raknetify2 sürümünün her iki uçta da Minecraft sürümünü ve yükleme aracını desteklediğinden emin olun.
Gönderici sunucu ve istemci üzerine Raknetify2’yi kurun. Hedef noktanın uyumlu bir RakNet dinleyici sağlaması ve gelen Minecraft transferlerini kabul etmesi gerekir.
Bu yapılandırma, yukarıdaki üç mod yükleyicisi tarafından gönderilen transferler için geçerlidir. Spigot/Paper, Velocity ve BungeeCord eklentileri bu transfer dosyasını okumaz.
Gönderen sunucunun dizininde config/raknetify2-transfers.json dosyasını oluşturun:
{
"destinations": [
{
"host": "play.example.com",
"tcpPort": 25565,
"udpPort": 25570
}
]
}Örnek host adı ve portları kendi hesaplarınızın değerleriyle değiştirin, ardından gönderme sunucusunu yeniden başlatın. Diğer hedefler aynı dizide yer alır.
| Arazi | Anlamı |
|---|---|
host |
İletim ön eki veya port olmaksızın, hedef makine adı veya IP adresi. |
tcpPort |
Orijinal transfer isteğindeki hedef port |
udpPort |
Transfer edilen istemci, RakNet’in kamu portuna başvurmalıdır. |
TCP ve UDP port numaraları aynı olabilir. Eğer bir yönlendirici UDP portunu dönüştürüyorsa, bu dosyadaki kamu portunu kullanın. Portları JSON numaraları olarak yazın.
Transferleri hedef cihazın normal ana hostname’una ve TCP portuna gönderin. Raknetify2, istemcinin otomatik transfer desteğini duyurup duyurmadığını kontrol eder. Yeterli kapasiteye sahip bir istemci ve uygun bir hedef için, yapılandırılmış UDP portunu seçer. Diğer istemciler ve uyuşmayan hedefler için orijinal transfer adresi korunur.
Eşleştirme işlemi, transfer isteğindeki ana bilgisayar adı ve TCP portunu kullanır. Ana bilgisayar adının büyük harfle yazılması, son DNS noktasının eklenmesi ve eşdeğer IPv6 yazımı normalleştirilmiştir. DNS aramaları eşleştirme işlemine dahil edilmez. Bu nedenle aynı adrese çözüm bulan iki farklı ana bilgisayar adı için ayrı girdiler gereklidir. Vahşi kartlı girintiler desteklenmemektedir.
Minecraft’ın server.properties dosyasını kullanan bir hedef için, accepts-transfers=true değeri ayarlanmalı ve oyun yeniden başlatılmalıdır. Bir hedef proxy’nin kendi transfer ayarları olabilir. Minecraft, normal bir doğrudan katılımın işe yaradığı durumlarda bile gelen transferleri reddeder.
Hedef bilgisayarın RakNet dinleyici, kamu UDP yönlendirme ve ana bilgisayar güvenlik duvarı zaten yapılandırılmış olmalıdır. Gönderen sunucunun transfer dosyası, müşteriye gönderilecek adresi seçer.
Konu adının her iki adres türünü de yayınladığı durumlarda, hedefin IPv4 ve IPv6 rotalarını kontrol edin. Otomatik aktarım davranışını incelemeden önce, hedefe normal bir RakNet bağlantısı test edin.
Herhangi bir varış noktası için giriş veya kimlik kontrollerini devam ettirin. Bu yapılandırma, oyunculara erişim sağlamaz veya sunucu kimlik doğrulamasını değiştirmez.
Eksik alanlar, bilinmeyen alanlar, geçersiz portlar ve tekrarlanan hedefler, başlatma sırasında bir yapılandırma hatasına neden olur. Hatanın ne olduğunu belirlemek için sunucu günlüğünü kullanın, JSON’u düzeltin ve yeniden başlatın.
Otomatik seçimi devre dışı bırakmak için yapılandırma dosyasını kaldırın veya {"destinations": []} kullanın, ardından gönderme sunucusunu yeniden başlatın. Bu durumda transfer istekleri orijinal adreslerini koruyacaktır.
UDP bir proxy, RakNet trafiğini yönlendirebilir ve PROXY protokolü v2 kullanılarak orijinal istemci adresini koruyabilir. Bu özelliği, bir üst düzey UDP proxy bu başlıkları dinleyiciye gönderdiğinde etkinleştirin. Sıradan yönlendirici port yönlendirme bu gerekliliği gerektirmez.
Sunucuda veya UDP trafiğini ileten Minecraft proxy’sinde, config/raknetify2-proxy-protocol.json dosyasını oluşturun:
{
"trustedProxies": ["192.0.2.10"]
}Örnek, kontrol ettiğiniz UDP proxy’nin gerçek kaynak IP adresi veya bir CIDR aralığı ile değiştirilmelidir. Adres, herhangi bir NAT olayından sonra alıcı dinleyicinin gördüğüyle eşleşmelidir. IPv4 ve IPv6 sabitleri kabul edilir. DNS host adları reddedilir. Alıcı sunucuyu veya proxy’yi yeniden başlatın.
UDP için PROXY protokolü v2 başlıklarını göndermek üzere yönlendirme proxy’sini yapılandırın. Raknetify2, yalnızca listelenen kaynaklardan gelen yönlendirilmiş istemci adreslerini kabul eder. Bu yapılandırma etkin olduğunda, bu başlıklar olmadan yapılan doğrudan RakNet bağlantıları reddedilir. TCP dinleyici mevcut yapılandırmasını korur.
Listelenen her proxy, istemci adreslerini sağlamaya güvenilir olarak kabul edilir. Arka uç UDP portuna erişimi, firewall üzerinden sınırlayarak yalnızca belirlenen proxy’nin bu porta ulaşmasını sağlayın. Güvenilir aralıkları, ağınızın izin verdiği kadar dar tutun.
Dosya yalnızca trustedProxies içermeli ve en az bir girişi olmalıdır. Boş bir dizi bir hatadır. Geçersiz bir dosya RakNet dinleyicisinin başlamasını engeller.
Doğrudan UDP bağlantılarına geri dönmek için, dosyayı kaldırın ve dinleyiciyi yeniden başlatın. Aynı zamanda, yeni güzergah için upstream yönlendirme davranışını ve güvenlik duvarı kurallarını güncelleyin.
Bu özellik etkinleştirildikten sonra bağlantılar başarısız olursa, proxy’nin gerçek kaynak adresini, yapılandırılmış güvenilir aralığı ve proxy’nin UDP PROXY protokolü v2 başlıklarını yayınlayıp yayınlamadığını kontrol edin.
Minecraft proxy kurulumu ve arka uç yapılandırması için Velocity ve BungeeCord adresine bakın.
Raknetify2, Fabric, Forge, NeoForge, Spigot ve Paper platformlarında Simple Voice Chat ile sunucu UDP dinleyicisini paylaşabilir.
Simple Voice Chat’ı sunucuda ve ses sohbeti yapmak isteyen her bir istemciye kurun. Geri kalan yapılandırmalar için sunucu kurulum rehberini takip edin.
Raknetify2’nin dosyaları için sunucunun üst düzey config dizinini kullanın. Spigot/Paper da dahil. Simple Voice Chat’ın kendi dosyası ise platforma özgü konumda kalır.
-
Sunucu dizininde
config/raknetify2-voicechat.jsondosyasını aşağıdaki içerikle oluşturun:{"enabled": true} -
Simple Voice Chat’ın sunucu yapılandırmasında
port=-1değerini ayarlayın. Modlanmış sunucularda bu dosyaconfig/voicechat/voicechat-server.properties’dır. Spigot/Paper’da iseplugins/voicechat/voicechat-server.properties’dır. -
Eşleşen bir RakNet dinleyici varsa
bind_addressbölümünü boş bırakın. Sunucu, o UDP port üzerinde birden fazla dinleyiciye sahipse, paylaşmak istediğiniz dinleyicinin yerel adresini ayarlayın. -
Sunucuyu yeniden başlatın ve bağlı olan bir oyuncu için
/voicechat test <PLAYERNAME>komutunu çalıştırın.
Eğer RakNet dinleyici, Minecraft'tan farklı bir port kullanıyorsa, -1 kullanmak yerine port değerini o yerel UDP portuna açıkça ayarlayın. Örneğin, yerel UDP port 25570 üzerindeki bir RakNet dinleyicisinin port=25570 olması gerekir.
Kullanıcıların farklı bir genel kamu adresi veya porta ihtiyaç duyduğu durumlarda voice_host ayarlanır. Bir yönlendiricinin genel kamu UDP 25580'i yerel UDP 25570'ye yönlendirdiği durumlarda, port=25570 ve voice_host=play.example.com:25580 kullanılır. Genel kamu adresi voice_host içinde yer alır. bind_address ayarı ise yerel dinleyiciyi seçer.
Raknetify2, Simple Voice Chat’ın API aracılığıyla paylaşılan UDP soketini sağlar. Simple Voice Chat, ses kimlik doğrulama ve şifreleme işlemlerini yönetir. Oyuncular, TCP veya RakNet oyun bağlantılarıyla ses sohbeti yapabilirler.
Sorgu ve Geyser’ı ayrı UDP portlarda tutun. Paylaşılan soket entegrasyonu yalnızca Simple Voice Chat’i destekler.
BungeeCord, Simple Voice Chat, UDP ve Velocity üzerinde ses proxy soketleri paylaşılmamaktadır. Simple Voice Chat’ın proxy kurulum kılavuzunu takip edin ve ses proxy’sine ayrı bir UDP portı verin. Resmi ses proxy eklentisiyle, proxy’nin ses yapılandırmasında yer alan herhangi bir kamu voice_host değeri ayarlayın. Bu eklenti, arka uç sunucuların voice_host ayarlarını görmezden gelir.
Genel bir UDP tüneli için, voice_host değerini bu sunucuya yönlendiren public hostname ve UDP portuna ayarlayın.
Eğer günlük No RakNet listener matches the voice bind address and port olarak gösteriyorsa, RakNet’in başarıyla başladığından ve ses portu ile bağlantı adresinin yerel dinleyiciyle uyumlu olduğundan emin olun.
Eğer Multiple RakNet listeners match the voice bind address olarak bildiriliyorsa, bind_address’deki belirli bir yerel adresi seçin ve yeniden başlatın.
Sade Sesli Sohbet (Simple Voice Chat) eklentisi sadece kendi UDP soketini sağlayabilir. Başlangıçta başka bir eklenti zaten bir soket sağlıyorsa, hangi soket entegrasyonunu kullanacağınızı seçin.
Raknetify2’nin entegrasyonunu devre dışı bırakmak için, ses yapılandırmasında {"enabled": false} değerini ayarlayın veya o dosyayı kaldırın. Simple Voice Chat’a ayrı bir UDP portı verin, firewallını veya yönlendirme kurallarını güncelleyin ve sunucuyu yeniden başlatın.
Bunları sırasıyla kontrol edin:
- Müşteri, yükleyicisi ve Minecraft sürümü için doğru Raknetify2 moduna sahiptir.
- Bağlantıyı kabul eden sunucu veya proxy, Raknetify2’yi yüklemiş ve dinleyici hatası olmadan başlatılmıştır.
- Adres
raknet;ile başlar ve kamu UDP portunu kullanır. - Hosting sağlayıcısı, yönlendirici ve host güvenlik duvarı, o port üzerinde UDP’yi izin veriyor.
- Host adının IPv4 ve IPv6 adresleri istenen hosta yönlendiriliyor ve çalışan güvenlik duvarı kurallarına sahip.
Başarılı bir TCP bağlantısı sadece TCP yolunu onaylar. UDP yönlendirmesi ve IPv6 erişimini kontrol etmek için Firewall ve yönlendirici yapılandırmasına bakın. PROXY protokolü etkinleştirilmişse, istemcilerin bir güvenilir proxy aracılığıyla dinleyiciye ulaşması gerekir.
UDP portunu kullanan başka bir süreç olup olmadığını kontrol edin. Geyser ve diğer UDP hizmetlerinin kendi portlarına ihtiyacı vardır. Simple Voice Chat, paylaşımlı-port entegrasyonunu kullanabilir.
Doğrudan sunucu dinleyici ayarları veya Velocity ve BungeeCord ayarları kullanarak başka bir yerel UDP portu seçebilirsiniz. Spigot/Paper ayarı için sürüm gereksinimlerini kontrol edin. Sadece bir yönlendiricinin public portunu değiştirmek, yerel soket çakışmasını devam ettirir.
Hedefe, raknet; adresi kullanarak doğrudan bağlanın. Bu işlem başarısız olursa, önce hedefin dinleyici ayarlarını veya ağ yolunu düzeltin.
Doğrudan bağlantılar çalışıyorsa, hedefin gelen transferleri kabul edip etmediğini kontrol edin. server.properties dosyasını kullanan bir Minecraft sunucusu için accepts-transfers=true ayarı gereklidir. Doğrudan katılımlar bu ayarı test etmez.
Daha sonra, gönderen sunucudaki config/raknetify2-transfers.json dosyasıyla transfer sunucu adı ve TCP portunu karşılaştırın. Dosyanın yeniden başlatmadan sonra yüklenmiş olduğundan ve istemcinin otomatik RakNet transferlerini desteklediğinden emin olun. Otomatik transferler bölümüne bakın.
Bağlantının her iki ucundaki Raknetify2 sürümlerini kontrol edin. Bir sürüm yayınlandığında şifreli protokol değişiyorsa, istemciyi ve sunucuyu veya proxy’yi birlikte güncelleyin. Soruşturma sırasında sunucunun kimlik doğrulama ayarlarını koruyun.
Hata nedenini tetikleyen eyleminin, envanter açma, bir kaynak paketi alma, dünyaları değiştirme veya bir varlığı oluşturma gibi olduğunu kaydedin. Mümkün olduğunda, aynı eylemi ayrı bir test kurulumu kullanarak TCP ve RakNet üzerinde karşılaştırın.
Bazı özel yükler, vanilya paketlerinin sırasına bağlıdır. Mod yazarları bu bağımlılıkları paket sıralama arayüzü aracılığıyla belirtabilirler.
Raknetify2 sorun takipçisi’de bir sorun açın ve şunları ekleyin:
- Her iki taraf için Minecraft, Java, yükleyici ve Raknetify2 sürümleri.
- Sunucu ve proxy yazılım sürümleri, herhangi bir UDP yönlendirme proxy’yi içerir.
- Diğer yüklü modlar ve sürümleri.
- Sorunun ortaya çıkmasını sağlayacak adımlar ve olması beklenen durumlar.
- Aynı adımların TCP üzerinden de çalışıp çalışmadığı.
- Aynı denemeden alınan ilgili istemci, sunucu ve proxy günlük örnekleri.
Gönderim yapmadan önce erişim jetleri, şifreler ve diğer özel bilgileri kaldırın. Sorunu teşhis etmek için gerekli olan istisna mesajlarını ve hata izlerini koruyun.
Raknetify2, modların hangi Minecraft trafiğinin kendi özel yükleriyle düzenli kalması gerektiğini belirlemelerine olanak tanır. Bir yükün işlenmesi, önceki paketler tarafından oluşturulan bir varlık, parça, envanter veya başka bir durum gerektirdiğinde bunu kullanın.
| Grup oluşturma | İlgili trafik |
|---|---|
ui |
Dünya dışı menüler ve etkileşimler |
entity |
Varlık oluşturma, kaldırma ve hareket etme |
world_interaction |
Envanterler ve dünyaya bağlı diğer etkileşimler |
effects |
Sesler ve parçacıklar |
chunk |
Arazi, blok ve aydınlatma güncellemeleri |
Tüm gruplar, kendi kanallarında güvenilir ve düzenli bir teslimat sağlar. Farklı gruplardaki paketler farklı bir sırayla gelişebilir. Paylağın bağımlılığına uygun olan grubu seçin.
Modunuzun fabric.mod.json dosyasındaki raknetify:packet_channels giriş noktasının altına bir sağlayıcı ekleyin. Bu sağlayıcı, JDK tiplerini kullanarak Consumer<BiConsumer<String, String>> sınıfını uygular. Sağlayıcı, özel bir payload tanımlayıcısını ve bir sıralama grubunu kabul eden bir kayıtçıyı alır.
Bu kaydı mevcut metadatalarınıza ekleyin ve sınıf adını sağlayıcınızın tam nitelikli adıyla değiştirin:
{
"entrypoints": {
"raknetify:packet_channels": [
"com.example.mod.OrderingProvider"
]
}
}fabric.mod.json dosyasının geri kalanını, mevcut giriş noktaları dahil olmak üzere koruyun. Bu, metadata dosyasının bir bölümüdür.
Örneğin, bir varlık hareketi uzantısı example:entity_path adresini entity grubu ile kaydedebilir. PacketOrdering API dokümantasyonu bu sağlayıcı uygulamasını içerir.
Raknetify2 yokken, Fabric bu giriş noktasını çağırmaz. Sunucular, başlangıç sırasında tanımlayıcıları ve grupları, başka bir modun başlangıcını tamamlamasını beklemeden bildirmelidir.
Forge ve NeoForge modları ile sunucu veya proxy eklentileri, Raknetify2 mevcut olduğunda başlatma sırasında PacketOrdering.register(identifier, group) fonksiyonunu çağırabilir. Bu sınıfın adı com.ishland.raknetify.api.PacketOrdering’dır. Oyuncu bağlantıları kabul etmeden önce kaydı yapın ve bağımlılık mevcut değilse Raknetify2 sınıflarının yüklenmesini engelleyin.
Deklarasyonlar yeni bağlantılar için geçerlidir. Mevcut bağlantılar, kurulum sırasında aldıkları kuralları korurlar. Aynı deklarasyonun tekrarlanmasına izin verilir. Aynı tanımlayıcı için çelişen gruplar reddedilir.
Payload tanımlayıcıları geçerli bir özel adlandırma alanı kullanmalıdır. minecraft adlandırma alanı ayrılmıştır. Endpoint genelinde, yerleşik kurallar ve diğer modlardan gelen kayıtlar dahil olmak üzere toplam 128 tanım yapılabilir. Tanımlayıcılar, API’nin adlandırma alanıyla ilgili sözdizimini kullanarak 255 ASCII karakteri içerebilir.
Güncellenmiş RakNet eşlerleri, bağlantı kurma sırasında bildirimler alışverişinde bulunur. Bir sunucu veya proxy, o veri paketi için yerel bir kuralı olmadığında bir eşin bildirimini kullanabilir. Yerel kurallar öncelikli olur ve bir eşin bildirimleri yalnızca o bağlantı için geçerlidir.
UDP relayleri ve iletilen istemci adresleri için UDP yönlendirme ve PROXY protokolü bölümüne bakınız.
Minecraft proxy kurulumu için bkz. Velocity ve BungeeCord.