QEMU rede virtual NAT

1

Estou tentando configurar uma rede virtual conforme descrito aqui . Estes são meus passos:

ifup eth0 # uses DHCP
brctl addbr br0
ifconfig br0 up 192.168.0.1
kvm ... -device e1000,netdev=tap0 -netdev type=tap,id=tap0,sccript=/etc/qemu-ifup

onde o qemu-ifup faz

ifconfig tap0 0.0.0.0 promisc up
brctl addif br0 tap0

E finalmente, dentro da vm,

ifconfig eth0 192.168.0.2
route add default gw 192.168.0.1

Isso permite que eu faça ping de 192.168.0.1 e 10.42.42.127 (os IPs do host) de dentro do convidado, e o convidado de dentro do host.

No entanto, não consigo pingar um convidado de dentro de outro convidado, nem qualquer outro IP fora do host (10.42.42.1 ou 8.8.8.8, por exemplo).

Como devo configurar isso?

    
por Tordek 03.01.2012 / 05:46

1 resposta

2

Há duas perguntas:

1) Você permitiu um encaminhamento entre br0 e eth0? Você pode verificá-lo através deste comando:

cat /proc/sys/net/ipv4/ip_forward

Se você receber um "0", deverá corrigi-lo para "1":

echo "1" > /proc/sys/net/ipv4/ip_forward

Você pode permitir isso no /etc/sysctl.conf permanentemente.

2) Você tem que ter configurações de NAT via iptables, por exemplo algo assim:

iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE
    
por 03.01.2012 / 08:47