Network Bridge no dom0 não pode pingar o domU

4

Estou usando o Debian wheezy com o XEN 4.1. Eu tenho duas pontes de rede xenbr0 e xenbr1.

xenbr0 está ligado ao real-eth0-nic para que o domU possa falar com o mundo exterior, o que funcionou bem.

xenbr1 foi concebido como uma ponte de rede interna para comunicação entre domU's e dom0.

O problema é o xenbr1 e não sei porque. Os domu's são conectados com sucesso ao xenbr1 porque eu posso fazer ping entre os domus. Então a ponte está funcionando de alguma forma, mas nenhum tráfego para ou do xenbr1 do dom0 é possível.

Minha configuração xenbr1 em / etc / network / interfaces:

auto xenbr1
iface xenbr1 inet static
        pre-up brctl addbr $IFACE
        up ip link set $IFACE up
        post-down brctl delbr $IFACE
        down ip link set $IFACE down
        address         10.0.0.1
        netmask         255.255.255.0
        hwaddress       ether MAC

mostra brctl:

bridge name     bridge id               STP enabled     interfaces
xenbr0          8000.mac                no              eth0
                                                        vif1.0
                                                        vif2.0
xenbr1          8000.mac                no              vif1.1
                                                        vif2.1

Conexões de rede:

                  dom0
            xenbr1 - 10.0.0.1
            /               \
           /                 \
        domU-1              domU-2
  vif1.1 - 10.0.0.2      vif2.1 - 10.0.0.3

domU-1 pode pingar domU-2 e vice-versa.
dom0 não pode alcançar nenhum domU e os domUs não podem alcançar dom0.
Então algo está bloqueado no dom0 eu acho.

Meu primeiro pensamento foi que talvez eu tenha um problema com o iptables, mas parece que xen criou as regras necessárias:

-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
-A FORWARD -m physdev --physdev-out vif2.1 --physdev-is-bridged -j ACCEPT
-A FORWARD -m physdev --physdev-in vif2.1 --physdev-is-bridged -j ACCEPT
-A FORWARD -m physdev --physdev-out vif2.0 --physdev-is-bridged -j ACCEPT
-A FORWARD -m physdev --physdev-in vif2.0 --physdev-is-bridged -j ACCEPT
-A FORWARD -m physdev --physdev-out vif1.1 --physdev-is-bridged -j ACCEPT
-A FORWARD -m physdev --physdev-in vif1.1 --physdev-is-bridged -j ACCEPT
-A FORWARD -m physdev --physdev-out vif1.0 --physdev-is-bridged -j ACCEPT
-A FORWARD -m physdev --physdev-in vif1.0 --physdev-is-bridged -j ACCEPT

Espero que qualquer um possa me ajudar ou tenha um começo para onde procurar.

    
por Spocky 02.11.2012 / 04:35

1 resposta

1

Você precisa conectar o dom0 à ponte xenbr1. Pense em uma bridge como um switch ethernet, você precisa "plugar" o dom0 nele para funcionar. Você notará que o dom0 está conectado ao xenbr0 via eth0.

Se você tiver uma interface adicional no host (eth1), você pode simplesmente fazer:

brctl addif xenbr1 eth1

Isso deve funcionar desde que a rede IP esteja configurada corretamente.

    
por 21.11.2012 / 18:23