NAT(Network Address Translation) nedir ?
Bir bilgisayarın internete çıkarken ip havuzundaki bir public ip ile yeniden haritalanma yaparak diğer bilgisayarlarla iletişim kurmasını sağlayan yöntemdir.
NAT’ın tarihçesi :
İnternetin ilk yıllarında insanlar internete çıkmak için her bir bilgisayar için bir public ip kullanıyordu. Örneğin bir kurumda 20 bilgisayar varsa o kurum bütün bilgisayarlarını internete çıkarmak için 20 tane public ip almak zorunda idi. İlk zamanlar çok sayıda bilgisayar olmadığı için her hangi bir sakınca olmuyordu. Ama daha sonraları internete bağlı cihaz sayısı artamaya başlayınca , ip sayısı sınırlı olduğu için bu bir sorun oluşturmaya başlamıştır. Uzmanlar bu sorunu çözmek için NAT protokolünü inşa etmişlerdir. Peki nasıl çalışmaktadır bu NAT ?
NAT nasıl çalışır ?
Adında anlaşılacağı gibi NAT bir adres çevirme işlemidir . Üç çeşit NAT vardır.
1-) Static NAT
Bu NAT türünde elimizde birden fazla public ip vardır ve bu public ipler ile bigisayarlarımızı eşleştiririz . Hangi bilgisayara hangi ip atanacağını Ağ yöneticisi belirler. Public IP’ler ile eşleştirilmiş bilgisayarlar dışındaki bilgisayarlar dış ağa çıkamaz.
Resimde görüldüğü gibi PC-1 ve PC-2 nin iç ipleri ,dış ipler ile ağ yöneticisi tarafından eşleştirilmiştir. Ama PC-3 ün iç ipsi dış ip ile eşleştirilmemiştir. Bu durumda pc-1 ve pc-2 internete çıkarken , pc-3 internete çıkamayacaktır.
2-) Dynamic NAT
Bu NAT türü yine Satic NAT ile aynı işlevi görür.Fakat ip eşleştirmesini dinamik olarak yapılır yani ağ yöneticisi eşleştirmeyi yapmaz NAT kendisi yapar .Bağlanan bilgisayarları boşta olan Dış ipler ile eşleştirir.
Resimde görüldüğü gibi her bağlanan bilgisayar boşta olan dış ip ile eşleştirilmiştir.
3-) Overloading NAT
Birden fazla bilgisayarı tek bir ip üzerinden çıkarmak için kullanılır . PAT(Port Address Translation) diye adlandırılır. Bizimde , ev ve iş yerlerinde sıklıkla kullandığımız NAT türüdür. Nasıl çalıştığına bakalım;
Elimizde bir bilgisayar grubu var bunları internete çıkarmak istiyoruz. Bunun için public ip ye ihtiyacımız var. Ama demiştik ki elimizdeki public IP sayısı sınırlı bu yüzden her bilgisayara public ip tanımlayamayız .Ne yapmalıyız ? O zaman bu bilgisayar grubunun oluşturduğu ağa bir adet public ip tanımlayalım.O bilgisayarlar o gruba tanımladığımız public IP yi kullanarak internete çıksın. Peki birkaçı yada hepsi birden internete çıkmak istedikleri zaman nasıl olacak ? Elimizde tek bir ip var ama birden fazla bilgisayar internete çıkmak istiyor .İşte tam burada NAT (PAT) devreye girer. Öncelikle her bilgisayar için bir port tanımlar. Sonra derki her bilgisayar kendine tanımlanan port üzerinden haberleşecek. Örneğin ;Bir bilgisayar bir web sitesine istek attığı zaman önce istek o bilgisayar için açılmış porttan alınır öyle internete çıkar ; web sunucusu da kendine istek gelen IP’nin ilgili portuna cevap verir. Bu sayede birden fazla bilgisayarı tek bir public IP üzerinden internete çıkarmış olduk. Gelin şimdi bunu görsellerle açıklayalım.
Internetin İlk Zamanları ;
Resim-1
NAT geliştikten sonra :
Resim-2
Görüldüğü gibi Resim-1 de bilgisayarlar hepsi birer public IP alarak doğrudan internete bağlanmıştır. Resim-2 de ise bilgisayarlar tek bir public IP kullanarak internete bağlanmışlardır. Resim-2 yi biraz daha detaylandıracak olursak ;
Resim-3
Her bilgisayar kendine tanımlanan port ve belirli bir public IP üzerinden haberleşiyor. Bu sayede birden fazla bilgisayar aynı web sunucusuna istek atsa bile , IP’leri aynı olmasına rağmen portlar farklı olacağı için paketler birbirine karışmayacaktır.
NAT ‘ ın Avantajları ve Dezavantajları
Avnatjları
– Çok sayıda bilgisayar az sayıda public IP kullanarak internete çıkacağı için ip yetersizliği sorunu çözülmüş olur.
– İç ip dış IP ye çevrildiği için dışardaki kullanıcılar iç ağdaki bilgisayarın ipsini bilemez buda bir güvenlik sağlar.
– Kullanıcılar az sayıda ip kullanarak internete çıkacakları için maddi bir kazanç sağlanır.
Dezavantajları
– Bir çevirme işlemi olduğu için paketlerde gecikmeye sebep olabilir.
– İp paketlerinin kaynağının bulunmasını zorlaşırtırır.