用C#编写获取远程IP,MAC的方法

如果要想获得远程的地址,需要用sendarp这个函数来实现。具体的代码如下:

[DllImport("Iphlpapi.dll")]
private  static  unsafe  extern  int  SendARP(Int32  dest,Int32  host,ref  IntPtr  mac,ref  IntPtr  length);
[DllImport("Ws2_32.dll")]
private  static  extern  Int32  inet_addr(string  ip);

Int32  ldest=  inet_addr("157.60.68.163");//目的地的ip
Int32  lhost=  inet_addr("157.60.68.33");//本地的ip

try
{
Byte[]  macinfo=new  Byte[6];
Int32  length=6;

IntPtr  mac=new  IntPtr(macinfo[0]);
IntPtr  len=new  IntPtr(6);
int  ii=SendARP(ldest,lhost,  ref  mac,  ref  len);

Console.WriteLine("Mac  Add:"+mac);
Console.WriteLine("length:"+len);


}
catch(Exception  err)
{
Console.WriteLine(err);
} 

 

posted @ 2012-10-23 19:34  牛肉幹  阅读(220)  评论(0编辑  收藏  举报