PDA

View Full Version : پیدا کردن آدرس Client Ip Server



ghasemshami
پنج شنبه 09 مهر 1388, 09:57 صبح
من اومدم تو برنامم برای اینکه Ip Client رو پیدا کنم از IdIPWatch1 استفاده می کنم اما Ip Local رو بر می گردونه و هر چه هم جستجو کردم به نتیجه خاصی نرسیدم

از دوستان بابت این همه کمک ممنونم

tdkhakpur
پنج شنبه 09 مهر 1388, 13:44 عصر
ببینید همان نتیجه ای که از IdIpWatch میگیرید در حقیقت آدرس واقعی و همان ip هست که شما داخل اینترنت باهاش میچرخید ولی چون شما داده ها را توسط ISP تحویل میگیرید باید عملیات چرخش را ISP برای شما انجام دهد نه خود شما.
حالا برای اینکه شما مستقیما با اینتر نت در ارتباط باشد ISP برای شما توسط DHCP یک IP میدهد که این IP هرچند invalid ولی در حقیقت به عنوان ولید عمل میکند و شما باید از این طریق عملیات را انجام دهید.
توضیح مطالب راجع به چگونگی عملیات بحث گستردهای هست و میتوانید با مطالعه شبکه و پروتکلهای مربوطه دلیل این اعمال را جویا بشود.
بگذریم آنچه که حالا درد شما را درمان میکند این است که شما از ISP خود بخواهید که IP مشخص کننده کامپیوتر شما را به شما بدهد و یا میتوانید از Status کانکشن با راست کلیک و دیگر گزینه ها پیدا کنید..

ghasemshami
پنج شنبه 09 مهر 1388, 15:14 عصر
بگذریم آنچه که حالا درد شما را درمان میکند این است که شما از ISP خود بخواهید که IP مشخص کننده کامپیوتر شما را به شما بدهد و یا میتوانید از Status کانکشن با راست کلیک و دیگر گزینه ها پیدا کنید..

همه اینهایی که شما گفتید رو می دونستم ولی من کاری که می خوام بکنم اینه که من در برنامه چت می خوام IP رو به دست بیارم و معلوم نیست توی چه کامپیوتری اجرا بشه

vcldeveloper
جمعه 10 مهر 1388, 00:22 صبح
من کاری که می خوام بکنم اینه که من در برنامه چت می خوام IP رو به دست بیارم و معلوم نیست توی چه کامپیوتری اجرا بشه
IP چی رو بدست بیارید؟ اگر منظور IP کلاینتی هست که به سرور وصل شده، خب IP کلاینت در زمان اتصال به سرور، به سرور ارسال میشه. شما می تونید همان موقع آن را جایی ثبت کنید، و بعد از آن، از طریق همین IP به کلاینت دسترسی داشته باشید.

tdkhakpur
جمعه 10 مهر 1388, 09:11 صبح
همه اینهایی که شما گفتید رو می دونستم ولی من کاری که می خوام بکنم اینه که من در برنامه چت می خوام IP رو به دست بیارم و معلوم نیست توی چه کامپیوتری اجرا بشه
شما نحوه برداشتان از IP اشتباهه ببینید از وقتی که اینترنت ایجاد شده هر موجودیتی برای خودش یک ip مخصوص به خود دارد زمان فعلی را در نظر نگیرید در آینده کامپیوتر شما پر از ip خواهد بود که حتی نخواهید دانست که داره هویت کدام سخت افزار را مشخص میکند. به هر حال شما اگر بخواهید هویت یکip را مشخص کنید باید با سعی و خطا ip مورد نظرتان را پیدا کنید.
با اجرای برنامه زیر در داخل کد یا command میتوانید ip را از داخل فایلی که ایجاد میشود بدست بیارید..


local_IP.txt //داخل این فایل می باشدIP

ghasemshami
جمعه 10 مهر 1388, 19:03 عصر
دوست عزیز داخل نمونه برنامه ای که گذاشتید هم Local IP و هم Client Ip Address رو بر می گردونه ولی من نمی خوام فایل اضافی کنار برنامم باشه و دومین Ip رو که داخل فایل txt بر می گردونه رو میخوام که همون Client IP Address است.

اگه لطف کنید و این نمونه کد رو بذارید که Client IP Address رو برگردونه بدون هیچ فایل اضافه ممنون می شم

ghasemshami
جمعه 10 مهر 1388, 19:03 عصر
آقای کشاورز میشه لطف کنید بفرمائید چطوری این کار رو بکنم و این رو هم بگم برنامم Local نیست و تحت اینترنت هستش

vcldeveloper
جمعه 10 مهر 1388, 21:36 عصر
آقای کشاورز میشه لطف کنید بفرمائید چطوری این کار رو بکنم و این رو هم بگم برنامم Local نیست و تحت اینترنت هستش
قبلا درباره اش توضیح دادم - همان تاپیکی که به گفته شما در کد نوشته شده سرور به همه کلاینت ها در داخل یک حلقه for پیام ارسال می کرد.

ghasemshami
جمعه 10 مهر 1388, 22:10 عصر
آقای کشاورز در اون حلقه فقط دو تا آرایه بود که تو اون لیست کاربران بود

حالا کجای اون کد IP کلاینت ها ذخیره شده

چطوری به دست بیارمش

delphidark
دوشنبه 09 آذر 1388, 20:32 عصر
دوست عزیز برای گرفتن IP کلاینت می تونی از شی Athread که در رویداد onconnect تعریف شده به شکل زیر استفاده کنی...

Athread.connection.socket.binding.peerip

که نتیجه یه رشته با محتوای آی پی کلاینت هست
البته اگه کلاینت از اینترنت share شده استفاده کنه (مثل بعضی از ارائه دهنده های دایل آپ) ip به دست اومده ولید نیست و ...