Problema de conectividade de rede entre diferentes hosts de um namespace de rede em um host

3

Eu criei duas VMs do Ubuntu 12.04 usando o VMWare Player com configuração de rede NAT. Eu sou capaz de fazer ping de um para o outro. Depois disso, criei um namespace de rede em um deles e adicionei uma interface virtual. A partir do namespace de rede, posso acessar a interface física da VM por meio da outra extremidade da interface virtual que reside no namespace padrão, adicionando uma rota no namespace. Eu habilitei ip_forward para a VM que causa acesso à Internet do namespace da rede. No entanto, não consegui fazer o ping da outra VM na rede privada a partir do namespace. Alguém pode explicar a razão por trás disso. Estou anexando minha configuração:

  1. Crie um namespace de rede e faça a comunicação entre as interfaces virtuais:

    sudo ip netns add vnet  
    ip netns list
    sudo ip link add veth0 type veth peer name veth1
    ip link
    sudo ip link set veth1 netns vnet
    sudo ip netns exec vnet ip link list
    sudo ip netns exec vnet ip link set dev lo up
    ip netns exec vnet ping -c5 127.0.0.1
    sudo ip addr add 10.0.0.1/24 dev veth0
    sudo ip link set dev veth0 up
    ip netns exec vnet ip addr add 10.0.0.2/24 dev veth1
    ip netns exec vnet ip link set dev veth1 up
    ip netns exec vnet ping -c5 10.0.0.1
    
  2. Comunicação de interfaces virtuais com as interfaces físicas:

    sudo ip netns exec vnet route add default gw 10.0.0.1 veth1
    
  3. Comunicação de interfaces virtuais com o mundo exterior:

    echo 1 > /proc/sys/net/ipv4/ip_forward
    echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp
    echo 1 > /proc/sys/net/ipv4/conf/veth0/proxy_arp     
    
por user976754 11.06.2014 / 06:04

0 respostas