Merhaba.
İndy ile yaptığım bir programda karşı tarafa bağlanabilmem için adsl modemden Virtual server ayarları yapıp çıkış portunu ayarlamam gerekiyor.
yine sürekli bağlanabilmem için karşı tarafın static ip numarasının olması gerekiyor.
Fakat msn messenger ve benzeri uygulamalarda bunu yapmaya gerek yok.
Msn bu işi nasıl yapıyor?
Bunu delphide yapmak için kod , örnek vs biliyorsanız bekliyorum.
Şimdiden teşekkürler
Msn bu işi nasıl yapıyor?
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 298
- Kayıt: 19 Tem 2004 01:45
- Konum: Giresun/Samsun
Önce Client ve Server kavramlarını tanıyalım.
MSN Messenger bir client'tır. MSN sunucusu ile belirli bir porttan bağlantı kurar. MSN'ye bağlantı isteği yaptığında ADSL'in NAT bölümü devreye girer ve şu portu açan şu IP'ye dışarıdan gelecek yanıtları taşı der.
Eğer ki sen bir sunucu uygulaması yazıyorsan. Mesela bir MSN sunucusu yazacaksın (istemci değil). Dışarıdan senin bilg. client'lar bağlantı kuracaksa, ADSL modeminden sunucunun dinlediği port u yönlendirmen gerekir. Çünkü NAT içeride hangi portu dinlediğini bilemez. Senin ayarlardan bunu bildirmen gerekir.
Yani olayda bir hile falan söz konusu değil. Programlama ile de ekstra birşey yapamazsın. Donanım neye izin veriyorsa onu yaparsın olmuyorsa donanımı ayarlarsın.
MSN Messenger bir client'tır. MSN sunucusu ile belirli bir porttan bağlantı kurar. MSN'ye bağlantı isteği yaptığında ADSL'in NAT bölümü devreye girer ve şu portu açan şu IP'ye dışarıdan gelecek yanıtları taşı der.
Eğer ki sen bir sunucu uygulaması yazıyorsan. Mesela bir MSN sunucusu yazacaksın (istemci değil). Dışarıdan senin bilg. client'lar bağlantı kuracaksa, ADSL modeminden sunucunun dinlediği port u yönlendirmen gerekir. Çünkü NAT içeride hangi portu dinlediğini bilemez. Senin ayarlardan bunu bildirmen gerekir.
Yani olayda bir hile falan söz konusu değil. Programlama ile de ekstra birşey yapamazsın. Donanım neye izin veriyorsa onu yaparsın olmuyorsa donanımı ayarlarsın.
Merhaba...
- Port açmadan yapmak konusunda ısrarlıysan, HTTP protoklünü kullanabilirsin... Ama sürekli OnLine değil tek taraflı bir sorgu bağlantısı olacaktır. Belli zaman peryodlarında server'a sorgu yaptırıp, yeni mesaj var mı diye kontrol ettirmek lazım gelir...
- Server tarafında bir ASP çalışır ve gelen mesajları tutar. Bu geçici bir TXT dosyası da olabilir, kalıcı bir veritabanı da...
- Sen YeniMesaj.TXT isminde bir dosya var mı diye kontrol edersin, kontrol sonunda eğer varsa server'den bu dosya sana ulaştığında serverden silinir gibi bir metod.
- Port açmadan yapmak konusunda ısrarlıysan, HTTP protoklünü kullanabilirsin... Ama sürekli OnLine değil tek taraflı bir sorgu bağlantısı olacaktır. Belli zaman peryodlarında server'a sorgu yaptırıp, yeni mesaj var mı diye kontrol ettirmek lazım gelir...
- Server tarafında bir ASP çalışır ve gelen mesajları tutar. Bu geçici bir TXT dosyası da olabilir, kalıcı bir veritabanı da...
- Sen YeniMesaj.TXT isminde bir dosya var mı diye kontrol edersin, kontrol sonunda eğer varsa server'den bu dosya sana ulaştığında serverden silinir gibi bir metod.
@coderlord yazdıklarımı bir daha inceler misin... HTTP protokolü dedim ama Port 80'den gelen bilgi demedim . Virtual server port açmadan yapmak değil mi mevzu ? Sürekli istek var download var gelen çağrı yok...
// Edit // Ek //
Text Dosyaya Yazma ASP/HTML örnekleri
- Gerek yok ama bu da eksik kalmasın....
Text Dosyadan Okuma ASP /HTML örnekleri
// Edit // Ek //
Text Dosyaya Yazma ASP/HTML örnekleri
- Gerek yok ama bu da eksik kalmasın....
Text Dosyadan Okuma ASP /HTML örnekleri
-
- Üye
- Mesajlar: 298
- Kayıt: 19 Tem 2004 01:45
- Konum: Giresun/Samsun