获取用户的IP地址的三个属性的区别
一、没有使用代理服务器的情况:
REMOTE_ADDR = 您的 IP
HTTP_VIA = 没数值或不显示
HTTP_X_FORWARDED_FOR = 没数值或不显示
二、使用透明代理服务器的情况:Transparent Proxies
REMOTE_ADDR = 最后一个代理服务器 IP
HTTP_VIA = 代理服务器 IP
HTTP_X_FORWARDED_FOR = 您的真实 IP ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。
这类代理服务器还是将您的信息转发给您的访问对象,无法达到隐藏真实身份的目的。
三、使用普通匿名代理服务器的情况:Anonymous Proxies
REMOTE_ADDR = 最后一个代理服务器 IP
HTTP_VIA = 代理服务器 IP
HTTP_X_FORWARDED_FOR = 代理服务器 IP ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。
隐藏了您的真实IP,但是向访问对象透露了您是使用代理服务器访问他们的。
四、使用欺骗性代理服务器的情况:Distorting Proxies
REMOTE_ADDR = 代理服务器 IP
HTTP_VIA = 代理服务器 IP
HTTP_X_FORWARDED_FOR = 随机的 IP ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。
告诉了访问对象您使用了代理服务器,但编造了一个虚假的随机IP代替您的真实IP欺骗它。
五、使用高匿名代理服务器的情况:High Anonymity Proxies (Elite proxies)
REMOTE_ADDR = 代理服务器 IP
HTTP_VIA = 没数值或不显示
HTTP_X_FORWARDED_FOR = 没数值或不显示 ,经过多个代理服务器时,这个值类似如下:203.98.182.163, 203.98.182.163, 203.129.72.215。
完全用代理服务器的信息替代了您的所有信息,就象您就是完全使用那台代理服务器直接访问对象
转载于:https://blog.51cto.com/fukajg/929931
获取用户的IP地址的三个属性的区别相关推荐
- 用户IP地址的三个属性的区别(HTTP_X_FORWARDED_FOR,HTTP_VIA,REM_addr
一.没有使用代理服务器的情况: REMOTE_ADDR = 您的 IP HTTP_VIA = 没数值或不显示 HTTP_X_FORWARDED_FOR = 没数值或不显示 二. ...
- CDN下nginx获取用户真实IP地址
为什么80%的码农都做不了架构师?>>> 随着nginx的迅速崛起,越来越多公司将apache更换成nginx. 同时也越来越多人使用nginx作为负载均衡, 并且代理前面可能 ...
- PHP获取用户真实IP地址
PHP获取用户真实IP地址 <?phpfunction getRealIpAddr() { if (!empty($_SERVER['HTTP_CLIENT_IP'])) { $ip=$_SER ...
- JAVA:获取用户访问ip地址
获取用户真实IP地址:不使用request.getRemoteAddr();的原因是有可能用户使用了代理软件方式避免真实IP地址: 可是,如果通过了多级反向代理的话,X-Forwarded-For的值 ...
- PHP获取用户访问IP地址的5种方法
PHP获取用户访问IP地址的5种方法: //方法1: <?php ...
- java获取用户真实IP地址
/*** 获取用户真实IP地址,不使用request.getRemoteAddr();的原因是有可能用户使用了代理软件方式避免真实IP地址.* 可是,如果通过了多级反向代理的话,X-Forwarded ...
- linux编程获取本机IP地址的三种方法
这是一项不太清晰而且没有多大意义的工作.一个原因是网络地址的设置非常灵活而且都是允许用户进行个性化设置的,比如一台计算机上可以有多块物理网卡或者虚拟网卡,一个网卡上可以绑定多个IP地址,用户可以为网卡 ...
- 穿透代理获取用户真实IP地址
文章目录 一.场景 二.方法 1.微信官方方法 (1)没有代理 (2)有代理 2.非官方方法 (1)代码 (2)说明 (3)补充 一.场景 在对接微信H5支付API时,有一关键步骤是获取到用户的真实I ...
- (转载)Linux编程获取本机IP地址的三种方法
(转载)http://blog.csdn.net/jcwKyl/article/details/6324147 这 是一项不太清晰而且没有多大意义的工作.一个原因是网络地址的设置非常灵活而且都是允许用 ...
最新文章
- 大数据实验报告总结体会_大数据挖掘流程及方法总结
- node.js的request模块
- 转载 为什么要有ibgp
- iOS学习7:iOS沙盒(sandBox)机制(一)之获取沙盒路径及目录说明(转)
- assume用法及意思_分享assume 的几种用法~
- scrapy的name变量_Python3 Scrapy框架学习四:爬取的数据存入MongoDB
- mysql 插入汉字异常: Incorrect string value: '\xE8\xB0\xA2\xE9\x9D\x99' for column 'uname' at row 1...
- ssh中c3p0连接mysql_ssh 中使用c3p0 的连接池配置 | 学步园
- 算法(15)-leetcode-explore-learn-数据结构-运用递归解决二叉树的问题
- mysql 5.5.18下载_MySQL5.7.18下载和安装过程图文详解
- 如果谁和飞鸽传书讨论这两个问题
- mysql 存储过程执行ddl_mysql存储过程执行ddl语句
- PPAPI 插件编写
- rar和zip文件加密的破解
- c语言编程输出一到十,c语言编程输出1?
- 计算机原理求循环余数,国防科技大学2003年计算机原理考研试题
- lookup无序查找_Excel LOOKUP不排序怎么快速找到数据_lookup函数讲解
- python版电报API接入从零到一(有彩蛋)
- Karen Keegans加盟罗克韦尔自动化任人力资源高级副总裁
- AForge.net 使用之录像拍照功能实现
热门文章
- ios 标签 html,ios HTML的标签的过滤
- c语言用fread读取全部文本,C中用fread()从文件读取数据问题
- 粒子群(pso)算法详解matlab代码,粒子群(pso)算法详解matlab代码
- 深入浅出Spring Security(一):三句话解释框架原理
- 在Swift中如何使用C中的Struct
- Swift基础--调用第三方OC项目
- 网络安全模型_基于TCM的网络安全访问模型
- Flutter UI自动化测试技术方案选型与探索
- linux es连接mysql_LINUX下使用elasticsearch-jdbc工具实现MySQL同步到ElasticSearch 以及linux 64位centos系统安装jdk1.8...
- 用什么表示python异常_求大神给讲讲python的异常问题!以下是我的代码!没看出来有什么不同的呀?...