Sadece Firewall'dan belki port erişimine izin vermen gerekiyor o kadar.
Durum şu, aslında Router'a bağlanan tüm cihazlar NAT arkasında. Bu ne demek, örneğin Türk Telekom kullanıyorsunuz ve IP'niz 25.25.25.26. Şimdi bu IP sadece Router'a veriliyor. Eskiden yani NAT ortaya çıkmadan önce, internete çıkan her cihaz IP alırdı. Bu ne demek, evinde 3 bilgisayar varsa üçüne de IP vermen lazım. Birisi 25.25.25.26, diğeri 25.25.25.27, diğeri de 25.25.25.28 olsun. Tabi daha sonra bu IP'lerin biteceği anlaşılınca ortaya NAT diye bir sistem çıktı. NAT nedir, cihazlar gerçek IP yerine örneğin çoğu modemde yapılan şudur, 192.168.1.xxx diye bir IP alır ve internete ortak bir IP'den çıkar. Bunu da şöyle açıklayayım. Diyelim Minecraft sunucusu açacaksınız ve portunuz 25565. Eskiden olsa port açmaya gerek yoktu çünkü senin zaten cihazın IP alıyor, yani Firewall engellemediği sürece, ben senin IP'ni yazarak sunucuna bağlanabilirim. Fakat bugün durum şu, ben senin IP'ni yazıp girmeye çalıştığımda Router'ın diyecek ki, "Ya kardeşim tamam geldin hoş geldin de bana bağlı 2 bilgisayar, 3 telefon, 1 yazıcı var, hangisine gideceksin?" Sen Router'ından Port Forwarding yaparsın. Router'ın sana 192.168.1.17 IP'sini verdi diyelim. Dersin ki, 25565 portunu benim bilgisayarıma (192.168.1.17) yönlendir. Daha sonra da senin bilgisayarına bağlanabilirim ve sunucuya girebilirim.
Hatta CGNAT'ta port açamamanın yegane sebebi de budur. CGNAT'ta sen de gerçek IP almazsın, senin Router'ın gibi 20 tane Router birleşip bir tane IP alır ama sen hangi portu yönlendireceğine karar veremediğin için sorun olur. CGNAT'ı bir üst kademedeki NAT gibi düşün.
IPv6 dünyada o kadar bol ki, servis sağlayıcın sana birçok IP verir. Hatta dümdüz IP bloğu tanımlar. Bu sayede senin modemine bağlanan her bir cihaz gerçek bir IP alır. Ben şimdi aynı şekilde Minecraft sunucuna bağlanmak istediğimde zaten senin bana vereceğin IPv6, sadece bir cihaza ait olduğu için, Router'ın da "Bu arkadaş nereye gidiyor?" diye sormayacaktır.