#!/bin/sh
ip='/sbin/ip'
brctl='/usr/sbin/brctl'
cache='qemu-ifup.cache'
qemu='/usr/local/bin/qemu'
address='192.168.0.2/24'
broadcast='192.168.0.255'
gateway='192.168.0.1'
device='eth0'
$ip addr flush dev $device
$brctl addbr br0
$brctl stp br0 off
$brctl setfd br0 1
$brctl sethello br0 1
$ip addr add $address broadcast $broadcast dev br0
$ip link set br0 promisc on
$ip link set br0 up
$brctl addif br0 $device
$ip route add default via $gateway dev br0
rm qemu-ifup.cache &>/dev/null
$qemu -hda hda.img -boot c -m 256 -localtime -net nic -net tap,script=qemu-ifup.sh
$ip route del default via $gateway dev br0
$brctl delif br0 `head -1 qemu-ifup.cache` &>/dev/null
$brctl delif br0 $device
$ip link set br0 down
$ip link set br0 promisc off
$ip addr flush dev br0
$brctl delbr br0
$ip route add default via $gateway dev $device