關於獲取客戶端IP問題

//相關代碼
一、HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]
二、HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"]
三、HttpContext.Current.Request.UserHostAddress

一、其中2和3的效果相同,區別可google。1表示能夠獲取到使用代理的IP地址,固然只是在客戶端使用透明代理的時候才能獲取到原始的IP地址。對於,使用了高匿的代理,服務器端是沒法獲取到原始IP的,所以這給爬蟲工程師們留了一條後路。html

二、IIS日誌中也會記錄,訪問的客戶端的IP地址,他記錄的IP地址和二、3記錄的IP地址是相同的,若是使用的是代理記錄的是代理IP地址。服務器

三、項目接觸到的經驗:一些學校內部的服務器,若是是學生使用本身的校園網這時候獲取到的客戶端IP有可能只是學生的內網地址而不是外網出口地址,可是若是是在外網訪問學校的服務器這時候獲取到的客戶端IP是正常的就是客戶端外網地址。學校內部也是多個用戶共用一個外網地址。google

四、IP私有地址段spa

  

參考文章:代理

  https://www.cnblogs.com/bdqlaccp/p/3698589.html日誌

  https://zh.wikipedia.org/wiki/%E4%B8%93%E7%94%A8%E7%BD%91%E7%BB%9Ccode

相關文章
相關標籤/搜索