8.8. 새로운 고유 MAC 주소 생성
게스트 가상 머신에 대한 새로운 고유 MAC 주소를 생성해야 하는 경우도 있습니다. 작성 시 새 MAC 주소를 생성하는 데 사용할 수 있는 명령행 툴이 없습니다. 아래에 제공된 스크립트는 게스트 가상 머신의 새 MAC 주소를 생성할 수 있습니다. 게스트 가상 머신의 스크립트를
macgen.py
로 저장합니다. 이제 해당 디렉토리에서 ./macgen.py 를 사용하여 스크립트를 실행할 수 있으며 새 MAC 주소를 생성합니다. 샘플 출력은 다음과 같습니다.
./macgen.py
$ ./macgen.py
00:16:3e:20:b0:11
macgen.py script to generate a MAC address for guest virtual machines
#!/usr/bin/python
# macgen.py script to generate a MAC address for guest virtual machines
#
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()
8.8.1. 게스트 가상 머신용 새 MAC을 생성하는 또 다른 방법
python-virtinst 의 내장 모듈을 사용하여 게스트 가상 머신 구성 파일에 사용할 새 MAC 주소와 UUID 를 생성할 수도 있습니다.
echo 'import virtinst.util ; print\ virtinst.util.uuidToString(virtinst.util.randomUUID())' | python echo 'import virtinst.util ; print virtinst.util.randomMAC()' | python
# echo 'import virtinst.util ; print\
virtinst.util.uuidToString(virtinst.util.randomUUID())' | python
# echo 'import virtinst.util ; print virtinst.util.randomMAC()' | python
위의 스크립트를 아래에 표시된 대로 스크립트 파일로 구현할 수도 있습니다.
-*- mode: python; -*-
#!/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 ""