Monday, August 27, 2007

Port Forwarding Nedir?

Port yönlendirmeyi anlayabilmek için IP ve Port hakkında biraz ön bilgiye sahip olmak gerekiyor, buradan gün itibariyle hakim olduğum akademik bilgi ölçüsünde olay şöyle:


Her internete girdiğimizde bir adet global IP adresi alırız, bu IP adresi tüm dünyada tekil olduğu için aslında bizim bilgisayarımızın Internet üzerindeki adresine denk gelir. Gerçekte Internete bağlantı kuran cihaz modem olduğu için aslında internete giren modemdir, modem internet bağlantısını sağlayıp sonra kendisine bağlı bilgisayar(lar)la bunu paylaşır, tüm dünyada tekil olan IP adresini de modem almış olur. Modemle bilgisayarımız arasında da küçük bir lokal network oluşur, lokal networkteki her cihazın yine birer IP adresi olması gerekeceği için, sonuç olarak bilgisayarımızın bir adet, modemin ise iki adet IP adresi olur.Modemin sahip olduğu IP'lerden biri tüm dünyada tek olan global IP adresidir, diğeri de kendi lokal networkumuzde geçerli olan lokal IP adresidir. Bilgisayarımız ile internet arasında kurulan iletişim, gerçekte bilgisayar ile modem arasında lokal ip'ler üzerinden kurulur, modem port yönlendirme yaparak bizim isteklerimizi internette ilgili bilgisayarlara yönlendirir ve bu işlem otomatik olarak gerçekleştiği için biz bunun farkına varmayız ama bazı durumlar vardır ki bu port yönlendirme işlemi otomatik yapılamaz bu durumda bizim bir takım tanımlamalar yapmamız gerekir.
Hangi durumlarda port yönlendirmeyi bizim yapmamız gerekir?
Buradaki en önemli konu, iletişimi kimin başlattığını bilmektir. Çünkü bu bizi port yönlendirmeye ihtiyacımız var mı yok mu noktasına getirecektir. Eğer iletişimi başlatan taraf biz isek herhangi bir port yönlendirme işlemi yapmaya gerek yoktur, çünkü iletişime başlarken karşı tarafa nerde olduğumuzu iletiriz. Eğer bilgisayarımıza uzaktan erişilmesini istiyorsak bu durumda iletişimi uzaktaki bilgisayar başlatacaktır ve uzaktaki bilgisayar sizin IP adresinizi ve hangi port'u kullanarak iletişim kuracağını bilmesi gerekir. Internetteki IP adresinizi en pratik olarak http://www.checkip.net adresine girerek öğrenebilirsiniz. Bunu öğrenmek yeterli olmamaktadır çünkü bu IP ile bilgisayarımıza değil ancak modemimize erişilebilir, bu durumda modem'e demelisiniz ki "dışarıdan sana gelen bu istekleri benim bilgisayarıma yönlendir". Aslında dışarıdan gelen isteklerin içinde bir de port bilgisi olacağı için modeme tam olarak şunu demelisiniz "Dışarıdan senin X portuna gelen istekleri, benim bilgisayarımın X portuna yönlendir." bunun adı port yönlendirmedir. Eğer modeme birden fazla bilgisayar bağlı ise X portundan gelenleri A bilgisayarına, Y portundan gelenleri B bilgisayarına yönlendir diyebilirsiniz. Örneğin bu bilgisayarlardan biri WEB sunucu diğeri Email sunucu olabilir. Sahip olduğunuz bir IP adresi ile modeminize bağlı birden fazla bilgisayara erişim yapılması sağlanabilir, bu nedenledir ki Port Yönlendirme işlemine bir çok yerde Virtual Server (sanal sunucu) oluşturma adı da verilir.

Dia ile çizdiğim yukarıda şekil, Windows'un Remote Desktop uygulaması ile bilgisayarınızı uzaktan kullanırken oluşan akışı gösteriyor. Uzaktaki bilgisayar 'dan Remote Desktop programını başlattığınızda size bir IP soracaktır bu IP evdeki modeminizin internete bağlanırken aldığı IP'dir e.g. 160.75.114.119'dur.
3389 portunu siz vermiyorsunuz, Remote Desktop bu portu kendisi kullanarak bağlantı sağlıyor. Sonuçta IP ve Port bilgisi ile modeminize erişim sağlanıyor, modem ayarlarında yer alan port forwarding ya da virtual server bilgisi sayesinde bağlantı isteği, evdeki lokal networkte yer alan bilgisayarınıza yani örnekteki 192.168.1.2 numaralı IP'nin 3389 portuna yönlendiriliyor. Bundan sonra artık iki program arasında sağlanan iletişim ile evdeki bilgisayarınızı uzaktaki bilgisayar ile kullanmaya başlıyorsunuz.

Port Yönlendirme veya Virtual Server tanımlama işlemi modem yönetim programı ile yapılmaktadır, görüntüsü modem üreticisine göre farklılık gösteren ama genelde web tabanlı çalışan bu arayüzlerden gerekli örnekleri web'ten de bulabilrsiniz.

Tercih edilen üreticiler, arayüzlerinin gelişmişliği sırasıyla dlink, linksys, zoomve us robotics olarak verilebilir.

2 comments:

Unknown said...

Verdiğin bilgiler için teşekkür ederiz. Güzel bir yazı olmuş.

sydundar said...

Süper anlatım.teşekkürler