Minecraft sunucu port yönlendirme, ev ağınızdaki bir bilgisayarda çalışan sunucuya internetten gelen bağlantıların ulaşabilmesi için modeminize yazdığınız yönlendirme kuralıdır. Java Edition sunucusu varsayılan olarak 25565/TCP, Bedrock sunucusu ise 19132/UDP portunu dinler. Modeminiz dışarıdan bu porta gelen isteği hangi yerel cihaza ileteceğini bilmediği sürece arkadaşlarınız "Connection timed out" hatasından öteye geçemez.
Bu rehberde portun hangi katmanlarda açılması gerektiğini, modem arayüzünde kuralın nasıl yazıldığını, portun gerçekten açık olduğunu nasıl doğrulayacağınızı ve Türkiye’deki en yaygın engel olan CGNAT’ı nasıl teşhis edeceğinizi adım adım göreceksiniz. Kiralık bir sunucu kullanıyorsanız işiniz çok daha kısa: modem ve NAT devrede olmadığı için yalnızca işletim sistemi güvenlik duvarındaki kuralı açmanız yeterli.
Minecraft Hangi Portları Kullanır?#
Sunucu yazılımına ve etkinleştirdiğiniz özelliklere göre birden fazla port devreye girer. Hepsini birden açmak gerekmez; yalnızca gerçekten kullandıklarınızı açın.
| Servis | Port | Protokol | Dışarı açılmalı mı? |
|---|---|---|---|
| Java Edition oyun bağlantısı | 25565 | TCP | Evet, zorunlu |
| Query (sunucu listesi sorgusu) | 25565 | UDP | Yalnızca enable-query=true ise |
| Bedrock / MCPE (IPv4) | 19132 | UDP | Bedrock sunucusunda zorunlu |
| Bedrock / MCPE (IPv6) | 19133 | UDP | IPv6 kullanıyorsanız |
| RCON (uzaktan konsol) | 25575 | TCP | Hayır, internete açmayın |
| Velocity / BungeeCord proxy | 25577 | TCP | Yalnızca proxy dışarıdaysa |
| Pterodactyl panel arayüzü | 80 / 443 | TCP | Panel kullanıyorsanız |
Bir sunucu ağı kuruyorsanız yalnızca proxy’nin portu dışarı açılır; arka plandaki alt sunucular kesinlikle internete açılmamalıdır. Bu mimariyi BungeeCord ve Velocity ile sunucu ağı kurulumu sayfasında ayrıntılı anlattık.
Port Açmanın Üç Katmanı#
Bir bağlantının oyuncudan sunucuya ulaşması için üç kapıdan geçmesi gerekir. Sorun yaşayanların çoğu bunlardan yalnızca birini açıp diğerlerini atlamıştır.
- 1. Sunucu yazılımı
- Java süreci portu gerçekten dinliyor olmalı.
server.propertiesiçindekiserver-portdoğru,server-ipise boş olmalı. - 2. İşletim sistemi güvenlik duvarı
- Windows Defender Güvenlik Duvarı veya UFW/firewalld, gelen 25565 bağlantısına izin vermeli.
- 3. Modem / router NAT
- Yalnızca ev bağlantısında geçerli. Dış IP’ye gelen 25565 isteği doğru yerel IP’ye yönlendirilmeli.
Üçüncü katman kiralık sunucularda yoktur. İkinci katman ise her yerde vardır ve en sık atlanan adımdır. İşletim sistemine göre ayrıntı için Windows Güvenlik Duvarında Minecraft portu açma ya da UFW ile Minecraft sunucu portunu açma sayfasına geçin; genel firewall mantığı için sunucu güvenlik duvarı yapılandırması rehberi işinizi görür.
Adım Adım Modemden 25565 Portunu Açma#
-
Sunucunun yerel IP adresini öğrenin#
Sunucunun çalıştığı makinede, işletim sistemine göre şu komutu çalıştırın. Aradığınız değer 192.168.x.x veya 10.x.x.x ile başlayan adrestir.
ipconfig | findstr /i "IPv4 Varsayılan"ip -4 addr show | grep inet ip route | grep default -
Yerel IP’yi DHCP rezervasyonuyla sabitleyin#
Modem, cihazlara IP’yi kira süresiyle dağıtır. Sunucu makinesi yeniden başladığında IP değişirse yönlendirme kuralınız başka bir cihaza gider. Modem arayüzünde DHCP > Adres Ayırma / Address Reservation bölümünden sunucunun MAC adresine sabit bir IP bağlayın. Alternatif olarak işletim sistemi tarafında statik IP tanımlayabilirsiniz.
-
Modem arayüzüne girin#
Tarayıcıya varsayılan ağ geçidi adresini yazın; Türkiye’de en yaygın değerler
192.168.1.1ve192.168.0.1. Kullanıcı adı ve parola çoğu modemde cihazın altındaki etikette yazar. Değiştirmediyseniz ilk iş olarak parolayı değiştirin. -
Port yönlendirme kuralını oluşturun#
Kural alanlarını şu şekilde doldurun: Kural adı Minecraft, WAN/Harici başlangıç-bitiş portu 25565–25565, LAN/Dahili port 25565, Hedef IP sunucunun sabitlenmiş yerel IP’si, Protokol TCP. Bedrock sunucusu için aynı kuralı 19132 ve UDP ile tekrarlayın.
-
Sunucudaki güvenlik duvarına izin kuralı ekleyin#
Modem kuralı tek başına yetmez; paket sunucuya ulaştığında işletim sistemi güvenlik duvarı tarafından da kabul edilmelidir.
New-NetFirewallRule -DisplayName "Minecraft 25565" -Direction Inbound -Protocol TCP -LocalPort 25565 -Action Allowsudo ufw allow 25565/tcp comment 'Minecraft Java' sudo ufw reload -
Dışarıdan test edin#
Aynı ağdan yapılan test yanıltıcıdır; birçok modem kendi WAN IP’sine içeriden gelen isteği geri döndürmez (NAT loopback yokluğu). Mobil veriye bağlı bir cihazdan veya bir arkadaşınızın bağlantısından deneyin.
Türkiye’de Yaygın Modemlerde Menü Adları#
Port yönlendirme her markada farklı adlandırılır. Aşağıdaki tablo, sık karşılaşılan cihazlarda bu ekranın nerede olduğunu gösterir. Firmware sürümüne göre adlar bir miktar değişebilir; "Port Forwarding", "Virtual Server", "Port Mapping" ve "NAT" kelimelerinden birini arayın.
| Cihaz ailesi | Menü yolu | Kural adı |
|---|---|---|
| ZTE (Türk Telekom) | Internet > Güvenlik > Port Yönlendirme | Port Forwarding |
| Huawei HG / EchoLife | Forward Rules > Port Mapping Configuration | Port Mapping |
| TP-Link Archer | Gelişmiş > NAT Yönlendirme > Sanal Sunucular | Virtual Server |
| Zyxel VMG | Network Setting > NAT > Port Forwarding | Port Forwarding |
| AirTies Air serisi | Uygulamalar > Port Yönlendirme | Port Yönlendirme |
| Asus RT serisi | WAN > Sanal Sunucu / Bağlantı Noktası Yönlendirme | Port Forwarding |
server.properties Tarafında Yapılması Gerekenler#
Modem ve güvenlik duvarı doğru olsa bile sunucu yanlış arayüzü dinliyorsa bağlantı kurulmaz. Sunucu klasöründeki server.properties dosyasında şu satırlara bakın.
server-ip=
server-port=25565
enable-query=false
query.port=25565
enable-rcon=false
rcon.port=25575
online-mode=true
network-compression-threshold=256
server-ip satırı boş olmalıdır. Boş bırakıldığında sunucu tüm ağ arayüzlerini dinler. Buraya 127.0.0.1 yazılırsa sunucuya yalnızca kendi makinesinden bağlanılabilir; dışarıdan gelen herkes "Connection refused" alır. Tüm parametrelerin anlamı için server.properties ayarları tam listesi sayfasına bakın.
Portu değiştirdiyseniz sunucuyu yeniden başlatmayı unutmayın; bu dosya yalnızca açılışta okunur. Port zaten başka bir süreç tarafından kullanılıyorsa sunucu Failed to bind to port hatasıyla kapanır; bu durumda Failed to Bind to Port hatası çözümü sayfasındaki adımları uygulayın.
Portun Açık Olduğunu Doğrulama#
Sunucunun kendi üzerinde: port dinleniyor mu?#
İlk kontrol her zaman sunucunun kendisindedir. Java süreci portu gerçekten açmış mı bakın.
netstat -ano | findstr :25565
Get-Process -Id (Get-NetTCPConnection -LocalPort 25565).OwningProcess
sudo ss -tulpn | grep 25565
Çıktıda 0.0.0.0:25565 veya [::]:25565 görüyorsanız sunucu tüm arayüzleri dinliyordur, doğru. 127.0.0.1:25565 görüyorsanız server-ip satırı doldurulmuş demektir.
Dışarıdan: porta bağlanılabiliyor mu?#
Test-NetConnection 88.99.100.101 -Port 25565
nc -zv 88.99.100.101 25565
timeout 3 bash -c "</dev/tcp/88.99.100.101/25565" && echo "Port acik"
Sonuç TcpTestSucceeded : True ya da succeeded ise port açıktır ve sorun başka yerdedir. Bağlantı reddediliyorsa güvenlik duvarı veya sunucu kapalıdır; zaman aşımına uğruyorsa paket hiç ulaşmıyordur. Bu iki hatanın ayrımını Connection Refused hatası ve Connection Timed Out hatası sayfalarında ayrıntılı ele aldık.
PuTTY’de bağlantı türünü "Raw" seçip IP ve 25565 yazarak portun cevap verip vermediğini görebilirsiniz. Bağlantılar resmî kaynaklara gider.
CGNAT: Port Bir Türlü Açılmıyorsa#
Her şeyi doğru yaptığınız hâlde port dışarıdan kapalı görünüyorsa, ihtimallerin başında CGNAT (Carrier-Grade NAT) gelir. Servis sağlayıcı, IPv4 adresi kıtlığı nedeniyle tek gerçek IP’yi çok sayıda aboneyle paylaştırır. Bu durumda modeminizin WAN tarafındaki adres bile gerçek bir internet adresi değildir ve dışarıdan gelen bağlantı size ulaşmadan sağlayıcının cihazında düşer.
30 saniyede CGNAT testi#
-
Modemin WAN IP’sini not edin#
Modem arayüzünde Durum / WAN ekranındaki IP adresini yazın.
-
Gerçek dış IP’nizi öğrenin#
curl -4 ifconfig.me -
İki değeri karşılaştırın#
İkisi aynıysa gerçek IP’niz var, port yönlendirme çalışabilir. Farklıysa ve modemdeki adres
100.64.0.0/10(yani 100.64–100.127 arası),10.x.x.xveya172.16–172.31.x.xaralığındaysa CGNAT arkasındasınız.
İki gerçek çözüm vardır: sağlayıcınızdan gerçek (statik) IP talep etmek ya da sunucuyu kamu IP’li bir makinede barındırmak. İkincisi hem daha ucuz hem de kalıcıdır; ev bağlantınızın upload hızı, kesintileri ve elektrik dalgalanmaları da denklemden çıkar. Minecraft sunucu paketleri ve VDS çözümleri kendi kamu IP’si ve açık portlarla teslim edilir, üstelik 156 TL’den başlayan fiyatlarla.
Kiralık Sunucuda Port Açma: Kısa Yol#
VDS veya dedicated sunucuda modem katmanı yoktur. Yapmanız gereken tek şey işletim sistemi güvenlik duvarında kuralı açmak ve gerekiyorsa sağlayıcının ağ filtresinde portu izinli hâle getirmektir.
# Ubuntu / Debian
sudo ufw allow 25565/tcp
sudo ufw allow 19132/udp # yalnizca Bedrock veya Geyser kullaniyorsaniz
sudo ufw status numbered
# AlmaLinux / Rocky
sudo firewall-cmd --permanent --add-port=25565/tcp
sudo firewall-cmd --reload
Windows Server tarafında aynı işi Gelişmiş Güvenlik Özellikli Windows Defender Güvenlik Duvarı üzerinden bir gelen kuralla yaparsınız. Panelli bir kurulum kullanıyorsanız (Pterodactyl gibi) port ataması panel tarafından yapılır; sunucu oluştururken atanan portu değiştirmeniz gerekmez.
Port Yönlendirmede En Sık Yapılan 6 Hata#
- Yerel IP’yi sabitlememek. Bilgisayar yeniden başlar, IP değişir, kural başka cihaza gider. DHCP rezervasyonu şart.
- Yanlış protokol seçmek. Java Edition TCP’dir, Bedrock UDP. "Both" seçeneği çalışır ama gereksiz yüzey açar.
- Modem kuralı açıp güvenlik duvarını unutmak. Paket sunucuya ulaşır ama işletim sistemi düşürür; sonuç yine zaman aşımı.
- Aynı ağdan test etmek. Modemlerin çoğu NAT loopback desteklemez; içeriden dış IP’ye bağlanamamanız portun kapalı olduğu anlamına gelmez.
- Çift NAT. Fiber modemin arkasına ikinci bir router taktıysanız kuralı iki cihazda da yazmanız ya da birini köprü (bridge) moduna almanız gerekir.
server-ipalanını doldurmak. Bu satır boş bırakılmalıdır; buraya dış IP yazmak da yaygın ve yanlış bir alışkanlıktır.
Tek Makinede Birden Fazla Sunucu: Port Planı#
Aynı makinede survival, creative ve test sunucusu gibi birden çok örnek çalıştıracaksanız her birine ayrı bir port vermeniz gerekir. İki süreç aynı portu dinleyemez; ikincisi açılışta hata verip kapanır. Basit ve karışmayan bir plan şöyledir.
| Örnek | Oyun portu | Klasör | Not |
|---|---|---|---|
| Survival | 25565/TCP | /survival | Ana sunucu, SRV kaydı gerekmez |
| Creative | 25566/TCP | /creative | SRV kaydı ile port gizlenebilir |
| Test | 25567/TCP | /test | Dışarı açmayın, whitelist açık tutun |
| Velocity proxy | 25577/TCP | /proxy | Ağ kuruyorsanız yalnızca bu açılır |
Her örneğin kendi server.properties dosyasında server-port değerini ayrı ayrı ayarlayın. Yalnızca oyuncuya açık olacak örnekler için modem ve güvenlik duvarı kuralı yazın; test sunucusuna sunucunun kendi üzerinden veya SSH tüneliyle bağlanmak hem güvenli hem pratiktir. RAM planlamasını da unutmayın: her örnek kendi JVM’ini açar ve heap değerleri toplanır. İki örneği birlikte çalıştıracaksanız makinede en az 16 GB bellek bulundurun, her örneğe ayrı ayrı -Xms6G -Xmx6G verin.
Portu Oyunculardan Gizlemek: SRV Kaydı#
25565 dışında bir port kullanıyorsanız oyuncular adresi sunucum.com:25572 biçiminde yazmak zorunda kalır. Bu hem akılda kalıcılığı düşürür hem de hata payını artırır. Çözüm, domaininize bir SRV kaydı eklemektir: Java Edition istemcisi bağlanmadan önce _minecraft._tcp kaydını sorgular ve portu kendisi bulur. Nasıl yapıldığını Minecraft sunucusuna domain bağlama ve SRV kaydı sayfasında adım adım anlattık.
Sunucuyu sıfırdan kuruyorsanız ve port ayarını kurulum sırasında halletmek istiyorsanız Minecraft sunucu kurulumu tam rehberi baştan sona akışı gösterir. Bedrock tarafı için port ve protokol farkları Minecraft PE / Bedrock sunucu kurulumu sayfasında.
Özetle#
Minecraft port açma işi üç katmanlı bir zincirdir: sunucu yazılımı portu dinlemeli, işletim sistemi güvenlik duvarı izin vermeli, ev bağlantısındaysanız modem de yönlendirmeli. Java için 25565/TCP, Bedrock için 19132/UDP açılır; RCON portu dışarı açılmaz. Kuralı yazmadan önce sunucunun yerel IP’sini DHCP rezervasyonuyla sabitleyin, testi mutlaka farklı bir ağdan yapın. Her şey doğru göründüğü hâlde port kapalıysa modemin WAN IP’si ile gerçek dış IP’nizi karşılaştırın; farklıysa CGNAT arkasındasınız ve tek kalıcı çözüm kamu IP’li bir sunucudur.