Product SiteDocumentation Site

17.8. Come generare un nuovo indirizzo MAC unico

In alcuni casi sarà necessario generare per un guest un nuovo ed unico Indirizzo MAC. Attualmente non vi è alcuno strumento della linea di comando disponibile per generare un nuovo indirizzo MAC. Lo script di seguito indicato è in grado di generare un nuovo indirizzo MAC per i guest. Salvare lo script sul vostro guest come macgen.py. Ora dalla directory in questione è possibile eseguire lo script usando ./macgen.py, generando così un nuovo indirizzo MAC. Un esempio di output dovrebbe somigliare al seguente:
$ ./macgen.py 
00:16:3e:20:b0:11
        
#!/usr/bin/python
# macgen.py script to generate a MAC address for virtualized guests on Xen
#
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()
Metodo alternativo per la generazione di un nuovo MAC per il vostro guest
È possibile utilizzare anche i moduli interni di python-virtinst per generare un nuovo indirizzo MAC e UUID, per un utilizzo all'interno del file di configurazione:
# echo  'import virtinst.util ; print\
 virtinst.util.uuidToString(virtinst.util.randomUUID())' | python
# echo  'import virtinst.util ; print virtinst.util.randomMAC()' | python
Lo script indicato può essere implementato anche come un file di script simile a quello riportato di seguito.
#!/usr/bin/env python
#  -*- mode: python; -*-
print ""
print "New UUID:"
import virtinst.util ; print virtinst.util.uuidToString(virtinst.util.randomUUID())
print "New MAC:"
import virtinst.util ; print virtinst.util.randomMAC()
print ""