Port yönlendirme (Port Forwarding), ev ağındaki cihazlara internetten erişim sağlamak için kullanılan bir ağ kuralıdır. Bu rehberde port yönlendirmenin ne olduğunu, NAT ile nasıl çalıştığını, hangi durumlarda gerekli olduğunu ve yönlendirici üzerinde nasıl ayarlandığını detaylıca öğrenebilirsiniz. Ayrıca yaygın sorunlar ve çözüm yolları da adım adım ele alınmıştır.
Port Forwarding (Port Yönlendirme), ev ağınızda bulunan bir cihazı veya servisi internet üzerinden erişilebilir hale getirmek için kullanılan bir yöntemdir. Genellikle bilgisayarlar, oyun sunucuları, NAS cihazları ve benzeri ekipmanlar, yönlendirici (router) arkasında yer alır ve yerel IP adresleri ile çalışır. Bu nedenle, dışarıdan doğrudan erişim mümkün değildir. Port Forwarding ise yönlendiriciye tanımlanan bir kural sayesinde, belirli bir dış port üzerinden gelen bağlantıların hangi cihaza iletileceğini belirler. Temel mantığı anlamak için önce portların neden gerekli olduğunu ve NAT'ın bu süreçteki rolünü bilmek gerekir.
Port yönlendirme (Port Forwarding), yönlendiricinin belirli bir portuna gelen dış bağlantıların, yerel ağınızdaki belirli bir IP adresine ve porta otomatik olarak iletilmesini sağlayan bir ağ kuralıdır.
Örneğin, ev ağınızda 192.168.1.50 adresli bir bilgisayarda oyun sunucusu çalışıyor ve bu sunucu 25565 portunu dinliyor olsun. Aynı ağdaki diğer cihazlar doğrudan 192.168.1.50:25565 adresini kullanarak bağlanabilir; fakat internetten erişim sağlamak mümkün değildir çünkü dış kullanıcılar sadece yönlendiricinin genel IP adresini görebilir.
İşte burada, Port Forwarding devreye girer. Yönlendiriciye şu şekilde bir kural tanımlanır:
Bu kural, gelen tüm 25565 portlu bağlantıların ilgili yerel IP'ye yönlendirilmesini sağlar. Her port, belirli bir program veya servis için ağda bir "giriş noktası" gibidir. Aynı bilgisayar üzerinde farklı portlar, farklı servislerin çalışmasını mümkün kılar.
"Yönlendiricide port açmak" tabiri yaygın olarak port yönlendirme ile eş anlamlı kullanılır. Ancak teknik olarak Port Forwarding, sadece bağlantıya izin vermek değil, aynı zamanda gelen trafiği belirli bir yerel IP ve porta yönlendirmektir.
Port yönlendirme, özellikle internetten başlatılması gereken bağlantılar için gereklidir. Web sitelerine göz atmak, dosya indirmek veya mesajlaşma hizmetleri gibi işlemler genellikle otomatik olarak dışa doğru bağlantı başlatır ve yönlendirici gelen yanıtları otomatik olarak iletir. Ancak, evdeki bir sunucuya dışarıdan bağlantı başlatılacaksa, bu trafik için önceden bir port yönlendirme kuralı oluşturmak gerekir.
Bu nedenle port yönlendirme; oyun sunucuları, NAS, web sunucuları, güvenlik kameraları, uzaktan erişim ve dışarıdan bağlantı kabul eden diğer servislerde yaygın olarak kullanılır.
Port yönlendirmenin çalışma mantığını kavramak için önce NAT teknolojisini anlamak gerekir. NAT (Network Address Translation), birden fazla cihazın aynı genel IP adresi ile internete erişebilmesini sağlar.
Evdeki bilgisayar, telefon veya televizyon gibi cihazlar genellikle 192.168.1.10, 192.168.1.20 veya 192.168.1.50 gibi yerel IP adresleri alır. Bunlar sadece yerel ağda geçerlidir ve doğrudan internetten erişilemez.
Bir cihazdan internete istek gönderildiğinde, önce yönlendiriciye ulaşır. NAT, yerel IP'yi yönlendiricinin genel IP'siyle değiştirir ve bağlantı tablosunu kaydeder. Dış sunucudan gelen yanıtlar, bu tabloya bakılarak ilgili cihaza ulaştırılır.
Böylece onlarca cihaz tek bir genel IPv4 adresiyle internete çıkabilir. NAT, yerel ağı dışarıdan izole eder; internet servisi sadece yönlendiricinin genel IP'sini görür.
Daha fazla bilgi ve bazı oyunlarda, sesli sohbetlerde veya doğrudan P2P bağlantılarda NAT'ın neden sorun yaratabildiğini öğrenmek için NAT'ın oyunlarda, P2P ve sesli sohbetlerde neden problem oluşturduğunu açıklayan makalemize göz atabilirsiniz.
Bağlantı, ağın dışından başlatıldığında NAT hangi cihaza iletileceğini bilmez. Örneğin üç cihazlı bir ev ağında gelen bağlantının hangi cihaza gitmesi gerektiğini belirlemek mümkün olmaz. Bu nedenle yönlendiriciye mutlaka Port Forwarding kuralı eklemek gerekir.
Port Forwarding, belirli bir dış port için sürekli bir kural oluşturur. Örneğin:
Burada 203.0.113.10 genel IP, 192.168.1.50 ise sunucu bilgisayarının yerel adresidir. Böylece gelen bağlantı otomatik olarak doğru cihaza yönlendirilir.
Dış ve iç portlar farklı da olabilir. Örneğin:
Dışarıdan 8080 portuyla bağlanan kullanıcı, içeride 80 portuna yönlendirilir. Port Forwarding kuralında genellikle şu parametreler bulunur: dış port, yerel IP, iç port ve ağ protokolü (TCP/UDP).
Port yönlendirme, NAT'ın işleyişini bozmaz; aksine, NAT'a gelen trafiğin nasıl yönlendirileceğini öğretir. NAT adres dönüşümünü ve bağlantı yönetimini sürdürecek, port yönlendirme ise dışarıdan gelen ve daha önce başlatılmamış bir oturumu doğru cihaza iletecektir.
Port yönlendirme, yerel ağdaki bir cihazın dışarıdan bağlantı alması gerektiğinde kullanılır. Bu yöntem bağlantıyı hızlandırmaz veya kaliteyi artırmaz, yalnızca gelen trafiğe yol açar.
En yaygın kullanım alanı evde oyun sunucusu kurmaktır. Oyun belirli bir port kullanıyorsa, yönlendirici bu porttaki trafik için bilgisayara yönlendirme yapmalıdır. Benzer şekilde evde web sunucusu veya NAS için de port yönlendirme gerekir.
Güvenlik kameraları veya video kayıt cihazları da port yönlendirme ile dışarıdan erişilebilir. Ancak, kamera yönetim panelini doğrudan internete açmak tavsiye edilmez; bu, ek bir saldırı yüzeyi oluşturur.
Uzaktan yönetim için de port yönlendirme uygulanabilir, fakat güvenlik ön planda tutulmalı, şifreleme ve güçlü parola kullanılmalıdır. Bazı P2P uygulamaları da doğrudan bağlantı için port yönlendirme gerektirebilir.
Açılması gereken portlar, kullanılan uygulamaya göre değişir. Gereksiz yere geniş port aralıkları açmak yerine, sadece ihtiyaç duyulan portlar açılmalıdır. Daha az servis doğrudan internete açıksa, ağın kontrolü de kolaylaşır.
Port Forwarding kuralı oluştururken TCP veya UDP protokolü (ya da her ikisi) seçilmelidir. Bu seçim, port numarası kadar önemlidir.
TCP ve UDP arasındaki farklar, uygulamanın gereksinimine göre seçim yapılmasını gerektirir. Sadece TCP için kural oluşturmak, UDP gerektiren bir uygulamada işe yaramaz.
Daha detaylı farklar için TCP ve UDP protokolleri arasındaki farklar ve hangi durumda hangisinin tercih edilmesi gerektiği hakkında rehberimize göz atabilirsiniz.
Port açmak için, yönlendiricinin yönetim panelinden port yönlendirme (Port Forwarding) kuralı eklenmelidir. Farklı marka ve modellerde menü isimleri değişse de ana mantık aynıdır.
Örneğin, 192.168.1.50 adresli bilgisayarda 8080 portunu dinleyen bir sunucu varsa, bu parametreler gerekir.
Servisin ilgili portu dinlemesi gerekir. Uygulama kapalıysa veya port yanlışsa, Port Forwarding işe yaramaz. Ayrıca işletim sistemi güvenlik duvarı (Firewall) uygulamanın bağlantılarına izin vermelidir. Tamamını devre dışı bırakmak yerine, sadece gerekli uygulama veya port için kural yazmak daha güvenlidir.
Yapılandırma sonrası testi, mümkünse mobil internet gibi dış bir ağdan yapmak en doğrusudur. Aynı ev ağı üzerinden test, her yönlendiricide çalışmayabilir (NAT Loopback desteği yoksa).
Kural doğru yapılandırılsa bile port, internetten hemen erişilebilir olmayabilir. Yönlendirici ve NAT dışında uygulama, işletim sistemi, güvenlik duvarı ve ISS'nin (internet servis sağlayıcı) ağı da etkili olabilir.
En yaygın nedenler:
Evde iki yönlendirici varsa (örneğin, ISS'nin modemi + kendi Wi-Fi yönlendiriciniz), çifte NAT oluşur. Port Forwarding her iki yönlendiricide de yapılandırılmalı veya birisi bridge moduna alınmalıdır.
Birçok ISS, CGNAT (Carrier-Grade NAT) uygular. Bu durumda genel IPv4 adresi doğrudan evdeki yönlendiriciye değil, ISS ekipmanına aittir:
Ev yönlendiricisinde port yönlendirme yapsanız bile, gelen bağlantı önce ISS'nin NAT'ına takılır. Eğer orada ek bir kural yoksa, trafik ev ağına ulaşamaz.
CGNAT kullanılıp kullanılmadığını anlamak için, yönlendiricinin WAN adresi ile internette görünen genel IP adresini karşılaştırabilirsiniz. Farklıysa arada ISS NAT'ı olabilir. Ancak bağlantı yapısına göre bu her zaman kesin sonuç vermez.
Daha fazla bilgi için CGNAT'ın nasıl çalıştığı ve port yönlendirme üzerindeki etkileri hakkında detaylı makalemizi inceleyebilirsiniz.
Bazı yönlendiriciler NAT Loopback desteklerken, bazıları desteklemez. Mobil internetten erişim varsa, port yönlendirme büyük olasılıkla doğru yapılandırılmıştır. Hala sorun yaşanıyorsa, WAN IP adresi ve ISS'nin CGNAT kullanıp kullanmadığı kontrol edilmelidir.
Port Forwarding doğrulaması yalnızca "port açık" mesajı almak değildir. Her aşamada uygulamanın portu dinlediğinden, kuralın doğru IP ve protokolü gösterdiğinden, güvenlik duvarının izin verdiğinden ve trafiğin gerçekten internete çıkabildiğinden emin olunmalıdır.
Port yönlendirme, internetten gelen bağlantıların yerel ağdaki belirli bir cihaza ve servise ulaşmasını sağlar. Port Forwarding, NAT ile birlikte çalışır: yönlendirici dış portta gelen isteği alır ve önceden tanımlanmış kurala göre ilgili yerel IP ve porta iletir.
Sağlıklı bir yapılandırma için uygulamanın kullandığı portu, doğru protokolü seçmek, yerel IP'yi sabitlemek ve güvenlik duvarının bağlantıya engel olmadığından emin olmak gerekir. Gereksiz portları açmamak, saldırı yüzeyini daraltır.
Kural doğru yapılandırıldığı halde bağlantı sağlanamıyorsa, adım adım uygulama, IP adresi, güvenlik duvarı, çifte NAT ve WAN IP adresini kontrol etmek gerekir. CGNAT varsa, standart port yönlendirme çözüm olmaz; çünkü trafik önce ISS'nin NAT'ından geçer.