Rede do host KVM - Problemas de conectividade do convidado

0

Parece haver muito sobre esse assunto já, então peço desculpas por adicionar um mar de informações, mas não tive sorte em encontrar algo que pareça endereçar meu cenário.

Meu convidado não pode pingar meu gateway padrão, mas meu host pode executar ping no meu gateway padrão.

Eu tenho um host KVM (CentOS7) com uma interface de ponte configurada, 'ip a':

2: eno16777984: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master virbr0 state UP qlen 1000
    link/ether 00:0c:29:80:14:0a brd ff:ff:ff:ff:ff:ff
    inet6 fe80::20c:29ff:fe80:140a/64 scope link
       valid_lft forever preferred_lft forever
3: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
    link/ether 00:0c:29:80:14:0a brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.11/24 brd 192.168.1.255 scope global virbr0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe80:140a/64 scope link
       valid_lft forever preferred_lft forever
12: vnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master virbr0 state UNKNOWN qlen 500
    link/ether fe:54:00:a0:02:d5 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::fc54:ff:fea0:2d5/64 scope link
       valid_lft forever preferred_lft forever

Agora, a parte interessante, meu convidado recebe uma concessão válida de DHCP do meu servidor DHCP. Meu convidado pode pingar o endereço IP do host e o host pode fazer ping no endereço IP do convidado. Tentei parar o firewalld para resolver o problema, mas isso não resolveu o problema, e suspeito que o problema não seja tão alto na pilha, pois o DHCP funcionava. Se eu pingar o convidado de outro dispositivo de rede, as solicitações expirarão, mas uma entrada para o dispositivo será adicionada à tabela arp guests e o dispositivo que iniciará o ping.

Meu pensamento é que a minha ponte está configurada incorretamente, mas não tenho certeza do que causaria a falha de algum tráfego.

Aqui está minha configuração de interface para referência:

[root@kvm01 ~]# cat /etc/sysctl.d/99-ipforward.conf
net.ipv4.ip_forward = 1
[root@kvm01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eno16777984
DEVICE="eno16777984"
ONBOOT=yes
BRIDGE=virbr0
[root@kvm01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-virbr0
TYPE=Bridge
BOOTPROTO=static
DEVICE=virbr0
ONBOOT=yes
IPADDR="192.168.1.11"
NETMASK="255.255.255.0"
GATEWAY="192.168.1.1"
DNS1="192.168.1.15"
[root@kvm01 ~]#
    
por Mike Soule 24.08.2016 / 05:50

1 resposta

0

Às vezes não sou o pensador mais abrangente. ARPs estão funcionando bem, isso significa que a camada 2 é boa. O que você testa depois da camada 2? Bem, camada 3, claro. Os hosts na rede física não tinham rota de volta para os convidados.

Como o host está efetivamente funcionando como um roteador para os convidados, qualquer tráfego ip seria enviado do convidado sem nenhum problema, mas nunca receberia uma resposta, pois o destinatário não teria uma rota para esse IP através do host.

Eu adicionei uma rede estática à minha máquina de teste na rede física para o IP de meus convidados com um gateway do host e os pings começaram a funcionar bem.

A solução é simplesmente colocar os convidados em uma rede de camada 2 separada e, em seguida, fazer com que o roteador na minha rede física tenha uma rota para a rede do convidado por meio do host. Isso resolverá meu problema.

A seguinte documentação do libvirt descreve as opções para redes KVM relativamente bem. As únicas exceções, não documentadas aqui, seriam usar o Cisco Nexus 1000v ou o Open vSwitch.

link

    
por 24.08.2016 / 06:21