PDA

View Full Version : سوال: socket programming



hamedkha
جمعه 14 آبان 1389, 14:55 عصر
سلام

با استفاده از مفهوم socket در C# یه برنامه چت نوشتم

که توی شبکه lan جواب داده

چه طور می تونم در اینترنت از این برنامه استفاده کنم

منظور اینه که 2 تا کامپیوتر با آدرس ای پی تعیین شده رو با

این برنامه چه جوری می تونم به هم وصل کنم

با تشکر

raravaice
جمعه 14 آبان 1389, 15:39 عصر
شما برای استفاده از این برنامه در اینترنت به طور حتم نیاز به سروری دارید با آی آپی ولید ، به این دلیل که امکان داره کاربر های شما از طریق Nat به اینترنت دسترسی داشته باشند.
در نتیجه برنامه خود را باید به mode کلاین و سرور تغییر شکل دهید.
اگر با استفاده از TCP این کار را انجام داده باشید وظیفه سرور دریافت اطلاعات از کلاینت مبدا و ارسال آن به کلاینت مقصد میباشد.
اگر با استفاده از UDP این کار را انجام دهید وظیفه سرور میتواند کمتر شود و فقط در این حد که آی پی کلاینت ها را به یکدیگر معرفی کند محدود شود و بار سرور کمتر شود، در این حالت کلیه اطلاعات از کلاینت به کلاینت جا به جا خواهد شد.

موفق باشید

C Sharp
شنبه 15 آبان 1389, 07:49 صبح
اگه هر دو طرف سرویس ADSL داشته باشین، کافیه مودم رو رو حالت Bridge قرار بدین یا port مورد نظرتون رو تو مودم Forward کنید به pc . بعدش میتونید از سایتهایی مثل www.whatismyip.com برای بدست آوردن ip تو اینترنت استفاده کنید. این ip ها رو که برای هر دو سیستم بدست آوردین رو به نرم افزارتون بدین و بعد میتونید متصل بشید.
اگه از dial-up استفاده میکنید که بکر نمیکنم راهی وجود داشته باشه مگه اینکه هر دو طرف به یه isp وصل شده باشید و ip که بهتون داده شده تو یه رنج باشه .

ارتباطی به معماری نرم افزارتون نداره که client-server باشه یا p2p