Embora eu seja relativamente novo no XEN (rodando no Ubuntu 14.04), não tive problemas reais até agora. Eu configurei minha rede usando pontes e isso funcionou bem para muitas máquinas diferentes até agora. Normalmente, consigo encontrar minhas respostas em algum lugar, mas desta vez não consegui ajuda.
Eu tenho a VM cliente (DomU) que estou tentando configurar com um grande número de IPs e isso me causa muita dor. Aqui está a configuração:
A máquina host tem duas placas de rede, uma é usada para xenbr0 particular (10.10.10.x) e a outra é apenas ponte para IPS público (digamos x.y.z. *) xenbr1:
Abaixo está o meu arquivo /etc/networking/interfaces
do host:
iface eth0 inet manual
auto xenbr0
iface xenbr0 inet static
bridge_ports eth0
address 10.10.10.112
netmask 255.255.255.0
network 10.10.10.0
broadcast 10.10.10.255
gateway 10.10.10.1
auto eth1
iface eth1 inet manual
auto xenbr1
iface xenbr1 inet manual
bridge_ports eth1
bridge_maxwait 1
Na VM do cliente também usa dois nic /etc/networking/interfaces
:
auto eth0
iface eth0 inet static
address x.y.z.170
netmask 255.255.255.240
broadcast x.y.z.175
gateway x.y.z.161
auto eth1
iface eth1 inet static
address 10.10.10.155
netmask 255.255.255.0
broadcast 10.10.10.255
auto eth0:1
iface eth0:1 inet static
address x.y.z.162
netmask 255.255.255.240
broadcast x.y.z.175
auto eth0:2
iface eth0:2 inet static
address x.y.z.163
netmask 255.255.255.240
broadcast x.y.z.175
auto eth0:3
iface eth0:3 inet static
address x.y.z.164
netmask 255.255.255.240
broadcast x.y.z.175
etc…. up to 8 alaises.
No meu arquivo de configuração xen eu tenho:
vif = [ 'bridge=xenbr0', 'bridge=xenbr1' ]
Eu pretendo remover os IPs locais da VM quando tudo estiver configurado e funcionando.
Estou usando aliases, pois estou tentando migrar isso de uma máquina bare-metal para uma máquina virtual. Eventualmente, o uso excessivo de IPS será tratado, mas por várias razões eu não posso fazer isso ainda. De qualquer forma, quando eu inicializo a VM, apenas alguns dos IPs são pingáveis, a menos que eu faça um arping -U -I eth1 x.y.z.162
, etc para cada endereço IP. Então as coisas parecem pelo menos responder, mas o roteamento não funciona corretamente. Eu posso ssh e navegar para os IPs via http, mas sites virtuais não estão funcionando corretamente (ou seja, ele só me envia para um e ignora os outros) e reiniciar bind e alguns outros serviços não respondem corretamente. É como se o roteamento não estivesse configurado corretamente e enquanto os IPs respondem, não é realmente o IP solicitado que está respondendo, mas outro IP.
No entanto, isto é apenas em ALGUMAS dos IPS extras. Quando eu reinicio, o roteamento que o comando arp corrige é perdido. Então, Bind e alguns outros serviços na VM não funcionarão. Eu faço o comando arp e as coisas funcionam novamente.
Eu acho que o arping é apenas um band-aid, mas não conserta o problema real. Como o mesmo sistema funciona em uma máquina bare-metal, estou quase certo de que o problema está na minha configuração de rede XEN e não na configuração do switch ou no SO que estou tentando migrar.
Para isolar ainda mais o problema, configurei um guest limpo do Ubuntu 14.04 com vários IPs usando o mais moderno (e não depreciado aliasing de IP) show de instalação abaixo no arquivo /etc/networking/interfaces
das VMs:
auto eth0
allow-hotplug eth0
iface eth0 inet static
address x.y.z.110
netmask 255.255.255.240
broadcast x.y.z.175
gateway x.y.z.161
iface eth0 inet static
address x.y.z 162
netmask 255.255.255.240
broadcast x.y.z.175
iface eth0 inet static
address x.y.z 163
netmask 255.255.255.240
broadcast x.y.z.175
and on with the other IPS
Tudo com os mesmos resultados. o que estou perdendo? Qualquer ajuda seria apreciada.