Minecraft “FAILED TO BIND TO PORT!” hatası, sunucunun dinlemek istediği portu işletim sisteminden alamadığını gösterir. Vakaların büyük bölümünde neden tek ve basittir: o port zaten başka bir süreç tarafından kullanılıyordur. Genellikle de o süreç, düzgün kapanmamış bir önceki Minecraft sunucusudur.
Bu sayfada hatanın tam metnini, portu tutan süreci Windows ve Linux üzerinde bulma yöntemlerini, süreci sonlandırma adımlarını ve aynı makinede birden fazla sunucu çalıştırırken port planlamasını bulacaksınız.
Hatanın Birebir Metni#
[16:03:22] [Server thread/WARN]: **** FAILED TO BIND TO PORT!
[16:03:22] [Server thread/WARN]: The exception was: java.net.BindException: Address already in use: bind
[16:03:22] [Server thread/WARN]: Perhaps a server is already running on that port?
[16:03:22] [Server thread/ERROR]: Encountered an unexpected exception
java.lang.IllegalStateException: Failed to initialize server
Linux üzerinde mesajın alt satırı biraz farklıdır:
The exception was: java.net.BindException: Address already in use
The exception was: java.net.BindException: Cannot assign requested address
Address already in use port doludur demektir. Cannot assign requested address ise server-ip satırına makinede bulunmayan bir IP yazıldığını gösterir; o satırı boşaltmak sorunu çözer.Neden Olur? Belirti, Neden ve Çözüm Tablosu#
| Belirti | Olası neden | Çözüm |
|---|---|---|
Address already in use | Port başka bir süreçte | Süreci bulun ve sonlandırın |
Cannot assign requested address | server-ip makinede olmayan bir adres | server-ip= satırını boşaltın |
Permission denied | 1024 altı port, yetki yok | 25565 gibi yüksek bir port kullanın |
| Sunucu kapattıktan hemen sonra hata | Java süreci hâlâ ayakta ya da TIME_WAIT | Süreci sonlandırın, bir dakika bekleyin |
| İki sunucu aynı klasörden başlatılıyor | Aynı port iki kez isteniyor | İkinci sunucuya 25566 verin |
| Query veya RCON portu çakışıyor | query.port / rcon.port dolu | Üç portu da farklılaştırın |
| Panelde bind hatası | Allocation portu ile server-port uyuşmuyor | Panelin verdiği portu kullanın |
Adım Adım Çözüm#
-
Portu tutan süreci bulun#
Windows tarafında komut isteminde:
netstat -ano | findstr :25565 # TCP 0.0.0.0:25565 0.0.0.0:0 LISTENING 8124 Get-Process -Id 8124 | Select-Object Id,ProcessName,PathLinux tarafında:
sudo ss -tulpn | grep 25565 # tcp LISTEN 0 128 *:25565 *:* users:(("java",pid=3241,fd=42)) sudo lsof -i :25565 ps -fp 3241Çıktıdaki süreç kimliği (PID) ve program adı, kimin portu tuttuğunu net biçimde gösterir.
-
Süreci sonlandırın#
Süreç eski bir Minecraft sunucusuysa önce düzgün kapatmayı deneyin. Konsola erişiminiz varsa
stopkomutu her zaman ilk tercihtir; dünya verisi güvenli biçimde kaydedilir.Stop-Process -Id 8124 taskkill /PID 8124 /Fkill 3241 # yanıt vermezse kill -9 3241Uyarıkill -9vetaskkill /Fsüreci anında öldürür; kaydedilmemiş chunk verileri kaybolur ve bölge dosyaları bozulabilir. Bu yöntemi yalnızca sunucustopkomutuna cevap vermiyorsa kullanın ve öncesinde yedek alın. -
Sunucuyu doğru yöntemle kapatma alışkanlığı edinin#
Konsol penceresinin çarpısına basmak Java sürecini her zaman sonlandırmaz. Doğru yol konsola
stopyazmaktır. Sunucu bir servis olarak çalışıyorsa:sudo systemctl stop minecraft sudo systemctl status minecraft --no-pagerStop-Service -Name "MinecraftServer" Get-Service -Name "MinecraftServer"Servis kurulumu için systemd servisi oluşturma ve Windows servisi olarak çalıştırma sayfalarına bakın.
-
Gerekirse farklı bir port atayın#
Portu tutan süreç kapatılamıyorsa ya da başka bir sunucu kalıcı olarak orayı kullanıyorsa sunucunuza yeni bir port verin:
server-port=25566 query.port=25566 enable-query=false enable-rcon=falseYeni portu güvenlik duvarında da açmayı unutmayın:
sudo ufw allow 25566/tcp sudo ufw reloadNew-NetFirewallRule -DisplayName "Minecraft 25566 TCP" -Direction Inbound ` -Protocol TCP -LocalPort 25566 -Action Allow -
Sunucunun gerçekten dinlemeye başladığını doğrulayın#
[16:07:41] [Server thread/INFO]: Starting Minecraft server on *:25566 [16:07:43] [Server thread/INFO]: Done (11.204s)! For help, type "help"Bu iki satır arka arkaya basıldıysa bind işlemi başarılıdır. Oyuncular artık
adres:25566biçiminde bağlanacaktır.
Standart Olmayan Port Kullanırken Dikkat Edilecekler#
25565 dışında bir port kullanmaya karar verdiyseniz oyuncuların adresi sunucu.com:25566 biçiminde yazması gerekir. Bunu gizlemenin yolu SRV kaydıdır:
Tip: SRV
İsim: _minecraft._tcp.sunucu.com
Öncelik: 0
Ağırlık: 5
Port: 25566
Hedef: mc.sunucu.com
SRV kaydı sayesinde oyuncular yalnızca sunucu.com yazarak bağlanır. DNS yapılandırma adımları domain bağlama ve SRV kaydı sayfasında anlatıldı.
Aynı Makinede Birden Fazla Sunucu#
Bir sunucu ağı kuruyorsanız port planlaması baştan yapılmalıdır. Örnek bir düzen:
| Sunucu | Port | Dışa açık mı? | Not |
|---|---|---|---|
| Velocity proxy | 25565/TCP | Evet | Oyuncular yalnızca buraya bağlanır |
| Lobby | 25566/TCP | Hayır | Güvenlik duvarında kapalı |
| Survival | 25567/TCP | Hayır | Güvenlik duvarında kapalı |
| Skyblock | 25568/TCP | Hayır | Güvenlik duvarında kapalı |
| Bedrock (Geyser) | 19132/UDP | Evet | Çapraz platform için |
online-mode=false ile çalışan bir alt sunucunun portu açıksa herkes istediği isimle o sunucuya girebilir. Alt sunucuları yalnızca 127.0.0.1 üzerinden erişilebilir kılmak en güvenli yaklaşımdır. Kurulum ayrıntıları proxy kurulum sayfasındadır.Alt sunucuları yalnızca yerel arayüze bağlamak için:
server-ip=127.0.0.1
server-port=25566
Bu, tek sunucu senaryosunda yapılmaması gereken bir ayardır; ancak proxy arkasındaki alt sunucular için doğrudur ve güvenliği artırır.
Port Çakışmasının Diğer Kaynakları#
Minecraft dışındaki yazılımlar da 25565 portunu kullanabilir. Nadir ama görülen durumlar:
- Panel daemon’ı: Pterodactyl Wings ya da Crafty Controller kendi yönettiği sunucuları arka planda başlatmış olabilir.
- Docker konteyneri: Durdurulduğu sanılan bir konteyner hâlâ port eşlemesini tutuyor olabilir.
docker ps -aile kontrol edin. - Windows Görev Zamanlayıcı: Açılışta çalışan bir
start.batgörevi sunucuyu siz farkında olmadan başlatmış olabilir. - Hyper-V dinamik port aralığı: Windows Server üzerinde bazı sanallaştırma bileşenleri geniş port aralıklarını rezerve eder.
Windows’ta rezerve edilmiş port aralıklarını görmek için:
netsh interface ipv4 show excludedportrange protocol=tcp
25565 bu listedeki bir aralığın içine düşüyorsa port işletim sistemi tarafından ayrılmıştır ve kullanılamaz; farklı bir port seçmeniz gerekir.
Gerekirse İndirilecekler#
-
Paper 26.2 sunucu jarİndir
-
NSSM (Windows servis yöneticisi)Windowsİndir
-
Velocity ProxyKararlı: 4.0.0İndir
Bağlantılar resmî kaynaklara gider. Üçüncü taraf sitelerden jar indirmeyin.
Tekrarını Önlemek#
Bind hatası genellikle bir alışkanlık sorunudur. Şu üç düzenleme tekrar yaşanmasını büyük ölçüde engeller:
- Servis kullanın
- Sunucuyu systemd veya Windows servisi olarak çalıştırın; çift başlatma engellenir, kapatma güvenilir olur.
- Başlatma betiğine kontrol ekleyin
- Port doluysa betiği durdurun. Linux için:
ss -tln | grep -q :25565 && { echo "Port dolu"; exit 1; } - Her sunucuya sabit port verin
- Ağınızdaki tüm sunucuların port listesini bir dosyada tutun; yeni sunucu eklerken çakışma olmaz.
Sunucunuzu 7/24 kesintisiz çalıştırmak istiyorsanız ev makinesi yerine yönetimli bir altyapı çok daha az sorun çıkarır. Türkiye lokasyonlu Minecraft sunucu paketlerinde port yönetimi panel üzerinden yapılır ve çakışma riski ortadan kalkar.
İlgili Hata Sayfaları#
- Connection Refused hatası — sunucu açılmadığı için bağlanılamıyorsa.
- Unable to access jarfile hatası — sunucu hiç başlamıyorsa.
- EULA hatası — sunucu açılıp hemen kapanıyorsa.
- Tüm Minecraft sunucu hataları ve çözümleri — pillar rehber.
Özetle#
FAILED TO BIND TO PORT hatası, istenen portun alınamadığını söyler ve teşhisi hızlıdır. Önce netstat veya ss ile portu tutan süreci bulun; genelde düzgün kapanmamış bir önceki Minecraft sunucusudur. Süreci sonlandırın, mümkünse stop komutuyla düzgün kapatın. Port kalıcı olarak başka bir yazılımdaysa server-port değerini değiştirip güvenlik duvarında yeni portu açın. Birden fazla sunucu çalıştırıyorsanız baştan bir port planı yapın ve alt sunucu portlarını dışarıya kapatın.