我試圖在 linux mint 15 cinnamon 機器上將 eth0 的 MAC 位址更改為 3d:dd:c8:88:c2:0d。使用「ip link set dev eth0 address」失敗,如下所示,macchanger 會產生類似的錯誤訊息(「無法指派要求的位址」)。如所見,可以設定另一個 MAC,但我需要這個特定的 MAC。
關於如何進行更改或失敗的原因有什麼建議嗎?
~ $ sudo ip link set dev eth0 down
~ $ sudo ip link set dev eth0 address 3D:DD:C8:88:C2:0D
RTNETLINK answers: Cannot assign requested address
~ $ sudo ip link set dev eth0 address 00:00:00:00:00:01
~ $ sudo ip link set dev eth0 up
~ $ ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:00:00:00:00:01
inet addr:172.26.24.158 Bcast:172.26.24.255 Mask:255.255.255.0
inet6 addr: fe80::215:58ff:fecb:b9ba/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:885330 errors:0 dropped:0 overruns:0 frame:0
TX packets:643599 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:840836259 (840.8 MB) TX bytes:429278582 (429.2 MB)
Interrupt:16 Memory:ee000000-ee020000
答案1
MAC 位址在第一個位元組中有兩個特殊位元:
- 位 0 是「多播」位,注意該位址是多播或廣播位址
- 位 1 是「本地」位,表示 MAC 位址不是由供應商分配的,而且可能不完全唯一。
您正在嘗試設定一個設定了多播位的位址,但這不起作用,因為對您的主機的任何回應都將解釋為多播封包。
另外,當您變更 MAC 位址並且沒有為您指派 OUI 時,請設定本機指派位元。
這是一個可能有助於提供更多詳細資訊的圖表: