设置 MAC 地址失败 - RTNETLINK 回答:无法分配请求的地址

kid*_*ose 6 networking linux mac ethernet

我试图在 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 
Run Code Online (Sandbox Code Playgroud)

Sim*_*ter 24

MAC 地址的第一个字节中有两个特殊位:

  • 位 0 是“多播”位,注意地址是多播或广播地址
  • 位 1 是“本地”位,表示 MAC 地址不是由供应商分配的,可能不是完全唯一的。

您正在尝试设置一个设置了多播位的地址,这不起作用,因为对您的主机的任何回复都将被解释为多播数据包。

此外,当您更改 MAC 地址并且没有分配给您的 OUI 时,请设置本地分配位。

这是一个可能有助于提供更多细节的图表:

MAC地址图