![如何解除 Linux 网络接口与 MAC 地址的绑定](https://linux22.com/image/608264/%E5%A6%82%E4%BD%95%E8%A7%A3%E9%99%A4%20Linux%20%E7%BD%91%E7%BB%9C%E6%8E%A5%E5%8F%A3%E4%B8%8E%20MAC%20%E5%9C%B0%E5%9D%80%E7%9A%84%E7%BB%91%E5%AE%9A.png)
我在 VMWare 上设置了一些 Fedora VM。有时,当 VMWare 进行软件更新时,VM 会获得新的 MAC 地址。但是,Fedora 中的默认网络配置是在创建时将接口绑定到 MAC。
这会导致所有虚拟机失去网络连接,直到我手动登录并通过 system-config-network-gui 解除 MAC 绑定。如何通过命令行执行此操作?
答案1
为了解决这个问题,你需要编辑两个文件:
首先,您需要从 udev 中删除 NIC。编辑/etc/udev/rules.d/70-persistent-net.rules
并删除所有类似于以下内容的行:
# PCI device 0x1af4:0x1000 (virtio-pci)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="d6:9a:17:30:d9:54", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
(特别注意该ATTR{address}=="d6:9a:17:30:d9:54"
部分,因为那是相关的 MAC 地址。)
您还想编辑接口特定的配置文件,例如,/etc/sysconfig/network-scripts/ifcfg-eth0
并删除或更新以下行:
HWADDR="D6:9A:17:30:D9:54"
就这样!重启虚拟机,一切就都恢复正常了。
答案2
不用考虑这个建议的临时解决方案。只需将虚拟机设置为具有固定 MAC 地址即可。
在 vSphere Client 中编辑 VM 设置并将 MAC 地址设置为手动(然后指定一个地址)。