Acceder a Internet desde Qemu con tun/tap
Configurar el acceso a Internet desde Qemu no es nada sencillo. Hay varios sistemas, veamos cómo lo he conseguido usando tun/tap.
- Cargamos el módulo tun en el kernel:
# modprobe tunEsto hace que tengamos disponible en el ordenador real la interfaz tap0, que actuará como gateway para la máquina virtual. Si hacemos:
$ ifconfig -acomprobaremos que tap0 no aparece, a pesar de que la opción -a muestra todas las interfaces, incluso las down. No aparecerá hasta que no arranque Qemu.
- Comprobamos que existe el script /etc/qemu-ifup, cuyo contenido es:
#!/bin/sh sudo -p "Password for $0:" /sbin/ifconfig $1 192.168.0.9
Qemu, con la opción -net tap, ejecuta el script /etc/qemu-ifup, que configura la IP de tap0 (192.168.0.9). El nombre del dispositivo de red (tap0, tap1...) lo pasa como parámetro ($1).
- Configuramos el enrutamiento (192.168.0.6 es la IP de eth0):
# route add -host 192.168.0.6 gw 192.168.0.9y hacemos masquerading NAT:
# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE # echo 1 > /proc/sys/net/ipv4/ip_forward
- Ejecutamos Qemu como root para no tener problemas de acceso a tap0:
# qemu -m 512 -cdrom /dev/cdrom -boot c /mnt/sarge.iso -net nic -net tap - Una vez lanzado Qemu, comprobamos:
- que aparece tap0 y tiene la IP correcta:
$ ifconfig - que IPtables tiene el masquerading configurado:
$ iptables -t nat -nvL - el enrutamiento:
$ route
- que aparece tap0 y tiene la IP correcta:
- La configuración de la red en la máquina virtual será:
- IP: 192.168.0.6
- gateway: la IP de tap0, 192.168.0.9
- DNS: el mismo que en el ordenador real.
Terminado, ya tenemos acceso a Internet desde la máquina virtual.
Deja un comentario
