请问如何在内核中得到网卡的mac地址?根据网卡名子得到mac地址也可

来源:互联网 发布:淘宝网卖家什么做好 编辑:程序博客网 时间:2024/05/19 13:28
ww7109
(stranger)
04-08-23 14:10
请问如何在内核中得到网卡的mac地址?根据网卡名子得到mac地址也可 回应这篇文章回复 

文章选项: 打印   将这篇文章放置于备忘录中,待有空时回覆   好友分享   通知版主

dl_dht
(addict)
04-08-23 18:56
Re: 请问如何在内核中得到网卡的mac地址?根据网卡名子得到mac地址也可 [re: ww7109]回应这篇文章回复 

struct net_device *dev = dev_get_by_name("ethx");
dev->dev_addr


--------------------
鸡声茅店月, 人迹板桥霜.

文章选项: 打印   将这篇文章放置于备忘录中,待有空时回覆   好友分享   通知版主

zhanrk版主
(addict)
04-08-23 19:22
Re: 请问如何在内核中得到网卡的mac地址?根据网卡名子得到mac地址也可 新 [re: ww7109]回应这篇文章回复 

一般是要读网卡EEPROM来获取MAC地址的吧,比如NE2K系列就是这样。


--------------------
http://jtager.sourceforge.net

文章选项: 打印   将这篇文章放置于备忘录中,待有空时回覆   好友分享   通知版主

Aarecn
(newbie)
04-08-24 11:24
Re: 请问如何在内核中得到网卡的mac地址?根据网卡名子得到mac地址也可 新 [re: ww7109]回应这篇文章回复 

内核中用dev->dev_addr就可得到MAC地址.
自带EEPROM得网卡,MAC地址保存在EEPROM中, 没EEPROM得网卡MAC地址一般通过命令行或bootloader传入, 部分网卡chip或cpu会有单独的寄存器来设置MAC地址, 但通常都可以不用. 因为发送出去的报文都是从dev_addr取地址填充的, 可能某些带网络加速的芯片除外.

文章选项: 打印   将这篇文章放置于备忘录中,待有空时回覆   好友分享   通知版主

chfwang
(newbie)
04-08-24 14:24
Re: 请问如何在内核中得到网卡的mac地址?根据网卡名子得到mac地址也可 新 [re: zhanrk]回应这篇文章回复 

从eeprom中读mac地址的工作driver已经帮你做了,
所以你直接读dev结构里面的地址就可以了

文章选项: 打印   将这篇文章放置于备忘录中,待有空时回覆   好友分享   通知版主

ww7109
(stranger)
04-08-24 21:27
Re: 请问如何在内核中得到网卡的mac地址?根据网卡名子得到mac地址也可 新 [re: dl_dht]回应这篇文章回复 

多谢了

文章选项: 打印   将这篇文章放置于备忘录中,待有空时回覆   好友分享   通知版主

原创粉丝点击