Sun VirtualBox

vmware를 사용했었는데, 요즘 따로 받은 프로그램도 없는듯한데, 아무거도 실행안해도 guest의 CPU가 30%정도에서
안내려구더군요. 아무래도 네트워크를 통해 바이러스에 감염된듯해서 이제 VM에서는 가상 아이피만 사용할려고 합니다. (원래 vmware의
bridged networking사용)

주변에서 virtualbox를 만족하면서 사용해서 저도 virtualbox로 바꿔봤습니다.

Ubuntu 8.10에서 Synaptic이용해서 설치했습니다. virtualbox를 안썼던 이유가 dual core를 guest에서 쓰지 못해서였는데, cpu 하나여도 속도는 빠른편이네요. 특히 부팅속도가 vmware 비하면 확실히 빠르네요. 그리고 vmware에서 alsa를 이용해서 소리가 겨우 안끊기고 나왔었는데… (vmware와 pulseaudio 조합은 최악), virtualbox와 pulseaudio를 쓰니 딜레이와 끊김없이 소리가 잘 재생됩니다.

virtualbox 써보니 또 한가지 아쉬운점이… 네트워크를 NAT로 설정할 경우 정상적인 방법으로 네트웍을 구현하지 않은거 같네요. 즉, 호스트쪽에서 (가상) 인터페이스가 따로 생성되지 않기 때문에, guest의 아이피 주소로 네트웍이 안됩니다. 제 경우 guest에서 10.0.2.5로 DHCP가 잡히고 gateway가 10.0.2.2로 잡혔는데.. 호스트에서 10.0.2.5로 ping도 안되고, 주소를 아예 인식하지 못합니다. virtualbox 프로그램에서 소켓을 관리하고 이를 VM에 연결해주는 방식인듯합니다. 찾아보니 포트포워드 하는 방법은 있네요. 포트포워드 설정하면 호스트의 아이피주소, 설정된 포트로 오는 패킷을 guest로 전달해주는 방식인듯합니다.

아래 명령으로, 호스트의 특정 포트로 오는 패킷을 게스트의 특정 포트로 전달되도록 할수 있습니다. (tun53300은 임의로 만들수 있는 이름이며, 아래 세줄이 하나의 포트에 대한 전달 규칙입니다. UDP에 대해서도 같은 포트에 대해서 규칙을 만들려면 아래와 같은 형태로 세줄은 추가해야합니다.

VBoxManage setextradata VMNAME “VBoxInternal/Devices/pcnet/0/LUN#0/Config/tun53300/HostPort” 53300
VBoxManage setextradata VMNAME “VBoxInternal/Devices/pcnet/0/LUN#0/Config/tun53300/GuestPort” 53300
VBoxManage setextradata VMNAME “VBoxInternal/Devices/pcnet/0/LUN#0/Config/tun53300/Protocol” TCP

규칙을 지울때는 마지막 부분(53300, TCP등)을 비워서 명령을 실행하면 됩니다.

만약 네트워크 프로토콜 관련 작업이나 테스팅을 하신다면 vmware가 더 적할할듯합니다.

virutalbox 장점:

1. 부팅속도 빠름
2. 소리 잘나옴
3. 심리스 모드 – 윈도우 내부의 창들이 호스트의 창처럼 보이도록 하는 기능인데, 완전히 호스트의 윈도우 메니저와 통합되는건 아니라 저는 안쓰고 있습니다.
4. 공짜

virtualbox 단점:

1. SMP 미지원 (guest당 CPU 하나만 사용)
2. NAT 네트워크 드라이버 차원의 구현 안님.
3. 디스크별로 snapshot 기능을 따로 설정할수 없음
4. 설치되는 guest OS 제한있음. (vmware에 비해)

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>