Portlarla ilgili mesajlaşma ama durum biraz farklı

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
delphist
Üye
Mesajlar: 595
Kayıt: 05 Oca 2005 04:34

Portlarla ilgili mesajlaşma ama durum biraz farklı

Mesaj gönderen delphist »

S.a. Arkadaşlar Baya bir zor bir soru olacak kanaatindeyim.

Server Client çalışan bir yazılım var. Örneğin Server portu 2020 olsun 2020 ye mesaj gönderiyor ve netten çalışıyor. Server olarak çalışan yazılımın 2020 değilde 5050 de çalışmasını sağlayıp 2020 biz dinleyip gerekli işlemleri yapıp tekrar 5050 yönlendirme gibi bir lüksümüz olabilir mi...Mantıken olabilir diye düşünüyorum. Bu bağlamda böyle bir durumda Client tarafından gelen mesajların nasıl ve hangi parametrik yöntemlerle gönderildiğini ve Servera ulaştığını nasıl anlayabiliriz ve tabi böyle bir şey mümkün mü...

Teşekkürler....
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Böyle birşey tabii ki mümkün. Ara programın bir proxy ye benzeyecek.

2020 yi dinleyen bir program yaz. Gelen mesajları ekranda görüntülesin ve kendisine ne geldiyse 5050 deki gerçek server a göndersin. Serverdan gelen yanıtı da 2020 ye mesajı gönderen client a geri yollasın.
İstemci <---> 2020 (Ara sunucu, senin yazılım) <---> 5050 (Gerçek sunucu)
şekildeki gibi.
Kullanıcı avatarı
delphist
Üye
Mesajlar: 595
Kayıt: 05 Oca 2005 04:34

Mesaj gönderen delphist »

ok. teşekkür ederim Lord Hocam...Yanlız Server Client yazılımı ben yazmıdığım için bilmiyorum sonuçta ne mantıkta yazıştığını vs. onun için gelen mesajın hangi paremetrik yöntemlerle ve hangi kurallarla geldiğini bulabilmemiz için ne gibi yöntemler ve teknikler izlememiz lazım...indy ve internet tabındaki bileşenlerle haşır neşirliğimiz var. Fakat istemci tarafından gönderilen mesaj formatının ne tür bir formatta gönderildiğini bilmek gerekiyor diye düşünüyorum...
doganzorlu
Kıdemli Üye
Mesajlar: 395
Kayıt: 22 Tem 2004 09:15
Konum: İzmir
İletişim:

Mesaj gönderen doganzorlu »

Selam,

Port sniffing denen teknikle protokolü çözebilirsiniz sanırım... Bir firewall koyun ortaya (iptables/netfilter ikilisi bu işi çok kolay yapar sizin için), 2020 ye giden trafiği 5050 ye yönlendirin. 5050 yi dinleyen bir program yazın. Ve connectionlar için bir havuz tutun. Tüm connectionlar sizin programa gelecek zira. Sonra siz locl 2020 ye bir bağlantı yapıp gelen paketi oraya gönderin ordan döneni de tekrar client a. Transparan çalışan bu programda akan trafiği bir log dosyasına kaydedip oluşan sonucu inceleyebilirsiniz. Ama connection management i iyi kontrol edin.. Client establish olunca siz de server a olun, o kesilince serverdan bağlantıyı kesin ve client ları iyice yalıtın. Birbirine karışmasın mesaj trafikleri...

Bunu yapan yazılım birsürü vardır eminim ama sonunda siz bunu mesajları alter etmek için kullanacağınız için en baştan yazmanızda yarar var.


Kolay gelsin..
Doğan Zorlu, İzmir

------------------------
"Bu Kitap'ı sana yalnız şunun için indirdik: Hakkında ayrılığa düştükleri şeyi onlara iyice açıklayasın ve Kitap, iman eden bir topluluk için kılavuz ve rahmet olsun." (NAHL 64)
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Anladığım kadarıyla bir protokol çözümlemeye çalışıyorsun. Bunun için sniffer yazılımı kullanabilirsin. Google da Ethereal diye arama yap. En geniş kapsamlı ve kolay kullanılan programlardan biridir. WinPCap kütüphanesine ihtiyaç duyar. Sayfasından bunu da indirip kurmalısın. Bu program sayesinde ağ üzerinde giden gelen mesaj trafiğini rahatlıkla izleyebilirsin.
Cevapla