通过对方的IP地址获得它的机器的MAC地址 ( 积分: 100 )

  • 主题发起人 主题发起人 djwdz
  • 开始时间 开始时间
D

djwdz

Unregistered / Unconfirmed
GUEST, unregistred user!
我想通过IP地址获得该地址榜定的网卡的物理地址,不知能否实现!
 
我想通过IP地址获得该地址榜定的网卡的物理地址,不知能否实现!
 
command:='command.com /c nbtstat'+'-A'+对方IP+'>'+temp;
其中command为字符变量.temp为txt文件
 
通过arp协议
arp -a IP地址
 
Function sendarp(ipaddr:ulong;
temp:dword;
ulmacaddr:pointer;
ulmacaddrleng:pointer) : DWord; StdCall; External 'Iphlpapi.dll' Name 'SendARP';

procedure TForm1.Button1Click(Sender: TObject);
var
myip:ulong;
mymac:array[0..5] of byte;
mymaclength:ulong;
r:integer;
begin
myip:=inet_addr(PChar('192.168.6.180'));
mymaclength:=length(mymac);
r:=sendarp(myip,0,@mymac,@mymaclength);
label1.caption:='errorcode:'+inttostr(r);
label2.caption:=format('%2.2x:%2.2x:%2.2x:%2.2x:%2.2x:%2.2x',[mymac[0],mymac[1],mymac[2],mymac[3],mymac[4],mymac[5]]);
end;
 
通过了路由器后,就不可能了,别试了
 
TO xianguo
我是新手可能少了什么.没法测试

myip:=inet_addr||这里有错误
 
在命令行方式:
ping 对方IP
arp -a
可以看到对方Mac了。
 
通过了路由器后,就不可能了,别试了
to Hexi,你ping的是局域网内的吧
 
http://www.delphibbs.com/keylife/iblog_show.asp?xid=13461
 
多人接受答案了。
 

Similar threads

后退
顶部