Criando bridge no Linux, compartilha rede como o VirtualBox

1

Eu tenho um local como rede 192.168.1.1/24 . Eu uso libvirt e quero que minhas máquinas virtuais também usem essa rede, pelo menos uma sub-rede, como 192.168.1.128/25 . No entanto, todas as opções de bridge libvirt criam outra rede, e eu não posso configurar o meu para usar minha rede, o VirtManager dá um erro, e definindo manualmente uma rede encaminhada

'' '

 <network>
    <name>mynetwork</name>
    <bridge name="mybr0" />
    <forward mode="route" dev="em1"/>
    <ip address="192.168.1.1" netmask="255.255.255.0">
      <dhcp>
        <range start="192.168.1.128" end="192.168.1.254" />
      </dhcp>
    </ip>
  </network>

'' '

Ocorre o seguinte erro:

virsh # net-start mynetwork
error: Failed to start network mynetwork
error: internal error: Network is already in use by interface em1

O VirtualBox tem a opção de criar uma conexão em ponte, onde ele obtém o IP do servidor DHCP no meu roteador e age como uma outra máquina na minha rede. Como posso conseguir isso? Eu tentei criar manualmente uma ponte com bridge-utils package, mas sem sorte até agora.

EDIT: estou usando o Ubuntu 14.04.

    
por Mustafa 18.12.2014 / 15:43

1 resposta

2

Posso mostrar como criar uma conexão em ponte no KVM, mas há uma diferença em relação ao VirtualBox: o endereço IP das máquinas convidadas não é atribuído pelo servidor DHCP, mas é um IP estático escolhido por você, esperançosamente fora do pool DHCP.

Se você usa uma conexão a cabo, então a página Wiki libvirt mostra como fazer a ponte entre uma interface ethernet e seu VMs.

Por favor note: o acima só funciona para IFs ethernet. É possível conectar uma interface sem fio, mas não dessa maneira.

Esse bom post de Bohdi Zazen mostra como fazer isso. Ele usa arp-proxy para retransmitir o tráfego arp para uma interface tap especialmente criada. Existe apenas um recurso desatualizado, a criação da interface tap por meio do comando / pacote tunctl. Não faça isso, iproute pode cuidar disso para você:

    ip tuntap add tap0 mode tap user root
    ip link set tap0 up

Caso contrário, sua solução funciona sem falhas.

Se o pensamento de usar um IP estático é insuportável para você, você pode NAT em vez de bridge, como explicado aqui .

    
por 18.12.2014 / 20:14