ASP.NET获取主机名、客户端IP地址、服务端IP地址、客户端MAC地址

来源:互联网 发布:centos 7 hadoop 安装 编辑:程序博客网 时间:2024/04/29 06:16
首先看下功能的效果图:

  1. 获取机器名
protected void Button1_Click(object sender, EventArgs e)    {        string ComputerName;        ComputerName = System.Net.Dns.GetHostName().ToString();        Label2.Text = ComputerName;    }
  1. 获取客户端IP地址

首先定义一个获取IP的方法

/// <summary>    /// 获取客户端IP地址    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    ///     public string GetUserIP()    {        string _userIP;     if(Request.ServerVariables["HTTP_VIA"] == null)          {             _userIP= Request.UserHostAddress;          }        else          {              _userIP = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];         }     return _userIP;     }

         然后在按钮的单击事件里调用该方法

 protected void Button3_Click(object sender, EventArgs e)    {        //GetUserIP();        Label4.Text = GetUserIP();    }
  1. 获取服务器端IP地址 
 protected void Button4_Click(object sender, EventArgs e)    {        System.Net.IPAddress[] addressList = Dns.GetHostByName(Dns.GetHostName()).AddressList;  if ( addressList.Length>1)  {        Label6.Text = addressList[0].ToString();      Label6.Text = addressList[1].ToString();  }  else {     Label6.Text = addressList[0].ToString();  }    }
  1. 获取服务器端MAC地址

         同样首先,定义一个获取MAC地址的方法

/// <summary>    /// 获取客户端MAC地址    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    ///     public string GetMac()    {        try        {            ManagementObjectSearcher query = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration");            ManagementObjectCollection queryCollection = query.Get();            foreach (ManagementObject mo in queryCollection)            {                if (mo["IPEnabled"].ToString() == "True")                    return mo["MacAddress"].ToString();            }            return "";        }        catch        {            return "";        }    }
  1. 全部代码如下:
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using System.Net;using System.Management;using System.Web.Management;public partial class _Default : System.Web.UI.Page{    protected void Page_Load(object sender, EventArgs e)    {    }    /// <summary>    /// 获取客户端IP地址    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    ///     public string GetUserIP()    {        string _userIP;     if(Request.ServerVariables["HTTP_VIA"] == null)          {             _userIP= Request.UserHostAddress;          }        else          {              _userIP = Request.ServerVariables["HTTP_X_FORWARDED_FOR"];         }     return _userIP;     }    /// <summary>    /// 获取客户端MAC地址    /// </summary>    /// <param name="sender"></param>    /// <param name="e"></param>    ///     public string GetMac()    {        try        {            ManagementObjectSearcher query = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration");            ManagementObjectCollection queryCollection = query.Get();            foreach (ManagementObject mo in queryCollection)            {                if (mo["IPEnabled"].ToString() == "True")                    return mo["MacAddress"].ToString();            }            return "";        }        catch        {            return "";        }    }    protected void Button1_Click(object sender, EventArgs e)    {        string ComputerName;        ComputerName = System.Net.Dns.GetHostName().ToString();        Label2.Text = ComputerName;    }    protected void Button2_Click(object sender, EventArgs e)    {        Label2.Text = "";    }    protected void Button3_Click(object sender, EventArgs e)    {        //GetUserIP();        Label4.Text = GetUserIP();    }    protected void Button4_Click(object sender, EventArgs e)    {        System.Net.IPAddress[] addressList = Dns.GetHostByName(Dns.GetHostName()).AddressList;  if ( addressList.Length>1)  {        Label6.Text = addressList[0].ToString();      Label6.Text = addressList[1].ToString();  }  else {     Label6.Text = addressList[0].ToString();  }     }    protected void Button5_Click(object sender, EventArgs e)    {        Label8.Text= GetMac();    }}


 

 

 

0 0
原创粉丝点击