#!/bin/sh

. /etc/network/scripts/common

case "$1" in

start)

	echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
	echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
	echo 1 > /proc/sys/net/ipv4/ip_forward
	echo 1 > /proc/sys/net/ipv4/tcp_syncookies


	### LOOPBACK INTERFACE
	$IP link set lo up
	echo "Loopback up"
	
	### LAN INTERFACE
	$IP link set $IF_LAN up
	$IP addr add $IP_LAN/24 brd + dev $IF_LAN
	echo "Lan up"

	### DMZ INTERFACE
	$IP link set $IF_DMZ up
	$IP addr add $IP_DMZ/16 brd + dev $IF_DMZ
	echo "DMZ up"

	### COLT 
	$IP link set $IF_COLT up
	$IP addr add $IP0_COLT/29 brd $BRD_COLT dev $IF_COLT
	$IP addr add $IP1_COLT/29 brd $BRD_COLT dev $IF_COLT
	$IP addr add $IP2_COLT/29 brd $BRD_COLT dev $IF_COLT
	$IP addr add $IP3_COLT/29 brd $BRD_COLT dev $IF_COLT
	$IP addr add $IP4_COLT/29 brd $BRD_COLT dev $IF_COLT
	echo "COLT up"

	### FREE
	$IP link set $IF_FREE up
	$IP addr add $IP_FREE/24 brd $BRD_FREE dev $IF_FREE
	echo "FREE up"	
	
	$IP rule add prio 50 table main
	
	$IP rule add prio 150 from $IP_FREE/32 table free 
	$IP rule add to X.X.48.4/32 table free # SMTP Free 
	$IP route add default via $GW_FREE dev $IF_FREE proto static table free 
	$IP route append prohibit default metric 1 proto static table free 


	$IP rule add prio 150 from $IP0_COLT/32 table colt 
	$IP rule add prio 150 from $IP1_COLT/32 table colt 
	$IP rule add prio 150 from $IP2_COLT/32 table colt 
	$IP rule add prio 150 from $IP3_COLT/32 table colt
	$IP rule add to X.X.133.106/32 table colt # SMTP Netstreams
	$IP rule add to X.X.86.11 table colt # FTP Server need the higher upstream line
	$IP route add default via $GW_COLT dev $IF_COLT proto static table colt 
	$IP route append prohibit default metric 1 proto static table colt 




	$IP rule add prio 200 table providers
	$IP route add default table providers proto static \
			nexthop via $GW_COLT dev $IF_COLT weight 1\
			nexthop via $GW_FREE dev $IF_FREE weight 4

	;;

stop)
	$IP route flush table providers 
	$IP route flush table free 
	$IP route flush table colt 
	$IP route flush all
	$IP rule flush
	
	$IP link set lo down
	$IP addr flush lo
	$IP link set $IF_LAN down
	$IP addr flush $IF_LAN 
	$IP link set $IF_DMZ down
	$IP addr flush $IF_DMZ 
	$IP link set $IF_COLT down
	$IP addr flush $IF_COLT 
	$IP link set $IF_FREE down
	$IP addr flush $IF_FREE 

	echo 0 > /proc/sys/net/ipv4/conf/all/arp_announce
	echo 0 > /proc/sys/net/ipv4/ip_forward

	;;

*)
	echo "Usage : $0 start | stop"
	;;

esac

