1Debian 6.x

1Debian 6.x

Quero configurar uma sub-rede simples de VMs convidadas KVM/QEMU que residem em um único host (Fedora 19) para fins de teste. A sub-rede conteria 3 servidores:

1Debian 6.x

ip eth0: 10.0.0.7 ip eth1: 10.0.2.1

2Debian 7.x

IP eth0: 10.0.2.2

2 CentOS 6.x

IP eth0: 10.0.2.3

e (possivelmente) vários clientes.

A ideia é simular uma sub-rede onde apenas uma VM (nº 1 acima) está conectada à rede WAN e serve como gateway/roteador para o restante.

Atualmente estou experimentando uma configuração baseada na descrita aqui:

http://csortu.blogspot.com/2009/12/building-virtual-network-with-qemu.html

Mas, no momento, parece que não é possível fornecer outras VMs além da número 1 com conectividade WAN.

Tenho duas perguntas: 1. Existe uma solução mais fácil? 2. (se não), como posso fazer com que outras VMs se conectem ao mundo externo usando a VM nº 1 como gateway.

Ps, provavelmente devo mencionar que todas as VMs se conectam entre si, mas o acesso WAN está disponível apenas no número 1.

EDIT: Conforme solicitado, aqui está a configuração completa da rede.

HOST: Fedora 19 x86-64 conectado diretamente ao meu roteador doméstico (10.0.0.1) na rede 10.0.0/24 (imprime apenas interfaces relevantes)

3: wlp12s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 0c:60:76:64:c5:9d brd ff:ff:ff:ff:ff:ff
inet 10.0.0.3/28 brd 10.0.0.15 scope global wlp12s0
   valid_lft forever preferred_lft forever
inet6 fe80::e60:76ff:fe64:c59d/64 scope link 
   valid_lft forever preferred_lft forever
4: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN 
link/ether 2e:47:f7:fc:f2:fb brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
   valid_lft forever preferred_lft forever

VMs:

1 - Debian 6 amd64 com duas NICs configuradas (uma para acesso à minha rede doméstica através do HOST e a segunda para sub-rede interna 10.0.2/24 somente VM)

Aqui está o comando de inicialização (alterei a configuração de rede do usuário QEMU padrão para refletir minha rede doméstica e redirecionei a porta HOST 2222 para acessar a porta 22-ssh no GUEST)

qemu-system-x86_64 -cpu host -enable-kvm --name Debian6-amd64 -hda VMs/Debian6/sda.img -hdb VMs/Debian6/sdb.img -net nic,vlan=1 -net user,vlan=1,hostfwd=tcp::2222-:22,net=10.0.0.0/24,dhcpstart=10.0.0.7 -net nic,vlan=2,macaddr=52:54:00:00:02:01 -net socket,vlan=2,listen=localhost:1234 -m 512 -boot c -nographic

e aqui estão as configurações da interface:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 52:54:00:12:34:56 brd ff:ff:ff:ff:ff:ff
inet 10.0.0.7/24 brd 10.0.0.255 scope global eth0
inet6 fe80::5054:ff:fe12:3456/64 scope link 
   valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 52:54:00:00:02:01 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.1/24 brd 10.0.2.255 scope global eth1
inet6 fe80::5054:ff:fe00:201/64 scope link 
   valid_lft forever preferred_lft forever

2 - Debian 7 amd64 com uma NIC configurada (sub-rede interna 10.0.2/24)

O comando de inicialização:

qemu-system-x86_64 -cpu host -enable-kvm --name Debian7-amd64 -hda VMs/Debian7/sda.img -hdb VMs/Debian7/sdb.img -net nic,vlan=2,macaddr=52:54:00:00:02:02 -net socket,vlan=2,connect=localhost:1234 -m 512 -boot c -nographic

e a configuração da interface

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 52:54:00:00:02:02 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.2/24 brd 10.0.2.255 scope global eth0
inet6 fe80::5054:ff:fe00:202/64 scope link 
   valid_lft forever preferred_lft forever

3 - CentOS 6 x86-64 com uma NIC configurada (sub-rede interna 10.0.2/24)

O comando de inicialização:

qemu-system-x86_64 -cpu host -enable-kvm --name CentOS6-x86_64 -hda VMs/CentOS6/sda.img -hdb VMs/CentOS6/sdb.img -net nic,vlan=2,macaddr=52:54:00:00:02:03 -net socket,vlan=2,connect=localhost:1234 -m 512 -boot c -nographic

e a configuração da interface

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 52:54:00:00:02:03 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.3/24 brd 10.0.2.255 scope global eth0
inet6 fe80::5054:ff:fe00:203/64 scope link 
   valid_lft forever preferred_lft forever

Responder1

A VM Debian6 está configurada para encaminhar pacotes IP?

Você configurou rotas padrão nas outras 2 VMs apontando para a VM Debian 6?

Se sim, você poderia tentar alterar a LAN interna para outra sub-rede principal diferente de 10.xxx, ou seja, 192.168.1.x/24?

Depois de usar a nova sub-rede interna, você precisará configurar uma rota para a sub-rede interna 192.168.1.x no seu roteador de internet apontando para a VM Debian6.

informação relacionada