qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] several guests with static ip-address


From: Mario Goppold
Subject: Re: [Qemu-devel] several guests with static ip-address
Date: Thu, 27 Oct 2005 15:31:00 +0200
User-agent: KMail/1.8

Hi list,

i had the same problem and here is qemu-ifup:

#!/bin/sh
(

# chgrp users /dev/net/tun
# chmod g+w /dev/net/tun

# set -x
MYIP=192.168.0.1

/bin/logger -t $0 "Start for $1"
found=0
DEVS=`/sbin/ifconfig | /bin/awk '/^qbridge/ { print $1 }'`
for D in $DEVS; do
   IP=$(LANG=C /sbin/ifconfig $D | /bin/awk '/inet addr:/ {print substr($2, 
6)}')
   if [ "$IP" == "$MYIP" ]; then
      found=1
   fi
done
/bin/logger -t $0 "found qbridge ? : $found"
if [ $found -eq 0 ]; then
   /sbin/modprobe tun
   /sbin/modprobe bridge
   /bin/logger -t $0 "create qbridge"
   /sbin/brctl addbr qbridge
   /sbin/brctl stp qbridge off
   /sbin/brctl setfd qbridge 1
   /sbin/brctl sethello qbridge 1
   /bin/logger -t $0 "add $1 to qbridge"
   /sbin/brctl addif qbridge $1
   S=`ls -l /dev/net/tun`
   /bin/logger -t $0 "set up $1 $S"
   /sbin/ifconfig $1 0.0.0.0 promisc up
   /sbin/ifconfig qbridge $MYIP netmask 255.255.0.0
   /usr/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
   /sbin/sysctl net.ipv4.ip_forward=1
else
   /bin/logger -t $0 "add $1 to qbridge"
   /sbin/brctl addif qbridge $1
   /sbin/ifconfig $1 0.0.0.0 promisc up
fi

) >> /var/log/qemu-ifup.log 2>&1


This adds the tun? devices to qbridge. You can communicate form host to guest 
and between the guests but you MUST set the mac-sdress at the commandline:

qemu -macaddr 00:01:01:01:01:01 -hda /localhome/qemu/test1.img
qemu -macaddr 00:01:01:01:01:02 -hda /localhome/qemu/test2.img

Have a lot of fun ...
Mario

Am Donnerstag, 27. Oktober 2005 14:31 schrieb Michael Kapp:
> > On Wed, 26 Oct 2005, Michael Kapp wrote:
> > > OK, can you give me some hints how to do that?
> > >
> > > I've tested it with a tun/bridged setup, but it only work with one
> >
> > guest,
> >
> > > here is my configuration for the qemu-ifup script:
> >
> > Each qemu gets it's own tun device, and you need to make sure your script
> > gets this proper...
> >
> > I've never used any qemu-ifup scripts. Very much prefer using static tun
> > interfaces, and when I forget I usually set up the host configuration
> > manually as root while qemu is running..
> >
> > > ...this works so far. But how can i get another guest into this subnet?
> >
> > It's just about adding his tun device to the same bridge, and giving it
> > "link up"..
>
> ----
>
> OK, this is the solution for the qemu-ifup scripts (or do it with static
> interfaces):
>
> guest1:
>
> brctl addbr br0
>
> ifconfig eth0 down
> ifconfig eth0 0.0.0.0 promisc up
> ifconfig tun1 0.0.0.0 promisc up
> ifconfig br0 192.168.1.98 netmask 255.255.255.0 broadcast 192.168.1.255 up
>
> brctl stp br0 off
> brctl setfd br0 1
> brctl sethello br0 1
> brctl addif br0 eth0
> brctl addif br0 tun1
> route add default gw 192.168.1.1
>
> --
>
> guest2 (will be started after guest1 is up):
>
> ifconfig tun2 0.0.0.0 promisc up
>
> brctl addif br0 tun2
>
> ...and so on, for other guests...
> ----
>
> That the two guests can communicate with each other, it is neccassary to
> bring up the guests with a unique mac-address.
>
> Thanks!
>
> Regards
> Michael
>
> > Regards
> > Henrik
> >
> >
> > _______________________________________________
> > Qemu-devel mailing list
> > address@hidden
> > http://lists.nongnu.org/mailman/listinfo/qemu-devel




reply via email to

[Prev in Thread] Current Thread [Next in Thread]