"Arkadaşlarım lobime katılamıyor." "Grup sohbeti benim dışımda herkese bağlanıyor." "Oyun NAT Türü: Katı diyor ve yönlendiriciyi yeniden başlatmak hiçbir şeyi değiştirmedi." Üçü de tek bir mekanizmadan kaynaklanabilir: internetle bilgisayarın arasındaki bir şey trafiğinin dışarı çıkmasına izin veriyor, ama başka bir oyuncunun sana doğru başlattığı bir bağlantıyı durduruyor.
NAT ne yapar ve etiket neyi derecelendirir
Yönlendiricinin internet tarafında tek bir IPv4 adresi vardır ve cihazlarına özel adresler verir. Ağ adresi çevirisi (NAT), paketlerini dışarı çıkarken yeniden yazar ve yanıtlar geri dönüş yolunu bulsun diye her konuşmayı hatırlar. RFC 3022 bunun sonucunu açıkça yazıyor: geleneksel NAT'ta oturumlar tek yönlüdür, özel ağdan dışarıya doğrudur; dışarıdan başlatılan bir oturum ise ancak o cihaz için önceden kurulmuş bir eşleme üzerinden içeri girer.
Kötü bir etiketle bile bir sunucuya katılabilmenin sebebi bu: o konuşmayı senin bilgisayarın başlatır. NAT türü, başka birinin başlattığı bir konuşmanın ne kadar iyi geçtiğini derecelendirir. Xbox Destek dereceleri şöyle tanımlıyor:
- Açık: herhangi bir NAT türüne sahip kişilerle oynayabilir ve ev sahipliği yapabilirsin.
- Orta: bazı kişilerle oynayamayabilirsin ve normalde ev sahibi olarak seçilmezsin.
- Katı: yalnızca NAT'ı Açık olan kişilerle oynayabilirsin ve ev sahibi olarak seçilemezsin.
- Kullanılamıyor: grup sohbeti yok ve bazı Xbox oyunlarında çok oyunculu oyun yok.
Microsoft'un geliştirici belgeleri aynı kuralı koyuyor: Orta yalnızca Orta ya da Açık ile, Katı yalnızca Açık ile bağlanır. Bu kurala göre iki Katı oyuncu birbirine bağlanamaz.
Ne zaman önemli, ne zaman pek önemli değil
Etiket, başka birinin sana ulaşması gerektiğinde önemlidir:
- Eşler arası (peer-to-peer) maçlar. Microsoft'un Game Development Kit belgeleri geliştiricilere, onunla yapılan eşler arası oyunların orta ya da katı NAT türüne sahip istemciler için kendi genel IP adresi ve bağlantı noktası keşfini ve bir NAT delme (NAT punching) çözümünü yine kendilerinin sağlamasının beklendiğini söylüyor.
- Ev sahipliği. Senin kurduğun bir lobi ya da bilgisayarındaki bir listen veya dedicated sunucu, başkalarının bağlanmasını bekler. Dedicated ya da listen sunucular için Valve'ın Steam Desteği, oyun trafiği için varsayılan bağlantı noktası olarak UDP 27015'i listeliyor.
- Sesli sohbet ve grup sohbeti: Xbox Destek bunları çok oyunculu oyunla birlikte NAT türüne bağlıyor.
Oyun her maçı kendi sunucularına ya da bir aktarıcı (relay) üzerinden koyuyorsa pek önemli değildir, çünkü o zaman her bağlantıyı bilgisayarın kendisi açar. Valve'ın Steam Datagram Relay hizmeti oyun trafiğini Valve'ın omurgası ve aktarıcıları üzerinden taşır; Valve'a göre bu hem eşler arası trafik hem de dedicated sunucular için geçerlidir ve IP adresleri hiçbir zaman açığa çıkmaz. Örneğin Counter-Strike 2'nin sürüm notları, SDR üzerinden aktarılan bağlantıları topluluk sunucularına yapılan doğrudan UDP bağlantılarından ayırıyor (Valve, 9 Eylül 2024). Başka bir uygulamadaki Katı etiketi, kimsenin sana ulaşmasına hiç gerek duymayan bir oyun hakkında pek bir şey söylemez.
Windows bunu nerede gösterir
Windows 10'da Ayarlar > Oyun > Xbox Ağı, NAT türünü ve Xbox ağının sunucu bağlantısını gösterir. Orada görünen Teredo is unable to qualify (Türkçe Windows'ta: Teredo uygun bulunamadı), bilgisayarının bir Teredo adresi alamadığı anlamına gelir. Teredo, aralarında Forza Horizon 3 ve 4'ün de bulunduğu belirli oyunların Xbox ağında çok oyunculu oyun için kullandığı tünel protokolüdür (Xbox Destek). Aynı ekranda bir Düzelt düğmesi var. Xbox Destek bu ekranı yalnızca Windows 10 için belgeliyor; aynı arıza için Windows 11 talimatları ise bunun yerine Ayarlar > Ağ ve internet > Gelişmiş ağ ayarları > Ağ sıfırlama'ya gidiyor.
Teredo ayrıca IP Yardımcısı hizmetinin Otomatik'e ayarlı ve çalışır durumda olmasını ve Windows güvenlik duvarının varsayılan ilkesiyle açık olmasını ister. Xbox Destek, Windows'u performansı iyileştirmeye çalışmak için yeniden yapılandıran bazı uygulamaların IP Yardımcısı'nı kapattığını, bazı ev yönlendiricilerinin internet tarafında IPv6 gördüklerinde Teredo'yu engellediğini ve bazı VPN istemcilerinin bağlıyken onu engellediğini ekliyor. Bu ayarları bir araç değiştirdiyse, Fix sayfasındaki w0a'nın Xbox ağı ve IPv6 kartı IP Yardımcısı hizmetini ve Teredo/IPv6 geçiş ayarlarını Windows varsayılanlarına döndürür (kart nasıl çalışıyor).
Hangi NAT'ın arkasında olduğunu bul
- Yönlendiricine giriş yap ve durum sayfasındaki WAN ya da Internet adresini not al.
- Bunu genel adresinle, yani herhangi bir "IP adresim ne" sayfasının gösterdiği adresle karşılaştır.
- İkisi aynıysa tek çevirmen senin yönlendiricindir ve onun üzerindeki UPnP ya da bağlantı noktası iletme yolu açabilir.
- Aynı değilse Xbox Destek'in hükmü geçerli: Xbox Destek'e göre geçerli yapılandırmada açık NAT mümkün olmayacak. WAN adresine bak. 10.x.x.x, 172.16.x.x ile 172.31.x.x arası ya da 192.168.x.x ise önce önünde senin ikinci bir cihazın olup olmadığını kontrol et: bir sağlayıcı ağ geçidi artı kendi yönlendiricin, çift NAT demektir. 100.64.0.0 ile 100.127.255.255 arasındaysa bu, bir sağlayıcının operatör sınıfı NAT'ı (CGNAT) ile senin yönlendiricin arasındaki bağlantı için ayrılmış paylaşılan adres alanıdır (RFC 6598).
Sebebe göre çözümler
Kendi yönlendiricinde UPnP
UPnP, senin hiçbir şey yazmana gerek kalmadan bir oyunun yönlendiricinden dışarıdan gelen trafiği kabul etmesini istemesine izin verir. Xbox Destek'e göre yönlendiricin UPnP'yi destekliyorsa büyük olasılıkla varsayılan olarak açıktır; sayfa yönlendiricinin NAT tablosunu yenilemeyi öneriyor: UPnP'yi kapat, kaydet, yönlendiriciyi yeniden başlat, sonra UPnP'yi yeniden aç ve tekrar kaydet. Xbox Destek ayrıca bağlantı noktası iletme, UPnP ve çevre ağı (DMZ olarak da bilinir) ayarlarını birleştirmemen konusunda uyarıyor.
Çift NAT: ağ geçidini köprü moduna al
Bir sağlayıcı ağ geçidi ve kendi yönlendiricin varken Xbox Destek'e göre iki cihaz da NAT yapıyor olabilir; Xbox Destek'in çözümü ağ geçidini köprü moduna almak, böylece çeviriyi yalnızca senin yönlendiricin yapar. Adımlar ağ geçidine göre değişir; cihazın belgelerinde ya da sağlayıcında bulunur.
Ev sahipliği yaparken bağlantı noktası iletme
Bir iletme kuralı tek bir bağlantı noktasını doğrudan tek bir cihaza gönderir; bu yüzden o cihazın değişmeyen bir adrese ihtiyacı var. Xbox Destek'in yöntemi: yönlendiricinin DHCP ya da LAN bölümünde cihazın MAC adresini ayrılmış listeye ekle. Sonra yalnızca oyunun yayıncısının listelediği bağlantı noktalarını ve protokolleri ilet; örneğin Valve'ın dedicated ya da listen sunucular için listesindeki UDP 27015. Çevre ağı (DMZ) seçeneği çok daha ileri gider: Xbox Destek onu, cihazını ağ güvenlik duvarının dışındaki bir alana taşımak olarak tarif ediyor.
Operatör sınıfı NAT: yalnızca sağlayıcın değiştirebilir
Operatör sınıfı bir NAT (carrier-grade NAT), tek bir IPv4 adresini birkaç abone arasında paylaştırır ve RFC 6888 bunun abonelerce yönetilmediğini ekliyor: yönlendiricindeki hiçbir ayar ona ulaşmaz. CableLabs ve iki kablo operatörünün RFC 7021 olarak yayımlanan test raporu, 2010'daki testlerde böyle bir NAT'ın arkasında 6to4 ve Teredo gibi IPv6 geçiş teknolojilerinin tamamen başarısız olduğunu ya da ciddi hizmet bozulmasına uğradığını buldu. Xbox Destek'in tavsiyesi, sağlayıcından bir genel IP adresi istemen ve sana veremiyorsa sağlayıcını değiştirmen.
IPv6, oyunun kullandığı yerde
RFC 7021, IPv6'yı IPv4 adreslerinin tükenmesi sorununun çözümü olarak tanımlıyor. IETF'in ev IPv6 yönlendiricileri için önerileri (RFC 6092) orada NAT'ın pek olası olmadığını varsayıyor, ama yalnızca içeriden başlatılan trafiği kabul etme alışkanlığını koruyor ve uygulamaların içeri yönlü akışlar açabilmesi için bir yol ya da bir "transparent mode" istiyor. Yani IPv6 yalnızca sağlayıcın, yönlendiricin ve oyunun hepsi onu kullanıyorsa işe yarar; Microsoft'un Game Development Kit belgeleri oyunlardan çok oyunculu bağlantı noktalarını hem IPv4'e hem IPv6'ya bağlamalarını istiyor. Windows'un IPv6 bileşenlerini varsayılanlarında bırak: Xbox Destek, Teredo arızalarının sebepleri arasında Teredo'nun kayıt defterinde, bir program tarafından ya da elle kapatılmasını sayıyor.
NAT türünü değiştirmeyenler
- Windows ağ ayarları. TCP seçenekleri ve DNS, yönlendiricinde ya da sağlayıcında gerçekleşen çeviriye dokunmaz. O kutucukların ne yaptığını Ağ tweakleri anlatıyor.
- Güvenlik duvarını kapatmak. Xbox Destek'e göre Teredo, Windows güvenlik duvarının varsayılan ilkesiyle çalışmasını ister ve gelen trafik ilkesi "AllowInbound" olduğunda Teredo IPsec bağlantısını kuramaz.
- UPnP ya da bağlantı noktası iletmenin üstüne bir DMZ. Xbox Destek bunları birleştirmemeni söylüyor.
- Bir VPN. Bazı VPN istemcileri Teredo'yu engeller, bazıları da kaldırıldıktan sonra onu engellemeye devam eden bir güvenlik duvarı kuralı bırakır. Bir VPN'in pingine yardım edip etmediği ayrı bir soru: VPN pingi düşürür mü?
İlgili
- Yüksek ping ve lag sıçramaları — gerçekten düzeltebileceğin kısım
- Xbox ağı ve IPv6
- VPN pingi düşürür mü?
- Oyun için Wi-Fi
- Ağ tweakleri
Bu sayfa yardımcı oldu mu?
Eksik olan neydi, ya da ne işe yaramadı? Bunların hepsini okuyoruz.
Bu sayfa sorununu çözmediyse bize yaz — hangi makaleyi okuduğunu da ekle, o makaleyi düzeltelim.