Oyun Sunucusu İçin Öneri

Merhabalar,

Ben Minecraft sunucusu kurup birkaç arkadaşım ile beraber oynamayı planlıyorum. Ancak Türkiye’deki İSS’lerde CGNAT belası var ve port yönlendirme yapmak statik IP almadan mümkün değil. Şu anda statik IP alma imkanım bulunmadığı için sunucu önerisi bekliyorum.

Açıkçası internette yaptığım araştırmalar ve birkaç yere sormamdan sonra genel öneri şu yönde:
Bir VPS sunucu kiralayıp içine VPN kurmak, Minecraft sunucusunun kurulu olduğu bilgisayarı bu VPN’e bağlayıp oranın IP’si ile Minecraft sunucusunu başlatıp arkadaşlarımın o IP ile bağlanmasını sağlamak.
İkinci bir yol olarak ise ZeroTier gibi Hamachi alternatifi bir yazılım kullanarak (çünkü daha iyi olduğunu söylediler) onun üzerinden bağlanmak. Ancak böyle yazılımlarda bağlanan kişi sayısı çok olduğu ve lokasyon uzak olduğu için ping yüksek olabiliyor.
Üçüncü bir yol ise ngrok adlı bir ters proxy yazılımı ile tünelleme yapmak. Ancak bu yazılım anladığım kadarıyla hem kapalı kaynak hem de aynı Hamachi ve türevleri gibi bir sunucuya veya alan adına bağlanmayı sağlıyor, bu da bana yine lokasyon olarak uzak kalması nedeniyle cazip gelmedi. Arkadaşlarım ve ben biraz gecikme takıntılıyız o yüzden bu konu bizim için önemli.

İnternette ngrok alternatifi olarak frp diye bir yazılım daha gördüm sanırım aynı işi yapıyor. Ancak bunun da ya kullanılışını çözemedim ya da uzak sunucu veya alan adı gibi bir faktör eksik olduğu için bağlanılamıyor. Eğer ki bunlardan biri eksikse zaten sunucu alıp VPN kurmak daha mantıklı duruyor.

Size sorularım şunlar:
1- Türkiye lokasyonlu VPS sunucusu ben bulamadım, varsa nereyi önerirsiniz?
2- Türkiye’de VDS sunucular oluyor genelde, küçük bir tane VDS alıp içine WireGuard kurmak mantıklı mı ve firmalar güvenilir mi?
3- Türkiye’deki sunucuların içine VPN kurabilmek mümkün mü? Değilse boşuna para vermeyeyim.
4- Eğer Türkiye lokasyonlu sunucular mantıklı değilse en yakın lokasyonu kiralayabileceğim ve gecikmesi nispeten düşük olacak bir yer önerebilir misiniz?
5- Maliyet büyük bir sorun olmamakla beraber Minecraft sunucusunu direkt olarak içine kurabileceğim GPU’suz büyük bir VDS kiralamak ne kadar mantıklı ve güvenilir?

Merhaba, aternos tarzında bu işi ücretsiz sunan çözümleri denemek ister misiniz?

Bu tip bir istek için bence fazlasıyla yeterli olur diye düşünüyorum :innocent:

2 Likes

Adını çok duymama rağmen hem sırada beklemek hem de arkadaşlarımın deneyimine göre gecikme sorunları çok olduğu için maalesef tercih edemeyiz. Açıkçası bizim ücret konusunda sorunumuz da yok, yani sunucu kurmayı göze aldık. Ek olarak zaten bizim oynayacağımız Minecraft sürümü çok eskide kaldı, ve kendi modlarımız ile oynamak istiyoruz o yüzden kendi sunucumuz olması daha iyi bir çözüm gibi geliyor bana.

1 Like

Aslında ben bu problemlerin hiçbirini yaşamadım kullanmama rağmen.

1 Like

Minecraft hosting hizmetleri düşünür müsünüz?

Fiyatları da normal vpslerden daha uyguna geliyor.

Mesela nereler olabilir?

Buradan firmayı paylaşmak uygun olmayacağını düşündüğüm için özelden yazacağım size.

1 Like

DDNS servisi kullanabilirsiniz. DDNS sayesinde değişen ip’nizde statik bir domain oluyor:


evde iki minecraft serverim var (farklı portlarda, aynı bilgisayar ve ip’de)
ddns.net’in dinamik dns servisini kullanıyorum. port yönlendirme de iss’den ziyade modemle ilgili. hiçbir iss’nin 1024. porttan sonrasında port yönlendirmeyi engelleyeceğini zannetmiyorum, hele 20 binlerdeki bir portu engellemek için nedenleri yok. modemi biraz daha kurcalamayı ya da başka bir modeme geçmeyi deneyebilirsiniz. oyun sunucularının oldukça yüksek işlem güçlerine ihtiyacı oluyor, ben 8 çekirdekli bilgisayarın 5 çekirdeğini bir sunucuya, bir çekirdeğini de diğer bir sunucya verdim.

Ayrıca minecraft sunucularının başında serverseeker.net gibi bir bela var. rastgele ip deneyerek sunucu bulan bir bot yapmışlar, geçenlerde de (ki bu iki etti) benim sunucuma çatmışlar. neyse ki günlük yedekleme vardı, hemen önceki güne dondüm. bu tarz bir olayı bir daha gerçekleşmemesi için basit bir script yazdım:

#!/bin/bash

while true; do
    IP=$(printf 'HTTP/1.1 200 OK\n\n ok' | netcat -l 25564 -w 0 | while read line; do 
        if [[ "$line" == 'Foreign-IP: '* ]]; then
            arr=($line)
            echo -ne ${arr[1]}
        fi
    done | rev | cut -c 2- | rev)

    if [ "$IP" != "${1#*[0-9].[0-9]}" ]; then
        echo $IP
        sudo ufw allow from $IP to any port 25565
    fi
done

Bu sistemde bir linke tıklayarak IP’ni whiteliste aldırıyorsun. nginx konfigrasyonu da şu şekilde:

       location /.well-known/minecraft-server/sansurlendi {
                proxy_set_header Foreign-IP $remote_addr;
                proxy_pass http://localhost:25564/;
        }

bu linki bilmeyenler bırakın sunucuya girmeyi, sunucunun var olduğunu dahi göremiyorlar.

5 Likes

Vaktinde Windows kullanırken Windows ile çalışan (bat dosyası yazıp java’yq onu çalıştırtıyoruz, linux’ta aynı işlemi sh dosyasıyla denedim yapamadım) bir server kurulumu videosu çekmiştim onu tavsiye ederim. İki handikapı var.

Biri hamachi kullanması, ötekisi Windows kullanması.

Eğer linux’a özel .sh dosyası yazabilecekseniz işe yarayacağını düşünüyorum. Bu arada ben Hamachi kullanırken hiç gecikme almıyordum sırf bu yüzden bilgisayar üzerinde ağ oluşturduğunu zannediyordum videoda da òyle anlatıyorum. Senin başlığın sayesinde doğruyu öğrendim. İstanbul’da oturduğum için hızlı olmuş olabilir demek ki.

2 Likes

Merhabalar. Biraz teknik bilgi vermek istiyorum arka planda nasıl bir işlem döndüğünü merak eden arkadaşlara.

Bu tür tarama işlemini masscan adı verilen port taraması yapan açık kaynak bir program ile yapıyorlar. Bu program diğer tüm port tarama uygulamaları gibi bir istek gönderip cevap gelene kadar beklemeyip ardı ardına birçok istek gönderip arada gelen cevaplara göre çıktı veriyor. Bu sayede işlem binlerce kat daha hızlanıyor. Bu programı kullanırken kişiler sadece Minecraft portunu tarıyorlar çünkü ne kadar çok taradıkları farklı port olursa doğru orantılı bir şekilde zaman ve işlem gücü gerektiriyor.

Kendi sunucunuzun ortaya çıkmaması için varsayılan Minecraft portu yerine başka bir port ayarlamanız yeterli olacaktır.

Liveoverflow’un bunun hakkında çok güzel videoları var izlemenizi tavsiye ederim.

1 Like

Standart dışı portlarda da taramalar var. Hatta tamamen alakasız portlar da bulunuyor, benim farklı porttaki diğer sunucuyu da bulmuşlar. Discord sunucularına da bir göz gezdirdim, pek çok farklı port gözüme çarptı. 10000. porttaki bir sunucu vardı geçenlerde incrlediğim.

1 Like

Dediğiniz şey zaten standart server kurulumu, tek farkı tüm flag’leri ayrı ayrı belirtmişsiniz .bat dosyasında. Aynısı Linux shell script olarak da yazılabilir ancak syntax’ı biraz bilmek lazım. Yine de teşekkür ederim. Belki başkalarının işine yarar.

@Metin ve @www arkadaşlarımın da dikkat çektiği konuları ve aldıkları önlemleri burada paylaşmaları çok güzel olmuş. Çok teşekkür ederim. Yazdığınız scripti kullanacağım. Sadece bu DDNS’i nasıl yaptığınızı biraz detaylandırabilirseniz hem benim için daha rahat olur hem de burada bir rehber tarzında bir gönderi oluşturmuş olursunuz.

4 Likes

DDNS, zaman zaman değişen dinamik IP’leri sabit bir alan adına bağlamak için kullanılır. ddclient gibi yazılımlarla suncu, ddns servisine zaman zaman IP’sini bildirir.

DDNS kurulumu oldukça basit. İnternette de birçok DDNS servisi mevcut. Ben eskiden google domains’inkini kullanıyordum, google domains kapanınca da noip’ye geçtim. Noip’nin arayüzü oldukça anlaşılır, siteye kaydolup bir alan adı seçtikten sonra paket yöneticinizden ddclient’i indirin. Siz indirirken hesabınıza giriş yapmanızı isteyecektir, oradan adımları takip etmeniz yeterli olacaktır. Eğer istemezse aşağıdaki yapılandırmayı kullanabilirsiniz: (noip için)

# /etc/ddclient.conf

protocol=noip \
login=**** \
password='*****' \
usev4=2wire \
metw.ddns.net
1 Like

google cloud shell beleş server var al kur sonra ngrokla portla

yada mc server açıp local pcde ngrok ile port aç

hocam yukarıdaki postları okumus muydunuz?

1 Like

Bazı kişiler direkt MC için sunucu almayı önermiş, pek bilgim olmasada bence VDS/VPS alıp hem Yunohost hemde MC sunucusu kurmak en mantıklı seçenek olabilir.

minecraft suncusu kiralamak mantıklı olmaz. sunucu barındırabilecek bir sanal makine ucuz olmayacaktır:

(saatlik)