online_mansoor2007
سه شنبه 13 بهمن 1388, 10:22 صبح
سلام به همه دوستان .
در حالت عادی با دستور زیر ما می تونیم IP کاربر بازدید کننده از سایت رو بدست بیاوریم .
Request.Params("REMOTE_ADDR")
or
Request.ServerVariables("REMOTE_ADDR")
or
Request.UserHostAddress()
or
Request.ServerVariables("HTTP_X_FORWARDED_FOR")
or
Dim strHostName As String = System.Net.Dns.GetHostName()
Dim clientIPAddress As String = System.Net.Dns.GetHostAddresses(strHostName).GetVa lue(0).ToString()
Label5.Text = clientIPAddress
اما این دستورات IP Valid کاربر را به ما میده . اگر خود کاربر IP ولید داشته باشه که هیچ ، اما اگر کاربری از طریق proxy به اینترنت وصل باشه و در واقع NAT شده باشه در این صورت وقتی از سایت ما بازدید می کنه IP پروکسی به عنوان IP کاربر نمایش داده میشه . زیرا کاربر از طریق اون پروکسی به اینترنت وصل هست . کاربرانی که از پست پروکسی NAT شده اند یک آی پی Invalid دارند . کاربران خانگی که به اینترنت دایال آپ وصل می شوند معمولاً به این صورت هستند . من نیاز دارم توی برنامم این آی پی اینولید کاربر را بدست بیارم .
یه توضیح دیگه هم می دم . فرض کنیم ما یک سرور پروکسی با ای پی ولید 217.219.5.5 داریم . این پروکسی به 30 کاربر اینترنت میده . و IP ای که به کاربران میده از 192.168.1.2 شروع میشه تا 192.168.1.31 . در صورت استفاده از دستورات بالا اگر هر کدام از این 30 کاربر از سایت ما بازدید بکنند ای پی 217.219.5.5 به عنوان IP بازدید کننده نشون داده میشه ! اما من میخوام IP های اینولید و به عبارتی آی پی هایی که در مثال بالا از 192.168.1.2 شورع می شد تا 192.168.1.31 را به عنوان IP بازدید کننده نشون بده .
ممنون میشم از دوستان اگر برای این سوال من راهکاری ارائه بدهند
سپاس
در حالت عادی با دستور زیر ما می تونیم IP کاربر بازدید کننده از سایت رو بدست بیاوریم .
Request.Params("REMOTE_ADDR")
or
Request.ServerVariables("REMOTE_ADDR")
or
Request.UserHostAddress()
or
Request.ServerVariables("HTTP_X_FORWARDED_FOR")
or
Dim strHostName As String = System.Net.Dns.GetHostName()
Dim clientIPAddress As String = System.Net.Dns.GetHostAddresses(strHostName).GetVa lue(0).ToString()
Label5.Text = clientIPAddress
اما این دستورات IP Valid کاربر را به ما میده . اگر خود کاربر IP ولید داشته باشه که هیچ ، اما اگر کاربری از طریق proxy به اینترنت وصل باشه و در واقع NAT شده باشه در این صورت وقتی از سایت ما بازدید می کنه IP پروکسی به عنوان IP کاربر نمایش داده میشه . زیرا کاربر از طریق اون پروکسی به اینترنت وصل هست . کاربرانی که از پست پروکسی NAT شده اند یک آی پی Invalid دارند . کاربران خانگی که به اینترنت دایال آپ وصل می شوند معمولاً به این صورت هستند . من نیاز دارم توی برنامم این آی پی اینولید کاربر را بدست بیارم .
یه توضیح دیگه هم می دم . فرض کنیم ما یک سرور پروکسی با ای پی ولید 217.219.5.5 داریم . این پروکسی به 30 کاربر اینترنت میده . و IP ای که به کاربران میده از 192.168.1.2 شروع میشه تا 192.168.1.31 . در صورت استفاده از دستورات بالا اگر هر کدام از این 30 کاربر از سایت ما بازدید بکنند ای پی 217.219.5.5 به عنوان IP بازدید کننده نشون داده میشه ! اما من میخوام IP های اینولید و به عبارتی آی پی هایی که در مثال بالا از 192.168.1.2 شورع می شد تا 192.168.1.31 را به عنوان IP بازدید کننده نشون بده .
ممنون میشم از دوستان اگر برای این سوال من راهکاری ارائه بدهند
سپاس