获取客户端IP:
以下为引用的内容: private string GetClientIP()
{
string result = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
if (null == result || result == String.Empty)
{
result = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
}
asp?date=11-24&s=1227514233" class="logo" border="0" onload="return imgzoom(this,550);" style="cursor: pointer;" onclick="javascript:window.open(this.src);"/> if (null == result || result == String.Empty)
{
result = HttpContext.Current.Request.UserHostAddress;
}
return result;
}
获取MAC地址:
以下为引用的内容: DllImport("Iphlpapi.dll")]
private static extern int SendARP(Int32 dest,Int32 host,ref Int64 mac,ref Int32 length);
[DllImport("Ws2_32.dll")]
private static extern Int32 inet_addr(string ip);
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
try
{
string userip=Request.UserHostAddress;
string strClientIP = Request.UserHostAddress.ToString().Trim();
Int32 ldest = inet_addr(strClientIP); //目的地的ip
Int32 lhost = inet_addr(""); //本地服务器的ip
Int64 macinfo = new Int64();
Int32 len = 6;
int res = SendARP(ldest,0, ref macinfo, ref len);
string mac_src=macinfo.ToString("X");
if(mac_src == "0")
{
if(userip=="127.0.0.1")
Response.Write ("正在访问Localhost!");
else
Response.Write ("欢迎来自IP为" + userip + "的朋友!" + "
");
return;
}
while(mac_src.Length<12)
{
mac_src = mac_src.Insert(0,"0");
}
string mac_dest="";
for(int i=0;i<11;i++)
{
if (0 == (i % 2))
{
if ( i == 10 )
{
mac_dest = mac_dest.Insert(0,mac_src.Substring(i,2));
}
else
{
mac_dest ="-" + mac_dest.Insert(0,mac_src.Substring(i,2));
}
}
}
//方法二
using System.Text.RegularExpressions;
using System.Diagnostics;
public class test
{
public test
{}
public static string GetCustomerMac(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 "";
}
}
}
}
这种方法有些地方得好好摸索,不然看不懂的
//
获取服务器的IP地址方法以DNS法较为简单实用,如下:
using System.Net;
private void ButtonIP_Click(object sender, System.EventArgs e)
{
System.Net.IPAddress[] addressList = Dns.GetHostByName(Dns.GetHostName()).AddressList;
if ( addressList.Length>1)
{ TextLIP.Text = addressList[0].ToString();
TextSIP.Text = addressList[1].ToString();
}
else
{
TextLIP.Text = addressList[0].ToString();
TextSIP.Text = "没有可用的连接";
}
}
获取服务器的IP地址与MAC地址另一方法如下:
以下为引用的内容: using System.Management;
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();
TextMAC.Text = stringMAC.ToString();
string[] IPAddresses = (string[]) MO["IPAddress"];
if(IPAddresses.Length > 0)
stringIP = IPAddresses[0];
TextIP.Text = stringIP.ToString();
}
}
获取客户端本机的IP地址相当简易,方法如下:
以下为引用的内容: using System.Net;
TextIP.Text=Page.Request.UserHostAddress;
如要获取客户端本机的MAC地址就相对复杂些,得导入调用两个API
分享到:
相关推荐
ASP.NET获取客户端IP地址_系统版本_浏览器版本
asp.net获取客户端IP-用户名等信息
asp.net获取客户端的MAC地址asp.net获取客户端的MAC地址asp.net获取客户端的MAC地址
asp.net 获取客户端ip和mac地址
本程序在ASP.NET下用C#实现了对客户端IP和MAC地址的获取。对于在服务器和客户端之间有路由器的情况,只能获取到路由器的IP和MAC地址。
开发平台VS2010。通过浏览器获得浏览客户端的MAC地址,不是服务器MAC地址。亲测可用。需要将程序挂载在服务器的IIS上,然后通过客户端浏览aa.aspx。
ASP.NET获取IP和MAC 获取本地IP和MAC ASP.NET获取IP和MAC 获取客户端IP和MAC地址 ASP.NET获取客户端IP和MAC
asp.net获取客户端mac地址
这是老师给我们的资料,对使用ASP.net编写程序的同学会有帮助,大家可以下哈~
用ASP.Net获取客户端网卡的MAC.doc
asp.net获取客户端、服务器端mac和ip地址。有转换后的mac格式和未转换的mac格式都有得出和规则
好几天了一直在为这个问题郁闷.今天终于测试通过了.里边只有一个default.aspx和它的代码文件.....net获取客户端的MAC.可以用来做很多事情哦..呵呵!这么辛苦,,,各位就赏点资源分吧.有其他问题可以找我
ASP.NET获取客户端-服务器基础信息
本文主要介绍了ASP.NET获取客户端IP方法,具有很好的参考价值,下面跟着小编一起来看下吧
ASP.NET获取客户端的操作系统、浏览器、.NET版本等信息
asp.net使用客户端验证 asp.net使用客户端验证
asp.net_web_获取客户端IP和MAC地址
ASP.NET获取IP的方法 ASP.NET获取IP的方法ASP.NET获取IP的方法 ASP.NET获取IP的方法 ASP.NET获取IP的方法 ASP.NET获取IP的方法
获取当前系统字体! 很值得下载看看!资源免费,大家分享!!