当前位置: 技术问答>linux和unix
如何在unix环境中用程序,取到对方网卡硬件地址。
来源: 互联网 发布时间:2014-11-30
本文导语: 如何在unix环境中用程序,取到对方网卡硬件地址。 最好为C 语言所写!!(除shell中用arp 外还有其他方法吗?) 多谢!!! | 这个方法比较麻烦一点: 用RAWSOCKET构早一个 arp request 的包; 同时,...
如何在unix环境中用程序,取到对方网卡硬件地址。
最好为C 语言所写!!(除shell中用arp 外还有其他方法吗?) 多谢!!!
最好为C 语言所写!!(除shell中用arp 外还有其他方法吗?) 多谢!!!
|
这个方法比较麻烦一点:
用RAWSOCKET构早一个 arp request 的包;
同时,收取所有链路层的包,分析回来的arp reply 的包
太麻烦啦
简单一点的
system("ping IP ");
FILE * fd=popen("arp -a -n | grep IP","r");
fgets(buf,buf_size,fd);
在从里面提取出 mac
用RAWSOCKET构早一个 arp request 的包;
同时,收取所有链路层的包,分析回来的arp reply 的包
太麻烦啦
简单一点的
system("ping IP ");
FILE * fd=popen("arp -a -n | grep IP","r");
fgets(buf,buf_size,fd);
在从里面提取出 mac