当前位置: 技术问答>linux和unix
linux下如何编程得到网卡的硬件描述,如得到某块网卡为“3Com 3c590/3c595....”
来源: 互联网 发布时间:2015-06-13
本文导语: 我已经试过ioctl或者lipbcap或/etc/sysconfig/network-scripts/ 可是他们只能得到网卡的ip,网关之类,可是网卡的硬件信息得不到, 请有经验的dx指点一下怎样解决,谢谢啦 (ps.我觉得ioctl应该可以得到这个信息,可是看ioctls.h...
我已经试过ioctl或者lipbcap或/etc/sysconfig/network-scripts/
可是他们只能得到网卡的ip,网关之类,可是网卡的硬件信息得不到,
请有经验的dx指点一下怎样解决,谢谢啦
(ps.我觉得ioctl应该可以得到这个信息,可是看ioctls.h看不到有,网络上
也查不到)
可是他们只能得到网卡的ip,网关之类,可是网卡的硬件信息得不到,
请有经验的dx指点一下怎样解决,谢谢啦
(ps.我觉得ioctl应该可以得到这个信息,可是看ioctls.h看不到有,网络上
也查不到)
|
到/proc中查
|
下面的程序可以获得网卡的MAC地址。
#include
#include
#include
#include
#include
#include
#include
#include
#include
int main(int argc, char *argv[])
{
struct ifreq ifr;
if (argc!=2)
{
fprintf(stderr, "usage:%s interface name", argv[0]);
exit(1);
}
memset(&ifr, 0, sizeof(ifr));
strncpy(ifr.ifr_name, argv[1], 16);
int fd=socket(PF_INET, SOCK_DGRAM, 0);
if(fd
#include
#include
#include
#include
#include
#include
#include
#include
#include
int main(int argc, char *argv[])
{
struct ifreq ifr;
if (argc!=2)
{
fprintf(stderr, "usage:%s interface name", argv[0]);
exit(1);
}
memset(&ifr, 0, sizeof(ifr));
strncpy(ifr.ifr_name, argv[1], 16);
int fd=socket(PF_INET, SOCK_DGRAM, 0);
if(fd
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
站内导航:
特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!