Teknik
CGNAT Nedir? Mobil IP’ler Neden Paylaşımlı Olabilir?
Kısaca
CGNAT (Carrier-Grade NAT), bir operatörün az sayıda genel IPv4 adresini çok sayıda aboneye aynı anda paylaştırmasını sağlayan adres çevirisi yöntemidir. Cloudflare bu düzenin mobil şebekelerde yaygın olduğunu belirtir. Bu yüzden bir telefonun ya da mobil proxy hattının internette görünen IP'si yalnızca o aboneye ait olmayabilir; aynı adresi başka aboneler de kullanıyor olabilir.
Son güncelleme: Okuma süresi: yaklaşık 7 dk
CGNAT kısaca nedir?
NAT, bir ağdaki cihazların iç adreslerini, dışarıya çıkarken ortak bir genel adrese çeviren mekanizmadır. CGNAT bu fikrin operatör ölçeğindeki halidir: ev yönlendiricisi birkaç cihazı tek adrese bağlarken, operatörün NAT cihazı çok sayıda aboneyi birkaç genel adrese bağlar.
Aboneler
Operatör içindeki cihazlar
CGNAT
Operatör düzeyinde NAT
Ortak genel IP (örnek)
Hedef siteye bu tek adres görünür
Örnek veriGösterilen IP adresleri dokümantasyon aralıklarından alınmış örneklerdir. Abone sayısı şematiktir; gerçek paylaşım oranını göstermez.
Mobil proxy'nin ne olduğunu henüz bilmiyorsanız önce Mobil Proxy Nedir? rehberini okuyabilirsiniz; bu sayfada yalnızca adres paylaşımı konusuna odaklanıyoruz.
IPv4 adresleri neden yetmiyor?
Bir IPv4 adresi 32 bitlik olduğundan olası adres sayısı 2³² ile sınırlıdır; bu yaklaşık 4,3 milyar eder. İnternete bağlı cihaz sayısı bunun çok üzerine çıkmıştır. Çözümlerden biri, her cihaza genel adres vermek yerine adres paylaştırmaktır. Ev ağlarında bu işi yönlendirici yapar: ev içindeki cihazlar 192.168.x.x gibi özel adresler (RFC 1918) kullanır, dışarıya tek bir genel adresle çıkar.
Operatörler aynı mantığı bir basamak yukarı taşıdı. Evdeki yönlendiricinin dışarıya çıkardığı adres de operatör tarafında başka aboneler arasında paylaşılabilir; mobil şebekelerde ise telefonlar yaygın olarak doğrudan operatörün NAT cihazının arkasında yer alır.
CGNAT nasıl çalışır?
- Abone cihaz bir iç adres alır
Telefon ya da modem veri oturumu açtığında operatörün ağı içinde geçerli bir adres alır. Bu adres özel ya da 100.64.0.0/10 gibi paylaşılan bir alandan olabilir.
- İstek NAT cihazına ulaşır
İnternete yönelik her paket operatörün CGNAT cihazından geçer.
- Kaynak adres ve port çevrilir
NAT cihazı paketin kaynağını, ortak genel adres ve boş bir port çiftiyle değiştirir; eşlemeyi bir tabloya yazar.
- Yanıt doğru aboneye döner
Site yanıtı genel adresin portuna gönderir. NAT cihazı tabloya bakarak yanıtı doğru aboneye iletir.
| Özellik | Ev NAT'ı | CGNAT |
|---|---|---|
| Nerede çalışır | Ev ya da ofis yönlendiricisinde | Operatörün ağında |
| Kimin yönetimindedir | Abonenin | Operatörün |
| Kaç kullanıcıyı kapsar | Genellikle bir hane ya da ofis | Operatörün belirlediği sayıda abone |
| Sitenin gördüğü adres | Haneye ait genel adres | Birçok aboneyle ortak genel adres |
RFC 6888, bu cihazlardan bazı davranışlar bekler. Abone başına kullanılabilecek dış port sayısı sınırlanabilmelidir. Aynı abonenin oturumları varsayılan olarak aynı dış adreste kalmalıdır. Serbest kalan bir port en az 120 saniye yeniden kullanılmamalıdır. Kötüye kullanım incelemesi için abone kimliği, dış adres, dış port ve zaman damgası kaydedilmelidir.
NAT'ların pratik bir sonucu da eşlemelerin boşta kalınca silinmesidir; uzun süre sessiz kalan bir bağlantı bu yüzden kopabilir. UDP eşlemeleri için RFC 4787 en az iki dakikalık bir zaman aşımı öngörür, beş dakika ve üstünü önerir; gerçek operatör değerleri kamuya açık değildir. Uygulamalar bunu belirli aralıklarla küçük paketler göndererek (keep-alive) aşar. Bir mobil hattan uzun süreli bağlantı tutacaksanız yeniden bağlanma mantığı kurmak gerekir.
100.64.0.0/10 nedir?
RFC 6598 (2012), 100.64.0.0/10 bloğunu, yani 100.64.0.0 ile 100.127.255.255 arasındaki adresleri “paylaşılan adres alanı” olarak ayırdı. Amaç, operatörün CGNAT cihazı ile abone ekipmanı arasındaki bağlantıda, özel adres alanlarıyla çakışma yaşamadan kullanılabilecek bir blok sağlamaktır. Bu blok genel internette yönlendirilmez ve paketler operatör sınırlarını aşmamalıdır.
Python
import ipaddress
paylasimli = ipaddress.ip_network("100.64.0.0/10")
for adres in ["100.64.12.34", "192.0.2.10", "203.0.113.7"]:
ip = ipaddress.ip_address(adres)
print(adres, "paylaşılan blokta mı:", ip in paylasimli)100.64.0.0/10 bir genel IP aralığı değildir
Sitelerin gördüğü IP bu blokta olmaz; blok yalnızca operatör ağının içindedir. Her operatörün iç tasarımının bu bloğu kullandığı da söylenemez: operatörler başka özel alanlar ya da farklı bir tasarım kullanabilir. Bir adresi incelemek için IPv4 / IPv6 Bilgisi aracına bakabilirsiniz.
Kendi bağlantınızda kontrol edin
Modeminizin yönetim sayfasında “WAN” ya da “internet” adresini bulun ve IP Adresim aracının gösterdiği adresle karşılaştırın. İkisi farklıysa ya da WAN adresi 100.64.0.0/10 bloğundaysa hattınız operatör NAT'ının arkasında olabilir; farklılığın başka bir nedeni modemin ikinci bir yönlendiricinin arkasında kalması da olabilir. Mobil hatlarda da telefonun gösterdiği iç adres ile sitelerin gördüğü adres farklı olabilir.
Web siteleri paylaşımlı adresi nasıl görür?
RFC 7021, CGNAT'ın uygulamalar ve siteler üzerindeki etkilerini toplar. Başlıca sonuçlar şunlardır:
- Adres tek başına kimlik değildir. Bir kullanıcıyı ayırt etmek için IP'ye ek olarak port ve zaman bilgisi gerekir.
- Coğrafi konum bulanıklaşır. Paylaşılan adres, abonenin bulunduğu yeri değil çoğunlukla operatörün altyapısının konumunu gösterebilir.
- Kötüye kullanım sistemleri yanılabilir. Aynı adresin arkasındaki birçok abone tek bir kaynak gibi görünebilir.
- Sabit port bekleyen uygulamalar sorun yaşayabilir. Birden çok abone aynı genel adresi paylaştığında bu tür uygulamalar çalışmayabilir.
Bir sitenin gözünden durum şöyledir: aynı IP'den kısa sürede çok sayıda istek geliyorsa bu, tek bir otomatik istemci de olabilir, aynı adresin arkasındaki çok sayıda sıradan kullanıcı da. Site bu ikisini yalnızca IP'ye bakarak ayıramaz. Bu yüzden paylaşımlı bir adresi doğrudan engellemek hata payı yüksek bir karardır; hız sınırı ya da ek doğrulama gibi daha hafif önlemler tercih edilebilir. Bu bir çıkarımdır, her sitenin davranışı farklıdır.
Engellemenin bir bedeli vardır
Paylaşılan bir adresi engellemek, o adresi kullanan ilgisiz birçok kullanıcıyı da engellemek demektir. Kötüye kullanımla mücadele eden sistemlerin bu adreslere karşı dikkatli olması için bir neden vardır; ancak bu, adreslerin hiç sınırlandırılmayacağı anlamına gelmez.
Cloudflare’in ölçümü ne söylüyor?
Cloudflare, 17 Aralık 2024 ile 9 Ocak 2025 arasındaki trafiğini inceleyerek CGNAT arkasındaki adresleri diğerleriyle karşılaştırdı. Bulgulara göre CGNAT adresleri, CGNAT olmayanlara kıyasla yaklaşık üç kat daha sık hız sınırlamasına (rate limiting) takıldı. Bot oranlarının medyanı ise iki grupta neredeyse aynıydı. Yazarlar fazla sınırlamayı, adres paylaşımının meşru trafiğin güvenlik kurallarını tetikleme olasılığını artırmasına bağlıyor.
Tek şirket, tek dönem
Bu veri tek bir şirketin trafiğinden ve belirli bir dönemden gelir; evrensel bir kural değildir. Yine de CGNAT arkasındaki adreslerin sitelerde ayrıcalıklı karşılandığı varsayımını desteklemiyor: paylaşımlı adresler sınırlandırmaya daha sık takılabilir. Bu nedenle bu sitede mobil IP'lerin engellenmeyeceğine dair hiçbir vaat verilmez.
Mobil proxy kullanıcısı için anlamı
Bir mobil proxy'nin çıkış IP'si operatörün aralığından gelir. Bu adresin o anda başka abonelerle paylaşılıp paylaşılmadığı operatörün iç tasarımına bağlıdır ve dışarıdan bilinemez. Bu rehber, satılan paketlerdeki operatör hatlarının adresleri nasıl paylaştırdığına dair bir bilgiye sahip değildir ve bir oran vermez. Çıkış IP'nizin sizin için tek başına bir itibar sağladığı ya da tamamen size ait olduğu da söylenemez.
- Coğrafi konum kayıtları şehir düzeyinde şaşabilir; mobil adresler altyapının konumuna işaret edebilir.
- Bir sınırlama, sizin kullanımınızdan bağımsız nedenlerle de gelebilir, çünkü adresin arkasında başkaları olabilir.
- Çıkış IP'si değiştiğinde IP'ye bağlı oturumlar kopabilir. Nedenleri ve sınırları Mobil Proxy IP Değiştirme Yöntemleri rehberinde.
Çıkış IP'nizi görmek için IP Adresim aracını kullanabilirsiniz. Mobil operatör hatlarıyla ilgili pratik bilgiler için Mobil Proxy sayfasına ve Operatörler sayfasına bakın. CGNAT'ın veri oturumuyla ilişkisini 4G Mobil Proxy Nasıl Çalışır? rehberinde bulabilirsiniz.
Sık yapılan yanlışlar
| Yanlış | Gerçek |
|---|---|
| “CGNAT trafiği izlenemez kılar.” | RFC 6888, kötüye kullanım incelemesi için abone kimliği, dış adres, port ve zaman damgasının kaydını öngörür. |
| “Mobil IP'ler hiç sınırlandırılmaz.” | Cloudflare'in ölçümü paylaşımlı adreslerin daha sık sınırlandığını gösteriyor. Sonuç hedef siteye ve davranışa bağlıdır. |
| “Her abonenin kendi genel IP'si vardır.” | CGNAT'ın amacı tam tersidir: genel adresi paylaştırmak. |
| “100.64.0.0/10 bloğundaki adresler operatörün genel IP'leridir.” | Bu blok genel internette yönlendirilmez; ağ içinde paylaşılan adres alanıdır. |
| “Bir SIM'in IP'si hep aynı kalır.” | Oturum yeniden kurulduğunda ya da NAT eşlemesi değiştiğinde dış adres değişebilir. |
CGNAT, IPv6 ve NAT64
IPv6'da adres sıkıntısı yoktur. Mobil şebekelerde bir veri bağlantısına çoğunlukla geniş bir önek (RFC 6459'a göre /64) verilir ve IPv6 trafiği için adres paylaştırmak gerekmez. Ancak internetin büyük bölümü hâlâ IPv4 ile ulaşılabilir durumdadır.
IPv6 ağından IPv4 sitelerine ulaşmak için NAT64 ve DNS64 ya da 464XLAT (RFC 6877, RFC 6146) kullanılır. NAT64 de durum tutan bir çeviricidir ve birçok istemciyi bir grup IPv4 adresine bağlar; yani IPv4 adreslerini paylaştırır. Hangi Türk operatörün hangi yöntemi kullandığı kamuya açık değildir. Bu konu, ayrı bir ürün olan IPv6 Proxy ile karıştırılmamalıdır: o, sağlayıcı beyanına göre pakete dahil bir /64 alt ağdan adres veren ve HTTP(S) ile kullanılan ayrı bir üründür.
Sık sorulan sorular
CGNAT (Carrier-Grade NAT), bir internet ya da mobil operatörünün az sayıda genel IPv4 adresini çok sayıda abone arasında paylaştırmasını sağlayan ağ adres çevirisi yöntemidir. Aboneler operatörün içinde özel ya da paylaşılan adresler kullanır; internete çıkarken operatörün NAT cihazı bu adresleri ortak bir genel adres ve port çiftine çevirir. IPv4 adreslerinin yetmemesi nedeniyle yaygınlaşmıştır.
Çünkü IPv4 adresleri sınırlıdır ve operatörler her aboneye ayrı bir genel adres vermek yerine adresleri paylaştırabilir. Bunu CGNAT ile yaparlar: birçok abone aynı genel adresi farklı portlar üzerinden kullanır. Cloudflare, bu düzenin mobil şebekelerde yaygın olduğunu belirtir. Bir operatörün adres paylaşım oranı ya da hangi hatlarda uyguladığı ise kamuya açık değildir; bu rehber herhangi bir oran vermez.
RFC 6598'in “paylaşılan adres alanı” olarak ayırdığı bloktur; 100.64.0.0 ile 100.127.255.255 arasındaki adresleri kapsar. Operatörün CGNAT cihazı ile abone ekipmanı arasındaki bağlantıda kullanılması için ayrılmıştır. Genel internette yönlendirilmez ve operatör sınırlarının dışına çıkmamalıdır. Bu yüzden bu aralıktaki bir adres, sitelerin gördüğü genel IP değil, operatör ağı içindeki bir adrestir.
Hayır. CGNAT bir gizlilik ya da koruma katmanı değildir. RFC 6888, kötüye kullanım incelemesi için abone kimliğinin, dış adresin, portun ve zamanın kaydını öngörür. Cloudflare ölçümünde CGNAT adresleri daha sık hız sınırlamasına takılmıştır. Bir mobil IP'nin engellenip engellenmeyeceği hedef siteye ve sizin istek davranışınıza bağlıdır; bu konuda hiçbir vaat verilemez.
IPv6'da adres sıkıntısı yoktur; her aboneye geniş bir önek verilebilir, bu nedenle IPv6 trafiği için CGNAT gerekmez. Ancak bugün birçok site hâlâ yalnızca IPv4 üzerinden erişilebilir. IPv6 ağlarında bu sitelere ulaşmak için NAT64 ve 464XLAT gibi çeviri yöntemleri kullanılır; bunlar da IPv4 adreslerini paylaştırır. Hangi operatörün hangi yöntemi kullandığı kamuya açık değildir.
Kesin değildir. RFC 7021, paylaşılan bir adresin coğrafi konumunun yanıltıcı olabileceğini belirtir: konum kayıtları abonenin değil, çoğunlukla operatör altyapısının bulunduğu yeri gösterir. Bu yüzden mobil adreslerde şehir düzeyindeki konuma tek başına güvenmeyin.