Mesut Hocam,

uzun uzun açıklamışsınız, çok teşekkür ederim.
Eskiden çevirmeli bağlantılarla internete çıkardık, hepimizin gerçek ip'si 
olurdu, hey gidi günler... Ben de niye kimse benden dosya çekmiyor diye 
düşünürdüm ara sıra. Eskiden(çevirmeli devirlerde) biz de bişeyler gönderirdik, 
acaba biz mi çok boş adam olduk da kimseye faydamız olmuyor diye aklıma 
gelmiyor değildi. Adsl sisteme geçtiğimizden beri kimsenin benden dosya 
çekmediğini fark etmemişim demek ki :)

p2p konusunu çözdüğümüze göre "peki bu adamlar nasıl yapıyor" diye düşünmeye 
gerek kalmadı. Demek ki onlar da yapamıyorlarmış.

Öyleyse düşünmeye devam ediyorum:
Madem dışarıdan içeriye girilemiyor(yönlendirme yapmadan), içeriden dışarıya 
çıkılsa... Ortada gerçek ip'si olan bir sunucu olsa, bu sunucu iki bağlantı 
arasında köprü görevi görse, ya da bağlantıyı oluşturduktan sonra aradan 
çekilse... Köprü işi uygulama katmanında bile halledilebilir diye düşünüyorum 
ama aradan çekilme zor gibi. TCP/IP'nin çerçeveleri, akış denetimi vs. buna 
izin vermez gibi...

Önerilerinize açığım,
tekrar teşekkür eder, çalışmalarınızda kolaylıklar dilerim...




From: [EMAIL PROTECTED]
To: freebsd@lists.enderunix.org
Date: Sat, 8 Dec 2007 19:59:55 +0200
Subject: RE: [FreeBSD] Alt ağlar arası iletişim...



















Hakan bey şu şekilde ifade etmeye çalışayım;

 

Bildiğiniz gibi haberleşmeler OSI katmanlarından geçerek meydana
gelirler. En aşağıda network kabloları onun üstünde network kartımız var 
diyelim.
Burası Layer 2. Burada MAC var. Onun üstünde IP. Bu da Layer 3. Onun üstünde
haberleşme portları. Onun üstünde de protokoller. 

 

Hangi uygulama olursa olsun bu katmanlardan teker teker geçmek
zorunda. Ki zaten uygulama bu katmanların en üstünde yer alıyor. Yani
7.katmanda. o sebeple yazılan tüm uygulamaların bu katmanları kullanmaları
şart. IP, port ya da protokol olmadan uygulamaların haberleşmesi sizin de
bildiğiniz gibi olanaksız. Her katman kendisine gelen paketi alır işler ve bir
sonrakine iletir. Bir sonraki yöne göre değişir. Gelen paket ise işi biten
paket üst katmana, giden paket ise alt katmana iletilir.

 

Kullanılan uygulamalara gelince, ister kazaa olsun, ister
e-donkey, ister limewire ister başka bir uygulama. Bu uygulamaların tamamı da 
yine
port mantığına dayanır. Yani aslında tüm bu programı kullananlar sizin bu
programların özellikler kısmında ayarladğınız ve benden dosya almak isteyenler
benim bu portuma gelsin diye yayınladığınız portlara bağlanmaya çalışırlar. (
diğerlerinin sizden dosya çekmeleri için ). Bu portları siz kendinize göre
değiştirebilirsiniz. Ve bunu yayınlarsınız. Bu yayınınız o uygulamaların
serverlarına bağlanınca diğer kullanıcılara bildirilir ve isteyenler bu
portunuza bağlanarak sizden dosya almaya çalışırlar. Ancak siz adsl den bir
ayarlama yapmadıysanız örneğin 4777 porta gelen isteği içerideki
192.168.1.5:477 portuna ilet demediyseniz bu kullanıcının isteği adsl önünde
düşürülecektir. Yani normalde ve aslında ADSL arkasındaki kullanıcılar sadece
download yaparlar. Bu port yönlendirmeyi yapmadığınız sürece kimse sizden dosya
çekemez. Ancak siz de sadece bu özelliği aktive eden kullanıcılardan
çekebilirsiniz.

 

Ancak bazı programlar şu şekilde bir şey yapar. Sizin port
erişiminizi kontrol ederler. Eğer sizin yayınladığınzı portunuza dışarıdan
erişim yoksa download rate inizi düşürürler ve hatta tamamen keserler. Yani
portunuza dışarıdan erişim yoksa bazı göstergeler turuncu yada kırmızı olur. Bu
da download hızınız düşük olacak demektir. ya da tamamen kapalı. Bunu aşmak
için bu port yönlendirmenin nasıl yapıldığı ile ilgili hemen link verirler
programların sayfasında.

 

http://forum.donanimhaber.com/m_1012655/tm.htm

http://www.hardwaremania.com/forum/donanim/network/kazaa-port-yonlendirme-23544.html

http://portforward.com/cportsnotes/edonkey/eDonkey.htm

 

Ancak, eğer bağlantı içeriden dışarıya, yani bu programlarda
olduğu gibi, adsl arkasındaki bir pc den, yine adsl arkasında olupta sadece
belirli bir port için yönlendirme yapılmış başka bir noktaya erişim
sağlanabilir.

 

Örneğin netcat uygulamaları ve diğer bunun gibi programlar bu
amaçlıdır. Ve kötü amaçla da kullanılabilirler. 

Mesela Siz adsl modeminizden 9999 portunu kendi PC nizin 9999
portuna yönlendirdiniz diyelim. Bir virüs ya da teknik destek uygulaması
yazdınız. Sayısı da 1000 adet olsun. Bunun 1000 kişiye yaydınız ya da sattınız
diyelim.

 

Kullanıcılar tarafından kullanılan tüm programlar local portları
önemsiz olduğundan ve hedef olarak ta 9999 portuna bağlanmak isteyeceklerinden
eğer LAN larının çıkışında 9999 portuna erişimleri engelleyen bir uygulama
yoksa sizin portunuza erişeceklerdir. 9999 portu Pcüzerindeki herhangi bir
firewall dan ya da gateway üzerinden kapalı ise erişim gerçekleşmeyecektir.

Tüm kullanıcılar aynı anda ( kapasiteye bağlı olarak ) sizin
9999 portunuza bağlanabileceklerdir. Porta ve IP ye erişim olduktan sonra
katmanlar arası iletişim aynen tekrar uygulanır.

 

Bu uygulamanın erişeceği port un 9999 olmasından dolayı
engellenmesini istemiyorsanız normal bir port olarak ta belirtebilirsiniz.
Örneğin 80. Siz port yönlendirmenizi ADASL üzerinden 80 olarak yapabilirsiniz.

 

ADSL in 80 ine gelen isteği 192.68.1.5 in 80 ine. Ya da 9999
una. Bu size kalmış. Port 80 de illaki HTTP çalışacak diye bir kural yok. 
Burada siz kendi servisinizi çalıştırıyor olabilirsiniz. Ancak bu seferde PC
üzerindeki FW .exe dosyanızın port 80 isteği yaptığı alarmını kullanıcıya
verebilir. Burada kullanıcının bilgilendirilerek buna izin vermesi
istenmelidir.

 

Buna izin verseniz dahi GW üzerinde çalıştırılan bir uygulama
port 80 den sadece HTTP trafiğine izin verecek şeklinde tasarlanmış olabilir.
Bu halde PC den çıkan istek GW üzerinde IPS / IDS / IDP lerden birine
takılacaktır.

 

Bu sebeplerden dolayı yazacağınız programda bunları göz önünde
bulundurarak, son kullanıcı tarafından tarafınıza istek gelmesini sağlarsanız
ADSL arkasındaki kullanıcılara erişimde tarafınızdan kaynaklı bir sorun
olmayacaktır. Bunun için bağlanılacak olan portu sizin tarafınızda dinlemeniz
ve yönlendirmeniz yeterli. Bağlantı 2 taraftanda oluşturulamaz bu durumda.
Kullanıcıdan “yardım iste” diye bir butona basarak bağlantı
isteğinin onların tarafından başlatılmasını istemelisiniz. Sanırım adı socket
programlama. Bu yardım uygulamanın ADSL arkasında olmayıp FW arkasında olan
kullanıcılar için de kullanılabilir olduğunu düşündüğümden diğer konulara da
azcık girdim.

 

MSN de kullanıcılar birbirleri ile direkt olarak bağlantı
kurmuyorlar diye biliyorum. Dosya gönderseniz dahi bunu halleden MSN SERVER
ları diye hatırlıyorum. Proxy olayı devreye giriyor o noktada saırım.

 

Umarım yardımcı olur.

 

İyi çalışmalar...

 





From: Hakan K [mailto:[EMAIL PROTECTED] 

Sent: Saturday, December 08, 2007 7:15 PM

To: freebsd@lists.enderunix.org

Subject: RE: [FreeBSD] Alt ağlar arası iletişim...





 

Mesut Hocam, 

cevap için teşekkür ederim ama aradığım bu değil aslında.



Şöyle anlatmaya çalışayım bir de:



Siz adsl modemin arkasındaki bir müşterisiniz, ben de adsl modem arkasındaki
teknik eleman. Ben sizin bilgisayarınıza bağlantı kurup işi çözmek istiyorum.
Sizin modem üzerinde herhangi bir ayar(Port yönlendirme, NAT vb.) yapma
şansınız yok. Bunu yapabilse zaten müşterinin desteğe ihtiyacı olmaz :). Ben
sizin makineye nasıl bağlantı kurarım? Aradığım şey bu ama bu işin özünü
öğrenmek isterim. Yani bu işi yapan dolu yazılım var tabii. Yazılım aramıyorum,
teknik bilgi arıyorum.

Örneğin msn üzerinden iki kişi(ikisi de adsl router arkasında) nasıl birbirine
dosya gönderebiliyor? limewire programında nasıl bir istemci diğer bir
istemcinin dosyalarını çekebiliyor(ikisi de adsl router arkasında tabii)?



Uzaktaki müşteriler için bir destek yazılımı geliştiriyoruz varsayalım. Umarım
soruyu netleştirebilmişimdir.



Tekrar teşekkürler...













From: [EMAIL PROTECTED]

To: freebsd@lists.enderunix.org

Date: Sat, 8 Dec 2007 19:08:34 +0200

Subject: RE: [FreeBSD] Alt ağlar arası iletişim...



http://ipucu.enderunix.org/view.php?id=248&lang=tr

 

ya da

 

http://www.inndir.com/program.php?id=32296

http://www.hamachiturk.net/forum/

 

ancak en güzeli ilk gönderdiğim. Lakin hamachi ile de bunu
yapabilirsiniz ancak NAT yapılan sistemler arkasında sorunlar ile
karşılaşabilirsiniz.

 

Ya da herhangi bir VPN uygulaması ile iki makine arasında VPN
kurmak...

 

İyi çalışmalar...

 





From: Hakan K [mailto:[EMAIL PROTECTED] 

Sent: Saturday, December 08, 2007 6:51 PM

To: freebsd@lists.enderunix.org

Subject: [FreeBSD] Alt ağlar arası iletişim...





 

Merhaba,



Doğrudan FreeBSD ile ilgili değil ama sorum şöyle:



Gerçek ip'si  olmayan alt ağdaki bir makineye doğrudan bağlantı
kurulabilir mi?



Örnek vermek gerekirse:

A ve B makineleri internete adsl router üzerinden çıkıyor olsunlar.

A'nın alt ağ adresi: 15.25.35.45

B'nin alt ağ adresi: 1.1.1.1





A makinesinden B makinesine bağlantı kurulmak isteniyor diyelim. Mesela dosya
paylaşım programları istemciler arasında doğrudan bağlantı kurabiliyor. Ya da
vnc gibi uzak masaüstü yazılımları da bunu yapıyor. router üzerinde port
yönlendirme yapılarak çözülebilir ama aradığım çözüm bu değil. Zira dosya
paylaşım yazılımları bunu yapmadan da çalışıyor. 



Yani bağlantı oluştururken "şu gerçek ip'nin altındaki şu adrese"
diye bir işaretleme yapılabiliyor mu?



Şimdiden teşekkürler...







Yeni
nesil Windows Live Servisleri’ne şimdi ulaşın! Buraya tıkla!



 







Yeni
nesil Windows Live Servisleri’ne şimdi ulaşın! Buraya tıkla!







_________________________________________________________________
Yeni nesil Windows Live Servisleri’ne şimdi ulaşın!
http://get.live.com

Cevap