Xen und statische iptables Regeln

Was macht man, wenn man möchte, dass xen die Finger von den iptables-Regeln lässt und einfach nur die virtuellen Interfaces auf eine Bridge werfen will? Ganz einfach folgendes Script in der xend-config.sxp als vif-script eintragen und den xend neustarten. Ausserdem die gewünschte Bridge in der Konfiguration der Virtuellen Maschine eintragen.

In Verbindung mit fest vorgegebenen Interfacenamen in der Konfiguration kann man so eine statische iptables-Konfiguration hinbekommen, die sich nicht bei jedem Neustart einer Maschine ändert.

#!/bin/bash
#
# Routerlab XEN-Vif-To-Brige script rxvtbs
# 

dir=$(dirname "$0")
. "$dir/vif-common.sh"

bridge=${bridge:-}
bridge=$(xenstore_read_default "$XENBUS_PATH/bridge" "$bridge")

if [ -z "$bridge" ]; then
     fatal "Could not find bridge: none was specified"
fi

case "$command" in
    online)
        log debug "vif-dummy adding $vif to $bridge."
        setup_bridge_port "$vif"
        add_to_bridge "$bridge" "$vif"
        ;;

    offline)
        log debug "vif-dummy removing $vif from $bridge."
        do_without_error brctl delif "$bridge" "$vif"
        do_without_error ifconfig "$vif" down
        ;;
esac

log debug "Successful vif-dummy $command for $vif."

if [ "$command" = "online" ]
then
  success
fi