通過arp來得到遠端機器的mac位址

2021-04-13 05:32:36 字數 1413 閱讀 4122

通過arp來得到遠端機器的mac位址  

include   "stdio.h"  

#include   "stdlib.h"  

#include   "winsock2.h"  

#include   "iphlpapi.h"  

#pragma   comment   (   lib,   "ws2_32.lib"   )  

#pragma   comment   (   lib,   "iphlpapi.lib"   )  

void   main(   int   argc,   char   **   argv   )  

printf(   "/nipaddress   :   %s/n",   argv[1]   );  

//初始化socket  

wsadata   wsadata;  

int   iret   =   wsastartup(makeword(2,1),   &wsadata);  

if   (   iret   !=   0   )  

//獲取遠端機器名  

hostent   *   remotehostent   =   (hostent*)malloc(   sizeof(   hostent   )   );  

int   nremoteaddr   =   inet_addr(   argv[1]   );  

remotehostent   =   gethostbyaddr(   (char*)&nremoteaddr,   sizeof(   in_addr   ),   af_inet   );  

if   (   remotehostent   )  

printf(   "hostname :   %s/n",   remotehostent->h_name   );  

else    

printf(   "gethostbyaddr   error:%d/n",   getlasterror()   );  

//傳送arp查詢包獲得遠端mac位址  

unsigned   char   macaddress[6];    

ulong   macaddlen   = 6;    

iret   =   sendarp(   nremoteaddr,   null,   (pulong)&macaddress,   &macaddlen   );  

if   (   iret   ==   no_error   )  

}  

else    

printf(   "sendarp   error:%d/n",   getlasterror()   );  

printf(   "/n"   );  

}   

155 最小棧(利用兩個棧來得到最小的元素)

設計乙個支援 push pop top 操作,並能在常數時間內檢索到最小元素的棧。push x 將元素 x 推入棧中。pop 刪除棧頂的元素。top 獲取棧頂元素。getmin 檢索棧中的最小元素。示例 輸入 minstack push push push getmin pop top getmin...

通過 MAC 位址得到IP的指令碼

通過 mac 位址得到ip的指令碼冷勝魁 seaquester lengshengkui gmail.com 2008 7 16掃瞄某乙個網段,尋找指定網絡卡 由mac位址確定 的ip。bin bash ipprefix 172.21.73 count 1 mac 1 while count 255...

CVS的遠端認證通過SSH遠端訪問CVS

使用cvs本身基於pserver的遠端認證很麻煩,需要定義伺服器和使用者組,使用者名稱,設定密碼等,常見的登陸格式如下 cvs d pserver cvs user name cvs.server.address path to cvsroot login 例子 cvs d pserver cvs ...