|
|
发表于 2006-4-23 12:12:39
|
显示全部楼层
Post by Lolita
对于用桥接(bridged)方式提供网络接口的,我写了个脚本,第一次启动qemu时将自动建立一个虚拟以太网桥并把一个以太接口接到网桥上, 之后每创建一个qemu-machine就自动生成一个以太接口并自动接入到网桥上。这样就可以省得每次手动创建了。
本脚本基于终极幻想的思路 :)
[PHP]
#!/bin/bash
# ------------------------------------------------------
# author: Lolita@linuxsir.cn based on
# 终极幻想@linuxsir.cn 's idea
# date: 2006.04.20, small hours
# script name: /etc/qemu-ifup
# description: This script will be executed automatically
# when a qemu-machine instance is created.
# note: $1 is an ethernet interface usually tapX ,
# where X is 0, 1, 2, etc.
# -------------------------------------------------------
# Let the fun begin ^_^
#-----------------------
echo
echo "Executing /etc/qemu-ifup ... "
virtual_bridge="vbr0"
virtual_bridge_ip="192.168.1.1"
## if a virtual bridge is not found, create it.
if [ ! "$(sudo /sbin/ifconfig | grep $virtual_bridge )" ]; then
if [ "$(sudo /sbin/ifconfig | grep $virtual_bridge_ip )" ]; then
echo "IP $virtual_bridge_ip has been occupied by other interfaces. "
echo "Virtual bridge cannot be created !"
exit 1
else
## add a virtual bridge
sudo /sbin/brctl addbr $virtual_bridge
## turn off the spanning tree protocol, if there is
## only one bridge in your net and no loop topology.
sudo /sbin/brctl stp $virtual_bridge off
## config this bridge interface
sudo /sbin/ifconfig $virtual_bridge $virtual_bridge_ip netmask 255.255.255.0
sudo /sbin/ifconfig $virtual_bridge up
echo "Bringing up bridge $virtual_bridge with IP $virtual_bridge_ip ... done"
sleep 1
fi
fi
sudo /sbin/ifconfig $1 0.0.0.0 promisc up
echo "Bringing up ethernet interface $1 to promiscuous mode ... done"
sudo /sbin/brctl addif $virtual_bridge $1
echo "Attaching $1 to bridge $virtual_bridge ... done"
sleep 1
## end of script
[/PHP]
弱弱的问一下这个脚本应该保存到哪里,是自己手动运行吗? |
|