Não é possível fazer a VM usar IP público com macvtap / KVM / libvirt

1

Estou executando um servidor dedicado com poucas VMs do KVM. Eu tive sucesso no passado recebendo endereço IPv4 público separado anexado a uma VM usando o driver macvtap e funciona como um servidor totalmente independente.

Estou copiando tudo o que estou fazendo para o segundo IPv4 público que recebi do provedor de serviços de hospedagem, mas dessa vez não consigo acessar a Internet da segunda VM usando o macvtap.

Aqui está o ip link show do host relevante para a interface macvtap recém-criada quando a VM é iniciada pelo libvirt:

40: macvtap2@eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN mode DEFAULT group default qlen 500
link/ether 52:54:00:35:02:38 brd ff:ff:ff:ff:ff:ff

E aqui está a saída ifconfig do convidado:

ens10     Link encap:Ethernet  HWaddr 52:54:00:35:02:38  
      inet addr:[PUBLIC IP]  Bcast:[BROADCAST IP PROVIDED BY HOSTER]  Mask:255.255.255.224
      inet6 addr: fe80::5054:ff:fe35:238/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      TX packets:21 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:1000 
      RX bytes:0 (0.0 B)  TX bytes:1230 (1.2 KB)

Aqui está a seção relevante de virsh edit machine :

    <interface type='direct'>
      <mac address='52:54:00:35:02:38'/>
      <source dev='eth0' mode='vepa'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'/>
    </interface>

Quando estou executando tcpdump -vv host [PUBLIC VM IP] , posso ver pacotes de entrada, mas nunca resposta.

Não vejo nada na saída de tcpdump -vv -i ens10 VMs.

Configuração semelhante parece funcionar com outra VM e não consigo descobrir qual diferença entre duas pode fazer com que a segunda VM funcione da mesma forma. Qualquer coisa que eu possa fazer para depurar mais?

    
por pavel_karoukin 27.05.2018 / 22:25

1 resposta

1

Aconteceu que era questão de solicitar endereço MAC separado para minha máquina virtual do Hetzner (meu hoster) e não usar aleatoriamente gerado pelo libvirt one. Uma vez que eu solicitei e atualizei as configurações, todo o resto começou a funcionar.

Alguns detalhes: link

    
por 28.05.2018 / 07:09