问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

ASP.NET怎么可以获取的IP代码?

发布网友 发布时间:2022-04-27 11:19

我来回答

3个回答

热心网友 时间:2022-04-27 12:49

在 ASP 中使用 Request.ServerVariables("REMOTE_ADDR") 来取得客户端的 IP 地址,但如果客户端是使用代理服务
器来访问,那取到的就是代理服务器的 IP 地址,而不是真正的客户端 IP 地址。要想透过代理服务器取得客户端的真实
IP 地址,就要使用 Request.ServerVariables("HTTP_X_FORWARDED_FOR") 来读取。
  不过要注意的事,并不是每个代理服务器都能用 Request.ServerVariables("HTTP_X_FORWARDED_FOR") 来读取客户端的真实 IP,有些用此方法读取到的仍然是代理服务器的 IP。
  还有一点需要注意的是:如果客户端没有通过代理服务器来访问,那么用 Request.ServerVariables
("HTTP_X_FORWARDED_FOR") 取到的值将是空的。因此,如果要在程序中使用此方法,可以这样处理:
......
userip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
If userip = "" Then userip = Request.ServerVariables("REMOTE_ADDR")
......

  即:如果客户端通过代理服务器,则取 HTTP_X_FORWARDED_FOR 的值,如果没通过代理服务器,就取 REMOTE_ADDR 的值。

热心网友 时间:2022-04-27 14:07

Request.ServerVariables["REMOTE_ADDR"]

楼上的回答有点问题哦,asp.net中都是用索引中括号

热心网友 时间:2022-04-27 15:41

首先,我们用使用Process类,来创建独立的进程,导入System.Diagnostics,
using System.Diagnostics;
实例一个Process类,启动一个独立进程
Process p = new Process();
Process类有一个StartInfo属性,这个是ProcessStartInfo类,包括了一些属性和方法,
下面我们用到了他的几个属性:
//设定程序名
p.StartInfo.FileName = "cmd.exe";
//关闭Shell的使用
p.StartInfo.UseShellExecute = false;
//重定向标准输入
p.StartInfo.RedirectStandardInput = true;
//重定向标准输出
p.StartInfo.RedirectStandardOutput = true;
//重定向错误输出
p.StartInfo.RedirectStandardError = true;
//设置不显示窗口
p.StartInfo.CreateNoWindow = true;
//上面几个属性的设置是比较关键的一步。
//既然都设置好了那就启动进程吧,
p.Start();
//输入要执行的命令,这里就是ping了,
p.StandardInput.WriteLine("ping -n 1 192.192.132.229");
p.StandardInput.WriteLine("exit");
//从输出流获取命令执行结果,
string strRst = p.StandardOutput.ReadToEnd();
在本机测试得到如下结果:
"Microsoft Windows 2000 [Version 5.00.2195]/r/n(C) 版权所有 1985-2000 Microsoft Corp./r/n/r/nD://himuraz//csharpproject//ZZ//ConsoleTest//bin//Debug>ping -n 1 192.192.132.231/r/n/r/r/nPinging 192.192.132.231 with 32 bytes of data:/r/r/n/r/r/nReply from 192.192.132.231: bytes=32 time<10ms TTL=128/r/r/n/r/r/nPing statistics for 192.192.132.231:/r/r/n Packets: Sent = 1, Received = 1, Lost = 0 (0% loss),/r/r/nApproximate round trip times in milli-seconds:/r/r/n Minimum = 0ms, Maximum = 0ms, Average = 0ms/r/r/n/r/nD://himuraz//csharpproject//ZZ//ConsoleTest//bin//Debug>exit/r/n"
有了输出结果,那还有什么好说的,分析strRst字符串就可以知道网络的连接情况了。

下面是一个完整的程序,当然对Ping.exe程序执行的结果不全,读者可以进一步修改,
完整代码如下:

view plaincopy to clipboardprint?
1.using System;
2.using System.Diagnostics;
3.namespace ZZ
4.{
5. class ZZConsole
6. {
7. [STAThread]
8. static void Main(string[] args)
9. {
10. string ip = "192.192.132.229";
11. string strRst = CmdPing(ip);
12. Console.WriteLine(strRst);
13. Console.ReadLine();
14. }
15. private static string CmdPing(string strIp)
16. {
17. Process p = new Process();
18. p.StartInfo.FileName = "cmd.exe";
19. p.StartInfo.UseShellExecute = false;
20. p.StartInfo.RedirectStandardInput = true;
21. p.StartInfo.RedirectStandardOutput = true;
22. p.StartInfo.RedirectStandardError = true;
23. p.StartInfo.CreateNoWindow = true;
24. string pingrst;
25. p.Start();
26. p.StandardInput.WriteLine("ping -n 1 "+strIp);
27. p.StandardInput.WriteLine("exit");
28. string strRst = p.StandardOutput.ReadToEnd();
29. if(strRst.IndexOf("(0% loss)")!=-1)
30. pingrst = "连接";
31. else if( strRst.IndexOf("Destination host unreachable.")!=-1)
32. pingrst = "无法到达目的主机";
33. else if(strRst.IndexOf("Request timed out.")!=-1)
34. pingrst = "超时";
35. else if(strRst.IndexOf("Unknown host")!=-1)
36. pingrst = "无法解析主机";
37. else
38. pingrst = strRst;
39. p.Close();
40. return pingrst;
41. }
42. }
43.}
总结,这里就是为了说明一个问题,不但是Ping命令,只要是命令行程序或者是Dos内部命令,我们都可以用上面的方式来执行它,并获取相应的结果,并且这些程序的执行过程不会显示出来,如果需要调用外部程序就可以嵌入到其中使用了。
ASP.NET怎么可以获取的IP代码?

在 ASP 中使用 Request.ServerVariables("REMOTE_ADDR") 来取得客户端的 IP 地址,但如果客户端是使用代理服务 器来访问,那取到的就是代理服务器的 IP 地址,而不是真正的客户端 IP 地址。要想透过代理服务器取得客户端的真实 IP 地址,就要使用 Request.ServerVariables("HTTP_X_FORWARDED_FOR") ...

ip动态 - StormProxies

StormProxies是一家提供动态代理服务器服务的企业,旨在帮助用户更好地管理网络访问和安全。以下是一些关于StormProxies的IP动态代理服务的特点:1. 高匿名性:StormProxies的动态代理服务器具有高匿名性,可以有效地隐藏用户的真实IP地址,保护用户的隐私和安全。2. 快速响应:StormProxies的动态代理服务器具有快速响应的特点,可以快速响应用户的请求,提高用户的网络访问速度和效率。3. 高度可定制:StormProxies的动态代理服务器可以根据用户的需求进行定制,例如可以根据用户的地理位置、网络带宽、访问频率等因素进行定制。4. 多种协议支持:…StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,IP纯净高匿;2、覆盖全球20...

ASP.NET 获取局域网的联网在线用户IP,MAC,主机名等信息。

HttpContext.Current.Request.UserHostAddress;//方法二 HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];//方法三 string strHostName = System.Net.Dns.GetHostName();string clientIPAddress = System.Net.Dns.GetHostAddresses(strHostName).GetValue(0).ToString();//方法四(无视代理)H...

asp.net 怎么获取客户端真实 IP?

//没有代理服务器,如果有代理服务器获取的是代理服务器的IP userIP = Request.ServerVariables["REMOTE_ADDR"];} return userIP;} 方法二:(很抱歉,这种方法获取的是服务器端的IP)//需要using System.Net;string hostname = Dns.GetHostName();//服务器的用户名 Response.Write("HostName:"+host...

Asp .net 获取IP

我给你一段代码,你试试:region 取客户端ip /// /// 取得客户端真实IP。如果有代理则取第一个非内网地址 /// public static string GetIPAddress() { string result = String.Empty; result = System.Web.HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_...

ASP.NET 怎么获取客户端的外网IP地址,急~

在ASP中使用 Request.ServerVariables("REMOTE_ADDR") 来取得客户端的IP地址,但如果客户端是使用代理服务器来访问,那取到的就是代理服务器的IP地址,而不是真正的客户端IP地址。要想透过代理服务器取得客户端的真实IP地址,就要使用 Request.ServerVariables("HTTP_X_FORWARDED_FOR") 来读取。不过要注意...

asp.net怎么获取当前地址啊?

首先,你需要透过代理,获取到登录客户端的实际IP,这类型的代码很多,如果不会,百度一下,满屏都是;其次,你需要有一个IP库,从IP库中查询这个IP地址来自于哪里,现在网上有开放的IP库提供下载,纯真IP库可以参考(http://www.pc6.com/softview/SoftView_41490.html)。

asp获取用户真实IP地址的方法

如果有使用asp net的朋友可参考下面方法来获取 代码如下 //方法一 HttpContext Current Request UserHostAddress;//方法二 HttpContext Current Request ServerVariables["REMOTE_ADDR"];//方法三 string strHostName = System Net Dns GetHostName(); string clientIPAddress = System Net Dns GetHostAd...

asp.net怎么获取ip地址,UserHostAddress这个获取的不是我电脑的ip啊

Public Function func_GetIP() As String Dim mso As ManagementObjectSearcher = New ManagementObjectSearcher( "select * from Win32_NetworkAdapterConfiguration where IPEnabled= 'TRUE ' ")Dim ip As String = String.Empty For Each mo As ManagementObject In mso.Get()If Not IsDBNull(mo( "...

asp.net 开发: webservice 如何获取调用者的IP和 dns (需要代码,谢谢...

这个只能从服务器端的 Request.UserHostAddress 得到 和服务器连接的代理 或客户IP 这个有可能是客户的IP 也有可能是 中转代理服务器的IP 没有任何办法准确得到 客户机的IP,没有任何办法... 因为浏览器端的JAVASCRIPT 代码权限有限,没有办法在浏览器端读取客户机的信息......

asp.net 中如何取得当前用户的ip地址?

获取真实IP if (Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != "")userIP = Request.ServerVariables["REMOTE_ADDR"];else userIP = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];if (userIP == null || userIP == "")userIP = Request.UserHostAddress;return userIP;} } ...

彩虹代刷公告代码可以显示ip IP加城市代码是什么意思 IP码怎么看 自动获取ip地址怎么查看ip 自动ip怎么获取ip地址 IP代码 IP查询代码 在运行里面怎么查看IP QQIP地址代码
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...新南站到郑州市东明路和纬五路交叉口的肿瘤医院,最少转乘,大概多长... 合肥济民肿瘤医院到合肥汽车南站怎么坐公交车? 合肥凤凰肿瘤医院下高铁后怎么走打的大概要多少钱 什么是爱情,我又迷糊了!哎…… 三个月宝宝拉绿便便怎么回事 GB/T276-1994 圆柱滚子轴承 6311-2rs/z1 这个型号各字母所代表的意思... 6208轴承最高限速多少 为什么我在电脑上下载的photoshop软件都是花钱的,要不打不开。怎么才 ... 6204轴承是什么类型的轴承? 爱情天梯是真的吗 QQ聊天记录在电脑上删除了还能恢复吗?电脑硬盘里我Q号得文件夹我也删除了,Q上得聊天记录也删除了 作者主要是从哪些方面来介绍木偶的木偶戏节选 女方敲锣打鼓还定亲礼,犯法吗? 这篇短文是从敲锣人没表演的内容什么什么等方面来介绍木偶戏的? 看图猜成语,能告诉我与图片相对应的四个成语是什么吗? 疯狂猜成语一个人敲锣旁边一个铃铛 图片一个人光着膀子敲鼓成语 看图猜成语一个人敲锣一个人拿着枪答案 汽修厂应急预案 修理厂现状 汽车修理厂的消防检查应该检查哪些方面 有没有在汽修车间抽烟发生火灾的 谁能提供一份汽车修理厂适用的“消防安全管理制度”酬谢。 Asp .net 获取IP 电脑可以上网,但无法登陆qq,显示登陆超时。在网吧是可以上qq的。求解决方法。谢谢! 一天当中人的体温什么时候最高一天当中人 一天什么时候的温度最高? 加油大魔王图片拉芙尔 人一天什么时候体温最高? 《冷血悍将 Without》免费在线观看完整版高清,求百度网盘资源 小米米粉卡1块钱套餐怎么用 7点45英语怎么写两种说法? 7点45分(英语) 七点四十五,十点二十,八点四十五,十二点半用英语怎么说 用英语表示七点四十五分,要两种 两点半、七点四十五、六点二十、十一点四十五用英语怎么说 中文翻译成英文:在六点半时,在七点四十五分时,在八点时,在八点十五分时,在八点半时,在八点四十分时 我爸爸每天早上七点四十五去上班英语 我总是在早晨七点四十五分到达学校。英文翻译 七点四十分用英语逆读法怎么说 早上七点三十分在学校门口集合,七点四十五分乘学校巴士出发,用英文怎么写 七点三五用英语怎么说? 怀特先生上午七点四十五去上班用英语怎么说? 音响系统有哪些设备 直读 逆读 英语时间 两点二十五 三点五十一 七点四十五 十点十五 十二点三十 没下芒果,果果,可以施底肥不? CBA九冠王推荐品牌果果儿药专家成立于哪一年? 少儿频道的红果果真名是什么啊 央视少儿频道的主持人红果果名字? 产后盆底肌需要锻炼吗?