Linuxでブリッジ

シェルスクリプトを作り、起動時に実インターフェースとTAPドライバとでブリッジが構築されるようにした。
基本的には、ブリッジを定義し、NICを追加しまとめるという作業になるが、プロミスキャスモードにするのがポイントのようだ。これを、シェルスクリプトにしてブートしシステムが落ち着いてから実行するように設定。

#!/bin/sh
#
#bridge Starts and Stops Bridge
NIC0=eth0
NIC1=tap_vpn
BRIDGE=br0
IPADDR=192.168.0.4
GW=192.168.0.1
PATH=/usr/sbin:/sbin
start() {
brctl addbr $BRIDGE
brctl stp $BRIDGE off
brctl addif $BRIDGE $NIC0
brctl addif $BRIDGE $NIC1
ifconfig $NIC0 0.0.0.0 promisc up
ifconfig $NIC1 0.0.0.0 promisc up
ifconfig $BRIDGE $IPADDR up
route add default gw $GW
}
stop() {
ifconfig $BRIDGE down
brctl delif $BRIDGE $NIC0
brctl delif $BRIDGE $NIC1
brctl delbr $BRIDGE
ifconfig $NIC0 down
ifconfig $NIC1 down
ifconfig $NIC0 $IPADDR up
route add default gw $GW
}
case “$1” in
start)
echo “Starting bridge: ”
start
;;
stop)
echo “Shutting down bridge: ”
stop
;;
status)
/usr/sbin/brctl showstp br0
;;
restart)
stop
start
;;
*)
echo “Usage: $0 {start|stop|status|restart}”
exit 1
esac
exit 0

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です