آیا دستوری هست که بتوان دریک شبکه وقتی IP یک سیستم در شبکه رو بدید اونم مک آدرس کارت شبکه رو برگردونه ؟
Printable View
آیا دستوری هست که بتوان دریک شبکه وقتی IP یک سیستم در شبکه رو بدید اونم مک آدرس کارت شبکه رو برگردونه ؟
البته
جستجو کنید قبلا بحث شده است.
بخدا جستجو کردم نبود
از ARP استفاده کن .
چطور جستجو کردی ؟
https://barnamenevis.org/showpo...&postcount=143
آقای سعید فکر کنم من مفهوممو درست بیان نکردم من MAC کارت شبکه های داخل سیستم خودمو نمیخام یا شاید من زیاد حرفه ای نیستم که سردر نیاوردم
ببینید من میخوام با دادن یک IP موجود درشبکه MAC رو واسم برگردونه اگه با نرم افزار Bandwidth manager کار کرده باشید منظور منو کاملاً میفهمید البته این مثالی که شما دادی خیلی جالب بود و من استفاده کردم
من لینک اون نرم افزار رو واستون گذاشتم که خالی از لطف نیست Download کنید
اگر همون keyword ایی که آقای Inprise بهتون دادند را دنبال کنید، به نتیجه می رسید:
Test IP-to-MAC Address Resolution with ARP
Getting ARP Information
IP Helper
IP Helper API Header for Delphi by Project Jedi
فکر کنم دیگه خودتون بتونید دنباله ماجرا را بگیرید.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls,WinSock;
Function sendarp(ipaddr:ulong;
temp:dword;
ulmacaddr:pointer;
ulmacaddrleng:pointer) : DWord; StdCall;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
Function sendarp; 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.0.1'));
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;
end.
object Form1: TForm1
Left = 192
Top = 110
Width = 212
Height = 115
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
Left = 8
Top = 8
Width = 32
Height = 13
Caption = 'Label1'
end
object Label2: TLabel
Left = 8
Top = 32
Width = 32
Height = 13
Caption = 'Label2'
end
object Button1: TButton
Left = 120
Top = 48
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 0
OnClick = Button1Click
end
end