QEMU networking quirkiness on 7.0
Mario Lobo
mlobo at digiart.art.br
Thu Apr 10 22:01:32 UTC 2008
On Thursday 10 April 2008 12:33:29 Jim Stapleton wrote:
> > Yes, this needs to be setup on the host system. The way a bridge is
> > configured has changed on 7. Here are the steps assuming that your
> > external interface is em0:
>
> Well, it seems pretty calm, and hasn't tried to cut itself yet... But
> I think I can adapt.
>
> > # ifconfig tap0 create
> > # ifconfig tap0 up
> > # ifconfig em0 up
> > # ifconfig bridge0 create
> > # ifconfig bridge0 addm tap0 addm em0
>
> Could I mimic this in RC.conf? Or is this saved between restarts?
>
>
> Also, for the bridge, could I do this, correct?
>
> #existing rc.conf
> hostname="elrond.var-dev.net"
> ifconfig_re0="inet 192.168.1.84 netmask 255.255.255.0"
> ifconfig_re0_alias0="192.168.1.85 netmask 255.255.255.255"
> defaultrouter="192.168.1.1"
> #adding... Should I use an IP not aliased by re0?
> ifconfig_bridge0="inet 192.168.1.85 netmask 255.255.255.0"
>
>
>
>
> Thanks for your help,
> -Jim Stapleton
> _______________________________________________
> freebsd-questions at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to
> "freebsd-questions-unsubscribe at freebsd.org"
I have a virtual Linux (Fedora 5) and winedows (XP) machines in QEMU and they
are both network functional. I use qemu-launch because it does everything you
need to create a virtual machine. Here are my pertinent configs:
------------------------------------------------
1) # rc.conf
ifconfig_re0="up polling" <- no IP here !
autobridge_interfaces="bridge0"
autobridge_bridge0="tap0 re0" <- important even if tap0 does not exist yet
cloned_interfaces="bridge0"
# the bridge gets the IP
ifconfig_bridge0="inet 10.10.10.2 netmask 255.255.255.0"
2) tell QEMU launch to open a tap device
3) tap up script to run when invoking the machine(s).
# qemu-net
#!/usr/local/bin/bash
$1 = tap ifac created
/sbin/ifconfig $1 up
# test if tap is already added
TEST=`ifconfig -a | grep -A 6 bridge | grep $1`
if [ "$TEST" == "" ]; then
/sbin/ifconfig bridge0 addm $1
fi
# add a route to the virtual machine
/sbin/route add -host 10.10.10.100 -iface bridge0
------------------------------------------------
Set the gateway on both machines to the same gateway of the host.
That's all.
This works perfectly for me. If I want both virtual machines up, I have to add
another route to the IP of the second machine through the bridge.
I did not need to set up samba to access the local drives because I already
have a samba server on the gateway and both the host and the guests can see
it, and of course, is one less thing to set up at the host.
My 2 cents. Hope it helps !
--
Mario Lobo
http://www.mallavoodoo.com.br
FreeBSD since version 2.2.8 [not Pro-Audio.... YET!!] (99,7% winedows FREE)
More information about the freebsd-questions
mailing list