为了创建批量虚拟机,我需要在Python中创建一个随机MAC地址生成器.我不知道如何生成随机MAC地址.
以下程序是否正确?
import random
# The first line is defined for specified vendor
mac = [ 0x00, 0x24, 0x81,
random.randint(0x00, 0x7f),
random.randint(0x00, 0xff),
random.randint(0x00, 0xff) ]
print ':'.join(map(lambda x: "%02x" % x, mac))
解决方法:
由于唯一性是您所关心的(除了使地址格式正确之外),所以我会担心OUI中的MSB,并在NIC特定字节中使用序列.地址的分布对于您的应用程序可能并不重要(即使某些NIC或交换机实现可能会将其用作哈希的输入,但这也不是大问题).
您可能需要考虑使用“本地管理” flag in the OUI,以避免与现有设备制造商发生冲突.
避免诸如设置多播位之类的陷阱(您的示例确实如此).