On Sat, 2010-10-23 at 08:45 +0800, Amos Kong wrote: > private_br.sh : script used to add/remove setup of private bridge and dnsmasq > qemu-ifup-vbr0 : network script of qemu, it uses fix bridge 'vbr0'
Jason's comments about this one were very good. In addition to them: 1) It's my opinion that we really should turn this into a service that's part of the infrastructure that can: * Verify basic 'health' of the bridge and the services it provides * Start/Stop it on demand I think the whole idea of pre-commands needs to be massaged/improved, but I digress. 2) Minor petty comment: In order to diferentiate the bridge name, it'd be nice to call it 'atbr0' (standing for autotest bridge 0). > Signed-off-by: Amos Kong <[email protected]> > --- > 0 files changed, 0 insertions(+), 0 deletions(-) > > diff --git a/client/tests/kvm/scripts/private_br.sh > b/client/tests/kvm/scripts/private_br.sh > new file mode 100755 > index 0000000..2684e96 > --- /dev/null > +++ b/client/tests/kvm/scripts/private_br.sh > @@ -0,0 +1,44 @@ > +#!/bin/bash > + > +# Script used to add/remove setup of private bridge and dnsmasq > +# @author Amos Kong <[email protected]> > + > +brname='vbr0' > + > +add_br() > +{ > + echo "add new private bridge" > + /usr/sbin/brctl addbr $brname > + echo 1 > /proc/sys/net/ipv6/conf/$brname/disable_ipv6 > + echo 1 > /proc/sys/net/ipv4/ip_forward > + /usr/sbin/brctl stp $brname on > + /usr/sbin/brctl setfd $brname 0 > + ifconfig $brname 192.168.58.1 > + ifconfig $brname up > + # add iptable entry as libvirt, then guest can access public network > + iptables -t nat -A POSTROUTING -s 192.168.58.254/24 ! -d > 192.168.58.254/24 -j MASQUERADE > + /etc/init.d/dnsmasq stop > + /etc/init.d/tftpd-hpa stop 2>/dev/null > + dnsmasq --strict-order --bind-interfaces --listen-address 192.168.58.1 > --dhcp-range 192.168.58.2,192.168.58.254 $tftp_cmd > +} > + > +del_br() > +{ > + echo "cleanup bridge setup" > + kill -9 `pgrep dnsmasq|tail -1` > + ifconfig $brname down > + /usr/sbin/brctl delbr $brname > + iptables -t nat -D POSTROUTING -s 192.168.58.254/24 ! -d > 192.168.58.254/24 -j MASQUERADE > +} > + > + > +# clean original setup first > +del_br 2>/dev/null > + > +if [[ $# > 0 ]];then > + if [[ $# = 2 ]];then > + # setup tftp function > + tftp_cmd=" --enable-tftp --tftp-root $1 --dhcp-boot $2 > --dhcp-no-override" > + fi > + add_br > +fi > diff --git a/client/tests/kvm/scripts/qemu-ifup-vbr0 > b/client/tests/kvm/scripts/qemu-ifup-vbr0 > new file mode 100755 > index 0000000..a91c37f > --- /dev/null > +++ b/client/tests/kvm/scripts/qemu-ifup-vbr0 > @@ -0,0 +1,6 @@ > +#!/bin/sh > +switch=vbr0 > +/sbin/ifconfig $1 0.0.0.0 up > +/usr/sbin/brctl addif ${switch} $1 > +/usr/sbin/brctl setfd ${switch} 0 > +/usr/sbin/brctl stp ${switch} off > _______________________________________________ Autotest mailing list [email protected] http://test.kernel.org/cgi-bin/mailman/listinfo/autotest
