Er zijn verschillende manieren om een willekeurig MAC-adres te genereren voor een virtuele machine. Het volgende Python-script uit de documentatie van Red Hat Enterprise Linux 6 maakt een willekeurig MAC-adres aan dat begint met het prefix 00:16:3e van Xen:

#!/usr/bin/python

import random

def randomMAC():

mac = [ 0x00, 0x16, 0x3e,

random.randint(0x00, 0x7f),

random.randint(0x00, 0xff),

random.randint(0x00, 0xff) ]

return ':'.join(map(lambda x: "%02x" % x, mac))

print randomMAC()

Nadien kun je eenvoudig MAC-adressen genereren voor gebruik in je scripts:

$ ./macgen.py

00:16:3e:0a:31:78

Als je het pakket python-virtinst onder Red Hat Enterprise Linux of Fedora geïnstalleerd hebt, kun je hetzelfde ook met één regel Python-code:

$ echo 'import virtinst.util ; print virtinst.util.randomMAC()' | python

00:16:36:35:b8:a0

Voor het genereren van UUID's heeft python-virtinst overigens ook een handige functie:

$ echo 'import virtinst.util ; print\

virtinst.util.uuidToString(virtinst.util.randomUUID())' | python

4241883f-b4d5-fbf9-c591-2562a0c4c9fc

En als je niet van Python houdt, kun je nog altijd een MAC-adres genereren in Bash met de functie printf en de variabele RANDOM:

$ printf '00:16:3e:%02x:%02x:%02x\n' $((RANDOM%256)) $((RANDOM%256)) $((RANDOM%256))

00:16:3e:0e:d1:fb

Een UUID genereren kan bovendien eenvoudig met het programma uuidgen dat onderdeel is van het pakket util-linux-ng.

Bron: Techworld