博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# 之 获取服务器IP,客户端IP以及其它
阅读量:7073 次
发布时间:2019-06-28

本文共 3018 字,大约阅读时间需要 10 分钟。

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();

如果你想进一步了解ServerVariables,可以用

 

foreach(String o in Request.ServerVariables){    Response.Write(o+"="+Request.ServerVariables[o]+"
");}

 

 

 

string stringMAC = "";   string stringIP = "";   ManagementClass MC = new ManagementClass ("Win32_NetworkAdapterConfiguration");   ManagementObjectCollection MOC= MC.GetInstances();   foreach(ManagementObject MO in MOC)   {    if ((bool)MO["IPEnabled"] == true)    {       stringMAC += MO["MACAddress"].ToString(); //获取网卡的地址       string[] IPAddresses = (string[]) MO["IPAddress"]; //获取本地的IP地址       if(IPAddresses.Length > 0)       stringIP = IPAddresses[0];       Response.Write(stringMAC+"/"+stringIP);     }   }

 

 

asp.net
+c#如何获取客户端网卡的MAC地址?

//要引用到以下两个命名空间using System.Diagnostics;using System.Text.RegularExpressions;//获取远程客户端的网卡物理地址(MAC)public string GetMac(string IP)   //para IP is the client's IP{string dirResults="";ProcessStartInfo psi = new ProcessStartInfo();Process proc = new Process();psi.FileName = "nbtstat";psi.RedirectStandardInput = false;psi.RedirectStandardOutput = true;psi.Arguments = "-A " + IP;psi.UseShellExecute = false;proc = Process.Start(psi);dirResults = proc.StandardOutput.ReadToEnd();proc.WaitForExit();dirResults=dirResults.Replace("\r","").Replace("\n","").Replace("\t","");Regex reg=new Regex("Mac[ ]{0,}Address[ ]{0,}=[ ]{0,}(?
((.)*?))__MAC",RegexOptions.IgnoreCase|RegexOptions.Compiled);Match mc=reg.Match(dirResults+"__MAC");if(mc.Success) {return mc.Groups["key"].Value;}else{reg=new Regex("Host not found",RegexOptions.IgnoreCase|RegexOptions.Compiled);mc=reg.Match(dirResults);if(mc.Success){return "Host not found!";}else{return "";}}}//在页面上打印出客户端的网卡物理地址(MAC)Response.Write(this.GetMac(Request.UserHostAddress.ToString()));

 

 

 获取cpu序列号,硬盘ID,网卡MAC地址
private void GetInfo()
  
{
   
string cpuInfo = "";//cpu序列号
   ManagementClass cimobject = new ManagementClass("Win32_Processor");
   ManagementObjectCollection moc 
= cimobject.GetInstances();
   
foreach(ManagementObject mo in moc)
   
{
    cpuInfo 
= mo.Properties["ProcessorId"].Value.ToString();
    Response.Write (
"cpu序列号:"+cpuInfo.ToString ());
   }
   
//获取硬盘ID
   String HDid;
   ManagementClass cimobject1 
= new ManagementClass("Win32_DiskDrive");
   ManagementObjectCollection moc1 
= cimobject1.GetInstances();
   
foreach(ManagementObject mo in moc1)
   
{
    HDid 
= (string)mo.Properties["Model"].Value;
    Response.Write (
"硬盘序列号:"+HDid.ToString ());
   }
   
//获取网卡硬件地址
   ManagementClass mc 
= new ManagementClass("Win32_NetworkAdapterConfiguration");
   ManagementObjectCollection moc2 
= mc.GetInstances();
   
foreach(ManagementObject mo in moc2)
   
{
    
if((bool)mo["IPEnabled"== true)
     Response.Write(
"MAC address\t{0}"+mo["MacAddress"].ToString());
    mo.Dispose();
   }
  

你可能感兴趣的文章
HDU 1035 Robot Motion(简单题,模拟)
查看>>
Linux 数据流重定向
查看>>
I.MX6 android 4.2 源码下载
查看>>
md5sum 生成 经md5加密后的字符串
查看>>
PowerShell应用之-批量执行SQL脚本
查看>>
职场加薪步步高升的五大法则
查看>>
增删主键及修改表名
查看>>
Gson库使用-排序字段(ExclusionStrategy)或者修改(FieldNamingStrategy)字段
查看>>
[医疗]DICOM VR数据类型表
查看>>
把原来可空的列变成主键
查看>>
shell 中的不相等怎么表达?大于、小于又怎么表达?
查看>>
WIF基本原理(4)联合身份验证实例
查看>>
HDFS写入和读取流程
查看>>
ScrollView 简单出错
查看>>
[置顶] VC++界面编程之--自定义CEdit(编辑框)皮肤
查看>>
动画渐变兼容各个浏览器
查看>>
java中有关线程的题目
查看>>
玩转CSS3,嗨翻WEB前端,CSS3伪类元素详解/深入浅出[原创][5+3时代]
查看>>
Oracle Minus 取差集
查看>>
mvc和三层架构到底有什么区别
查看>>