vProject
Bir Kömür Göründü Kaptanım!
Velocity, BungeeCord'un hantallığından kurtulmak isteyenler için modern, hızlı ve güvenli bir alternatiftir. Bu rehberde sadece "kurmayı" değil, "en iyi şekilde yönetmeyi" öğreneceksin.
1. Temel Kurulum ve Modern Bağlantı (Modern Forwarding)
Velocity'nin en büyük avantajı Modern Forwarding sistemidir. Bu sistem, oyuncu verilerini (IP, UUID) backend sunucularına (Lobi, Skyblock vb.) şifreli ve güvenli bir şekilde aktarır.
Adım 1: Dosyaların Hazırlanması
Adım 2: İlk Çalıştırma ve velocity.toml Ayarı
Sunucuyu bir kez başlatıp kapat. Oluşan velocity.toml dosyasını şu şekilde yapılandır:
Adım 3: Backend Sunucuları Bağlama (Paper/Purpur)
Backend sunucularının (Lobi vb.) paper-global.yml (1.19+) veya paper.yml (eski sürümler) dosyasında şu ayarı yap:
Not: forwarding.secret dosyasındaki kodu buraya kopyala.
2. Başlatma Satırı (Flaglar)
Velocity için en iyi JVM flagları (Aikar'ın flaglarının Velocity versiyonu):
3. Güvenlik ve Açık Kapatma:
Çoğu sunucu "Port Açığı" yüzünden patlar. Velocity kullanıyorsan şu adımları asla atlama:
1. Portları Dışarı Kapatmak (En Önemli Adım)
Backend sunucularının (Lobi, Skyblock vb.) portlarını asla dışarıya açma.
Yanlış: server.properties -> server-ip=0.0.0.0
Doğru: server.properties -> server-ip=127.0.0.1
Bu sayede oyuncular sadece Velocity üzerinden (25565'ten) girebilir. Port taramasıyla direkt lobiye sızamazlar.
Velocity-Unique-IP Açığı:
Eğer biri senin backend IP'ni bulursa ve proxy kullanıyormuş gibi davranırsa sızabilir. Bunu engellemek için BungeeGuard veya Velocity'nin kendi Modern Forwarding Secret yapısını her sunucuda aktif etmelisin.
1. Ağ ve Paket Optimizasyonu (Network Tuning)
A. Buffer ve İş parçacığı (Threads)
read-timeout = 10000: Boşta bekleyen bağlantıları 10 saniyede keser. Botların RAM'i şişirmesini önler.
compression-level = 1: Eğer işlemcin orta seviye ise bunu 1 yap. Dosya boyutu azıcık artar ama işlemci yükü sıfıra iner.
haproxy = false: Eğer önünde bir BGP koruması veya TCP Shield yoksa bunu sakın açma, yoksa kimse bağlanamaz.
B. Linux Kernel Optimizasyonu (VDS Kullananlar İçin)
Sunucun Linux (Ubuntu/Debian) ise, terminale sysctl -al yazıp şu değerleri optimize ederek ağ paket hızını %20 artırabilirsin:
2. Derinlemesine Güvenlik: "Görünmezlik" Protokolü
Sadece port kapatmak yetmez, profesyoneller şu yöntemleri kullanır:
A. "Query" Açığını Kapatmak
Birçok saldırgan, sunucu bilgilerini çekmek için kullanılan query (25565 portu) üzerinden sunucuyu yorar.
velocity.toml içinde: query-enabled = false yap (Eğer liste sitelerinde görünmen gerekmiyorsa).
Gerekiyorsa portu değiştir: query-port = 25600.
B. Forced Host ve IP Limiti
player-info-forwarding-mode = "modern" iken mutlaka velocity.toml içinde şuna bak:
haproxy = true/false: Eğer arkada bir firewall varsa gerçek IP'leri görmek için bunu doğru yapılandır. Gerçek IP'yi göremezsen bot korumaları bir işe yaramaz.
3. Gelişmiş Eklenti Yapılandırması (Stack)
Velocity'nin üzerine binmemesi gereken yükler vardır. İşte ideal "Velocity Plugin Stack":
MiniMOTD: Sunucu listesini (MOTD) en performanslı şekilde yöneten budur. Resimleri optimize eder, RAM yemez.
LuckPerms Velocity: Yetkileri tüm sunucularda tek merkezden yönet. (MySQL/MariaDB bağlaman şart).
VelocityVanish: Eğer bir yetkili sunucular arası geçiş yapıyorsa, "X sunucusuna bağlandı" mesajını gizler.
LimboFilter / BotSentry: Bot saldırısı başladığında oyuncuları sunucuya almadan önce "Limbo" dediğimiz boşlukta bekletir. Sunucu işlemcisi (Lobi) bu süreçte 0 yük alır.
4. Çakma Lobi (Auth) ve Ana Lobi Geçiş Optimizasyonu
Oyuncular oyuna girerken yaşadıkları o 1-2 saniyelik takılma (lag) genellikle yanlış aktarımdan kaynaklanır:
FastConnect: Velocity eklentileri arasında "FastConnect" tarzı modüller kullanarak oyuncunun ana lobiye aktarılma süresini milisaniyelere düşürebilirsin.
Servers Bölümü:
forced-hosts = { "play.sunucun.com" = ["auth"] }
Burada oyuncuyu direkt auth sunucusuna zorla (forced-host). Eğer oyuncu direkt ana lobiye girmeye çalışırsa Velocity onu engeller.
5. Donanım ve RAM Ayırma (Altın Kural)
Kanka en çok yapılan hata Velocity'ye 8-16 GB RAM vermektir. Velocity bir oyun sunucusu değildir, sadece bir "yönlendiricidir".
İdeal RAM: 1000 oyuncuya kadar 2GB - 4GB RAM yeter de artar.
Fazla RAM verirsen Java'nın Garbage Collector (çöp toplayıcı) sistemi temizlik yaparken sunucuda anlık "spike" (takılma) yaratır.
Son Özet (Pro Tips):
DNS: play.sunucun.com adresini Cloudflare gibi bir sistem üzerinden yönlendir ama Minecraft için SRV kaydı kullanmayı unutma.
Log Temizliği: velocity.toml içinde log-player-connections = false yaparsan, konsol giriş-çıkış mesajlarıyla dolmaz ve disk yazma hızı artar.
Güncellik: Her hafta /velocity version yazıp kontrol et, Velocity çok sık güvenlik güncellemesi alır.
1. Temel Kurulum ve Modern Bağlantı (Modern Forwarding)
Velocity'nin en büyük avantajı Modern Forwarding sistemidir. Bu sistem, oyuncu verilerini (IP, UUID) backend sunucularına (Lobi, Skyblock vb.) şifreli ve güvenli bir şekilde aktarır.
Adım 1: Dosyaların Hazırlanması
-
resmi sitesinden en son .jar dosyasını indir.Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.
- Sunucunda bir klasör oluştur ve içine at.
- Java 21 veya 24 kullandığından emin ol. Velocity eski Java sürümlerinde performans kaybı yaşatır.
Adım 2: İlk Çalıştırma ve velocity.toml Ayarı
Sunucuyu bir kez başlatıp kapat. Oluşan velocity.toml dosyasını şu şekilde yapılandır:
YAML:
bind = "127.0.0.1:25565": Oyuncuların gireceği ana port.
player-info-forwarding-mode = "modern": Burası kritik. Mutlaka modern yapmalısın.
show-max-players = 1000: Sunucu listesinde görünecek kişi sayısı.
Adım 3: Backend Sunucuları Bağlama (Paper/Purpur)
Backend sunucularının (Lobi vb.) paper-global.yml (1.19+) veya paper.yml (eski sürümler) dosyasında şu ayarı yap:
YAML:
proxies:
velocity:
enabled: true
online-mode: false # Velocity üzerinden doğrulama yapılacağı için
secret: "BURAYA_FORWARDING_SECRET_GELECEK"
Not: forwarding.secret dosyasındaki kodu buraya kopyala.
2. Başlatma Satırı (Flaglar)
Velocity için en iyi JVM flagları (Aikar'ın flaglarının Velocity versiyonu):
Bash:
java -Xms1G -Xmx1G -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -jar velocity.jar
3. Güvenlik ve Açık Kapatma:
Çoğu sunucu "Port Açığı" yüzünden patlar. Velocity kullanıyorsan şu adımları asla atlama:
1. Portları Dışarı Kapatmak (En Önemli Adım)
Backend sunucularının (Lobi, Skyblock vb.) portlarını asla dışarıya açma.
Yanlış: server.properties -> server-ip=0.0.0.0
Doğru: server.properties -> server-ip=127.0.0.1
Bu sayede oyuncular sadece Velocity üzerinden (25565'ten) girebilir. Port taramasıyla direkt lobiye sızamazlar.
Velocity-Unique-IP Açığı:
Eğer biri senin backend IP'ni bulursa ve proxy kullanıyormuş gibi davranırsa sızabilir. Bunu engellemek için BungeeGuard veya Velocity'nin kendi Modern Forwarding Secret yapısını her sunucuda aktif etmelisin.
1. Ağ ve Paket Optimizasyonu (Network Tuning)
A. Buffer ve İş parçacığı (Threads)
read-timeout = 10000: Boşta bekleyen bağlantıları 10 saniyede keser. Botların RAM'i şişirmesini önler.
compression-level = 1: Eğer işlemcin orta seviye ise bunu 1 yap. Dosya boyutu azıcık artar ama işlemci yükü sıfıra iner.
haproxy = false: Eğer önünde bir BGP koruması veya TCP Shield yoksa bunu sakın açma, yoksa kimse bağlanamaz.
B. Linux Kernel Optimizasyonu (VDS Kullananlar İçin)
Sunucun Linux (Ubuntu/Debian) ise, terminale sysctl -al yazıp şu değerleri optimize ederek ağ paket hızını %20 artırabilirsin:
Kod:
# TCP bağlantı kuyruğunu artır (Saldırı anında bağlantı kopmasını engeller)
sysctl -w net.core.somaxconn=4096
# Yerel port aralığını genişlet
sysctl -w net.ipv4.ip_local_port_range="1024 65535"
2. Derinlemesine Güvenlik: "Görünmezlik" Protokolü
Sadece port kapatmak yetmez, profesyoneller şu yöntemleri kullanır:
A. "Query" Açığını Kapatmak
Birçok saldırgan, sunucu bilgilerini çekmek için kullanılan query (25565 portu) üzerinden sunucuyu yorar.
velocity.toml içinde: query-enabled = false yap (Eğer liste sitelerinde görünmen gerekmiyorsa).
Gerekiyorsa portu değiştir: query-port = 25600.
B. Forced Host ve IP Limiti
player-info-forwarding-mode = "modern" iken mutlaka velocity.toml içinde şuna bak:
haproxy = true/false: Eğer arkada bir firewall varsa gerçek IP'leri görmek için bunu doğru yapılandır. Gerçek IP'yi göremezsen bot korumaları bir işe yaramaz.
3. Gelişmiş Eklenti Yapılandırması (Stack)
Velocity'nin üzerine binmemesi gereken yükler vardır. İşte ideal "Velocity Plugin Stack":
MiniMOTD: Sunucu listesini (MOTD) en performanslı şekilde yöneten budur. Resimleri optimize eder, RAM yemez.
LuckPerms Velocity: Yetkileri tüm sunucularda tek merkezden yönet. (MySQL/MariaDB bağlaman şart).
VelocityVanish: Eğer bir yetkili sunucular arası geçiş yapıyorsa, "X sunucusuna bağlandı" mesajını gizler.
LimboFilter / BotSentry: Bot saldırısı başladığında oyuncuları sunucuya almadan önce "Limbo" dediğimiz boşlukta bekletir. Sunucu işlemcisi (Lobi) bu süreçte 0 yük alır.
4. Çakma Lobi (Auth) ve Ana Lobi Geçiş Optimizasyonu
Oyuncular oyuna girerken yaşadıkları o 1-2 saniyelik takılma (lag) genellikle yanlış aktarımdan kaynaklanır:
FastConnect: Velocity eklentileri arasında "FastConnect" tarzı modüller kullanarak oyuncunun ana lobiye aktarılma süresini milisaniyelere düşürebilirsin.
Servers Bölümü:
YAML:
[servers]
auth = "127.0.0.1:25566"
lobby = "127.0.0.1:25567"
Burada oyuncuyu direkt auth sunucusuna zorla (forced-host). Eğer oyuncu direkt ana lobiye girmeye çalışırsa Velocity onu engeller.
5. Donanım ve RAM Ayırma (Altın Kural)
Kanka en çok yapılan hata Velocity'ye 8-16 GB RAM vermektir. Velocity bir oyun sunucusu değildir, sadece bir "yönlendiricidir".
İdeal RAM: 1000 oyuncuya kadar 2GB - 4GB RAM yeter de artar.
Fazla RAM verirsen Java'nın Garbage Collector (çöp toplayıcı) sistemi temizlik yaparken sunucuda anlık "spike" (takılma) yaratır.
DNS: play.sunucun.com adresini Cloudflare gibi bir sistem üzerinden yönlendir ama Minecraft için SRV kaydı kullanmayı unutma.
Log Temizliği: velocity.toml içinde log-player-connections = false yaparsan, konsol giriş-çıkış mesajlarıyla dolmaz ve disk yazma hızı artar.
Güncellik: Her hafta /velocity version yazıp kontrol et, Velocity çok sık güvenlik güncellemesi alır.