Moxa Technologies THINKCORE W341 User Manual

Page 69

Advertising
background image

ThinkCore W311/321/341 Linux User’s Manual

Managing Communications

4-29

mname=tun
module_up
mname=bridge
module_up
# create an ethernet bridge to connect tap devices, internal interface
brctl addbr br0
brctl addif br0 $iface
# the bridge receives data from any port and forwards it to other ports.

i=`expr 0`
while :
do
# generate a tap0 interface on tun
openvpn --mktun --dev tap${i}

# connect tap device to the bridge
brctl addif br0 tap${i}

# null ip address of tap device
ifconfig tap${i} 0.0.0.0 promisc up

i=`expr $i + 1`
if [ $i -ge $maxtap ]; then
break
fi
done

# null ip address of internal interface
ifconfig $iface 0.0.0.0 promisc up

# enable bridge ip
ifconfig br0 $IPADDR netmask $NETMASK broadcast $BROADCAST

ipf=/proc/sys/net/ipv4/ip_forward
# enable IP forwarding
echo 1 > $ipf
echo “ip forwarding enabled to”
cat $ipf
}

stop() {
echo “shutdown openvpn bridge.”
ifcfg_vpn
i=`expr 0`
while :
do
# disconnect tap device from the bridge
brctl delif br0 tap${i}
openvpn --rmtun --dev tap${i}

i=`expr $i + 1`
if [ $i -ge $maxtap ]; then
break
fi
done
brctl delif br0 $iface
brctl delbr br0
ifconfig br0 down
ifconfig $iface $IPADDR netmask $NETMASK broadcast $BROADCAST
killall -TERM openvpn
}

case “$1” in
start)
start
;;
stop)
stop

Advertising
This manual is related to the following products: