#!/bin/bash
#
# ipmasq	Set up IP Masquerading for Debian systems
#
#		v2.0 19-November-1997

test -x /sbin/ipmasq || exit 1

# Source configuration
. /etc/ipmasq.conf

# helper function
function xto {
if [ $1 -eq -1 ]; then
  return;
else
  xto $(($1 - 1));
  echo $1
fi
}

# Display 'whaddamidoing?' prompt
echo -n Initializing IP Masquerading...

# Setup IPMasq

# flush all
# Incoming, flush and set default policy of deny.
/sbin/ipfwadm -I -f
/sbin/ipfwadm -I -p deny

# Outgoing, flush and set default policy of deny.
/sbin/ipfwadm -O -f
/sbin/ipfwadm -O -p deny

# Forwarding, flush and set default policy of deny.
/sbin/ipfwadm -F -f
/sbin/ipfwadm -F -p deny

# set rules
for i in `xto $(( ${#INTERNAL_IP[*]} - 1 ))`; do
  /sbin/ipmasq $EXTERNAL_IP $EXTERNAL_NETMASK ${INTERNAL_IP[$i]} ${INTERNAL_NETMASK[$i]};
done

# Display 'whaddamidoing?' prompt
echo done.
