br-boot.sh (開機時建立bridge firewall)
#!/bin/bash
# 宣告使用指令之路徑
IPTABLES="/sbin/iptables"
BRCTL="/usr/sbin/brctl"
IFCONFIG="/sbin/ifconfig"
ROUTE="/sbin/route"
# 宣告欲設定之ip資訊
BRIP="163.28.192.135"
FW_IP="163.28.192.135"
BRMASK="255.255.255.0"
GATEWAY="163.28.192.254"
BRBROADCAST="163.28.192.255"
# 宣告欲使用之介面名稱
FW_IFACE="br0"
$BRCTL addbr br0 #新增一bridge網路介面br0
$BRCTL addif br0 eth0 #將eth0加入br0內
$BRCTL addif br0 eth1 #將eth1加入br0內
$BRCTL addif br0 eth3 #將eth3加入br0內
# 先關閉這三組網路介面,準備設定ip
$IFCONFIG br0 down
$IFCONFIG eth0 down
$IFCONFIG eth1 down
$IFCONFIG eth3 down
$IFCONFIG eth0 0.0.0.0 #eth0本身不帶ip
$IFCONFIG eth1 192.168.1.11 #eth1帶192.168.1.11,與設定的vmware系統可以互通
$IFCONFIG eth2 192.168.163.1 #eth2帶192.168.163.1,用來與備援firewall互通偵測
$IFCONFIG eth3 0.0.0.0 #eth3本身不帶ip
# 設定bridge介面ip
$IFCONFIG br0 $BRIP netmask $BRMASK broadcast $BRBROADCAST
# 設定 gateway 值,使 fw 本身可以上網
$ROUTE add default gw $GATEWAY
# 啟動封包轉送,重要
echo "1" > /proc/sys/net/ipv4/ip_forward
# 因為建立bridge需要時間,等10秒後啟動detect.sh
sleep 10s
/bin/sh /br-fw/detect.sh &bg