você está aqui: Home  → Arquivo de Mensagens Programação Shell Linux: Inscrições Abertas

Criação de ambientes e redes de teste com máquinas virtuais utilizando o QEMU

Colaboração: Diego Bianchetti

Data de Publicação: 11 de Janeiro de 2006

# Criação de ambientes e redes de teste com máquinas virtuais utilizando o QEMU
# -----------------------------------------------------------------------------
# 12/12/2005
# Diego Bianchetti
# SOLIS - O lado livre da tecnologia

# Como utilizar o QEMU para criar máquinas virtuais para testes quando é
# necessário acessar as interface de rede e prover serviços através das
# máquinas vituais?
#
# Abaixo segue um passo-a-passo que mostra como fazer com que as máquinas
# virtuais tenham o mesmo acesso que uma máquina real. Tornando possivel a
# criação de ambientes de redes para testes.
#
# PS.: O QEMU e o seu modulo acelerador, KQEMU, já devem estar instalados. Caso
# precise instalar, o site oficial para download e documentação é
# http://fabrice.bellard.free.fr/qemu/index.html
#
# Para criar o arquivo que vai receber a imagem do sistema que será instalado.

qemu-img create <NOME DA IMAGEM>.img <TAMANHO>

# Exemplo de tamanho do arquivo de imagem
#
#       500M - 500 MegaBytes
#       1G   - 1,0 GigaBytes
#
# Para iniciar a instalação de um S.O. a partir do cd-rom no arquivo criado.

qemu <NOME DA IMAGEM>.img -cdrom /dev/cdrom -boot d

# Para utilizar a imagem instalada e ter uma interface na máquina real que
# acesse a máquina virtual.

qemu -hda <NOME DA IMAGEM>.img

# A opção '-hda' faz com que seja utilizado o arquivo 'qemu-ifup', que deve
# estar no diretório /etc/ ou então deve ser especificado.
# Abaixo o conteúdo do arquivo 'qemu-ifup'

/sbin/ifconfig $1 <IP> netmask <MASCARA DE REDE>

# Para não utilizar o QEMU como root e conseguir a consfiguração da interface
# de rede para a máquina virtual é necessário a utilização do 'sudo', sua
# configuração fica em '/etc/sudoers' ou então com o comando 'visudo'

sudo /sbin/ifconfig $1 <IP> netmask <MASCARA DE REDE>

# Para isto é necessário que a máquina real tenha suporte a TUN/TAP.
#
# A interface que é levantada na máquina real será 'tun0', caso esteja rodando
# mais de uma máquina virtual utilizando essa configuração de rede o
# dispositivo será 'tun1', 'tun2', ...
#
# Após iniciar a máquina virtual, a interface de rede dela não terá ip. É
# necessário configurar um ip da mesma rede utilizada na interface da máquina
# real e aí é só utilizar a máquina real como router.
#
# nat para a máquina virtual

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -t nat -A POSTROUTING -o <INTERACE DE ACESSO A INTERNET> -j SNAT \
—to-source <IP DA INTERFACE DE ACESSO A INTERNET>

# PS.: Não esquecer de configurar o DNS para a máquina vitual.


Veja a relação completa dos artigos de Diego Bianchetti