1.获取服务器IP地址:

1) Local_Addr

var Local_Addr = Request.ServerVariables.Get("Local_Addr").ToString()

2.获取客户端IP地址:

X-Forwarded-ForX-Real-IPremote_addr是http协议中用来表示客户端地址的请求头

1) HTTP_REMOTEIP

var HTTP_REMOTEIP = HttpContext.Request.Headers["HTTP_REMOTEIP"];

表示发出请求的远程主机的 IP 地址,remote_addr表明客户端的IP,但它的值不是由客户端提供的,而是服务端根据客户端的ip指定的,当你的浏览器访问某个网站时,假设中间没有任何代理,那么网站的web服务器Nginx,Apache等)就会把remote_addr设为你的机器IP,若是你用了某个代理,那么你的浏览器会先访问这个代理,而后再由这个代理转发到网站,这样web服务器就会把remote_addr设为这台代理机器的IPhtml

2) HTTP_X_FORWARDED_FOR

var HTTP_X_FORWARDED_FOR = HttpContext.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];

简称XFF头,它表明客户端,也就是HTTP的请求端真实的IP,只有在经过了HTTP 代理或者负载均衡服务器时才会添加该项,正如上面所述,当你使用了代理时,web服务器就不知道你的真实IP了,为了不这个状况,代理服务器一般会增长一个叫作x_forwarded_for的头信息,把链接它的客户端IP(即你的上网机器IP)加到这个头信息里,这样就能保证网站的web服务器能获取到真实IPnginx

3) HTTP_X_REAL_IP

var HTTP_X_REAL_IP = HttpContext.Request.ServerVariables["HTTP_X_REAL_IP"];

用来记录服务器的地址,但是和X-Forwarded-For的不同,它不把记录添加到结尾,而是直接替换

4) UserHostAddress

var UserHostAddress = HttpContext.Request.UserHostAddress;

这个直接通过request获取客户端IP,注意 客户端可以通过修改 UserHostAddress进行ip的伪造修改

1、获取客户端IP:Request.ServerVariables.Get("Remote_Addr").ToString();

2、获取客户端主机名:Request.ServerVariables.Get("Remote_Host").ToString();

3、获取客户端浏览器:Request.Browser.Browser;

4、获取客户端浏览器 版本号:Request.Browser.MajorVersion;

5、获取客户端操作系统:Request.Browser.Platform;

6、获取服务器IP:Request.ServerVariables.Get("Local_Addr").ToString();

7、获取服务器名:Request.ServerVariables.Get("Server_Name").ToString();

最新文章

  1. scp报错 -bash: scp: command not found
  2. 25.redis集群搭建笔记
  3. jquery通过name,id名称获取当前value值
  4. 安装 Open Live Writer
  5. 双系统Ubuntu无法访问windows磁盘分区解决方法
  6. (转)C#中的 break 与continue 的使用和注意
  7. 配置VirtualBox Linux系统与Windows共享文件
  8. webStorm恢复误删除文件或工程
  9. JavaScript学习笔记(十二)——箭头函数(Arrow Function)
  10. Python中的数据类型以及他们的方法
  11. 6.3 Query 语句对系统性能的影响
  12. php解决微信文章图片防盗链
  13. RSA公私钥获取模数和质数
  14. Codeforces 219E Parking Lot 线段树
  15. count(*)、count(1)和count(列名)的区别
  16. 使用 redis-dump 批量导入导出数据
  17. C#基础第五天-作业答案-用DataTable制作名片集
  18. Kubernetes服务发现之Service详解
  19. Ubuntu下面 PHPSTORM2017.2破解方法
  20. 深入理解this和call、bind、apply对this的影响及用法

热门文章

  1. canvas写个简单的小游戏
  2. 深入理解ES6之《ES7》
  3. dva+react+antd+webpack 项目开发配置
  4. 【Python】Python基础知识【第一版】
  5. 【Android开发】【布局】自定义底部菜单栏(中间图标凸起)
  6. Hive启动后show tables报错:Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
  7. PAT B1066图像过滤
  8. 【Android开发】Coding + git命令行基本使用
  9. SpringBoot-总结
  10. Hash-题解-方法