設置mac位址 11:22:33:44:55:66, 在OpenWrt正在開發的主trunk上就沒有SIOCSIFHWADDR: Cannot assign requested address, 這個問題。
但是到attitude adjustment最新的trunk上就出現了,估計是內核版本不同,導致都mac位址的限制不同導致。
最新的反而不嚴格了?這個不科學啊。
解決方法:
http://blog.csdn.net/evenness/article/details/7674038
http://blog.csdn.net/hds_yx/article/details/17285873
在Linux下修改網卡的MAC位址命令:
/sbin/ifconfig eth0 down
/sbin/ifconfig eth0 hw ether 47:72:65:65:6e:00
/sbin/ifconfig eth0 up
當輸入第二句命令是會提示:SIOCSIFHWADDR: Cannot assign requested address。原來是MAC地址設置不對。
IP地址分為三類:廣播,組播和單播。廣播就是:FF:FF:FF:FF:FF:FF。組播:第一位元組最後一位元是1,如47:72:65:65:6e:00,
47的最後一位是1。單播:第一位元組最後一位元是0,如48:72:65:65:6e:00。把上面的位址改為48就不會出現這個問題了。
問題深入學習:
IEEE 802定義MAC地址為
|<--------- 24 bit --------->|<--------- 24 bit -------->|
| ccccccug cccccccc cccccccc | xxxxxxxx xxxxxxx xxxxxxxx |
由ug控制mac網址類別型:
u: 0:由 IEEE 指定ID統一管理
1:本地管理
g: 0:單播
1:多播
也就是12位MAC位址分為四類,由其中第二位決定
第二位為
0 | 4 | 8 | C :(00)統一管理的單播 MAC
1 | 5 | 9 | D :(01)統一管理的多播 MAC
2 | 6 | A | E :(10)本地管理的單播 MAC
3 | 7 | B | F:(11)本地管理的多播 MAC
=================================================================
由於針對ADSL路由等這樣的網路終端,一般使用的都是統一管理的單播MAC
所以會判斷 02:10:18:01:00:01 或者(11:01:18:00:00:30)為無效MAC,導致無線等功能失效,或者網路連接失敗等現象。
而對於 00:25:5E:08:DE:43 這樣的MAC就被認為是有效的
https://blog.csdn.net/qianguozheng/article/details/38336277
留言列表