#!/bin/sh # # $NetBSD: ipnat,v 1.13 2004/10/12 14:51:03 lukem Exp $ # # PROVIDE: ipnat # REQUIRE: ipfilter mountcritremote # BEFORE: SERVERS $_rc_subr_loaded . /etc/rc.subr name="ipnat" rcvar=$name config="/etc/ipnat.conf" start_cmd="ipnat_start" stop_cmd="/usr/sbin/ipnat -F -C" reload_cmd="/usr/sbin/ipnat -C -f ${config}" restart_cmd="/usr/sbin/ipnat -F -C -f ${config}" extra_commands="reload" ipnat_start() { if [ ! -f ${config} ]; then return 0 fi if [ "$(/sbin/sysctl -n net.inet.ip.forwarding)" = "0" ]; then logger -s -p daemon.warning -t ipnat \ "WARNING: net.inet.ip.forwarding is 0" fi if ! checkyesno ipfilter || [ ! -f /etc/ipf.conf ]; then echo "Enabling ipfilter for NAT." /sbin/ipf -E -Fa fi echo -n "Installing NAT rules ... " /usr/sbin/ipnat -F -f ${config} } load_rc_config $name load_rc_config_var ipfilter ipfilter run_rc_command "$1"