public static string GetRemoteMacByNetBIOS(string clientIP)
{
string ip = clientIP;
if ( ip == "127.0.0.1")
ip = GetLocalIP()[0];
string dirResults="";
ProcessStartInfo psi = new ProcessStartInfo();
Process proc = new Process();
psi.FileName = "nbtstat.exe";
//psi.RedirectStandardInput = false;
psi.RedirectStandardOutput = true;psi.RedirectStandardError=true;
psi.Arguments = "-A " + ip;
psi.UseShellExecute = false;
proc = Process.Start(psi);
dirResults = proc.StandardOutput.ReadToEnd();
string error = proc.StandardError.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.ToUpper();
}
else
{
return "";
}
}
使用此方法需要足够的操作系统的权限。在Web中,可以将ASP.net用户加入
管理员组。
对于上面两个地方都用到的GetLocalIP是一个获取本机IP的方法:
public static string[] GetLocalIP()
{
string hostName = Dns.GetHostName();
IPHostEntry ipEntry=Dns.GetHostByName(hostName);
IPAddress[] arr=ipEntry.AddressList;
string[] result = new string[arr.Length];
for(int i=0;i
{
result[i] = arr[i].ToString();
}
return result;
}
分享到:
相关推荐
网络命令nbtstat的VC版源代码(14kb)
nbtstat及netstat命令---查对方IP mac地址 根据IP查对方计算机名
visual c++ nbtstat源码 对于某些机器,使用 nbtstat 命令可以得到对方的 NetBIOS Name Table,但是用我的程序却得不到对方的回应
网络命令nbtstat的VC版源代码,很实用的工具
局域网内知道对方IP 如何查看对方的mac地址 标签:IT数码2011-01-12 10:13 星期三 . 我们知道可以用 ping -a IPaddress 的命令可以查看对方的机器名。 但是,如何通过IP地址找到对方的mac地址呢。 命令 ...
显示基于 TCP/IP 的 NetBIOS (NetBT) 协议统计资料、本地计算机和远程计算机的 NetBIOS 名称表和 NetBIOS 名称缓存。Nbtstat 可以刷新 NetBIOS 名称缓存和使用 Windows Internet 名称服务 (WINS) 注册的名称。
NBTSTAT命令及用法(cmd系列)[收集].pdf
常用windows命令。如全面介绍 Netstat命令的使用技巧,nbtstat,ARP命令,Nslookup等windows常用命令。
nbtstat -a IP即可通过此IP来获取对应MAC地址! MAC地址查询扫描器.rar MAC地址查询扫描器是个功能强大的MAC工具,能够通过网络辅助进行设备识别,主要用于电脑、路由器/可管理交换机/其他智能的网络设备、IPTV机顶...
网络命令 NBTstat Visual C++ 源码
该诊断命令使用 NBT(TCP/IP 上的 NetBIOS)显示协议统计和当前 TCP/IP 连接。该命令只有在安装了 TCP/IP 协议之后才可用。
作为一个生活在网络上的管理员或者黑客来说,ping命令是第一个必须掌握的DOS命令,它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包...
基于UDP协议的网段扫描器
会使用命令查看网卡IP地址\MAC地址。 二、实验内容: 1、查看本机的IP地址( IP地址是网络中每个计算机的身份证号,要求它在网络中保持唯一性。可以随意更 改。 ):开始----运行-----CMD 命令:ipconfig 查到了本机...
在linux下,c语言编写,根据对方的IP,查看其MAC地址。原理:建立socket ,构造netbios-ns包,sendto()把数据发送给对方,recvfrom...而windows下可以运行命令:nbtstat -A ip-address来查看 windows c 要改改头文件
网络常用命令--Netstat 、IPConfig、Tracert、Route 与 NBTStat使用技巧
该诊断命令使用 NBT(TCP/IP 上的 NetBIOS)显示协议统计和当前 TCP/IP 连接。该命令只有在安装了TCP/IP 协议之后才可用。 nbtstat [-a remotename] [-A IP address] [-c] [-n] [-R] [-r] [-S] [-s] [interval] 参数...
使用Net Share命令 使用Net Start命令 使用Net Statistic命令 使用Net Stop命令 使用Net TIME命令 使用Net use命令 使用Net User命令 使用Net VIEW命令 企业级Windows NT Server 4.0使用和支持的考试(70-68) 理解70-...
实现nbtstat -a的功能。得到某一网段内所有机器的IP,机器名,工作组,用户名,MAC地址,速度极快。朱巍原创(zw84611@sina.com)。
windows常用网络命令 包括ping netstat ipconfig arp Tracert、Route 与 NBTStat