1#!/bin/sh
2#
3# $NetBSD: ipnat,v 1.13 2004/10/12 14:51:03 lukem Exp $
4#
5
6# PROVIDE: ipnat
7# REQUIRE: ipfilter mountcritremote
8# BEFORE:  SERVERS
9
10$_rc_subr_loaded . /etc/rc.subr
11
12name="ipnat"
13rcvar=$name
14config="/etc/ipnat.conf"
15start_cmd="ipnat_start"
16stop_cmd="/usr/sbin/ipnat -F -C"
17reload_cmd="/usr/sbin/ipnat -C -f ${config}"
18restart_cmd="/usr/sbin/ipnat -F -C -f ${config}"
19extra_commands="reload"
20
21ipnat_start()
22{
23	if [ ! -f ${config} ]; then
24		return 0
25	fi
26	if [ "$(/sbin/sysctl -n net.inet.ip.forwarding)" = "0" ]; then
27		logger -s -p daemon.warning -t ipnat \
28			"WARNING: net.inet.ip.forwarding is 0"
29	fi
30	if ! checkyesno ipfilter || [ ! -f /etc/ipf.conf ]; then
31		echo "Enabling ipfilter for NAT."
32		/sbin/ipf -E -Fa
33	fi
34	echo -n "Installing NAT rules ... "
35	/usr/sbin/ipnat -F -f ${config}
36}
37
38load_rc_config $name
39load_rc_config_var ipfilter ipfilter
40run_rc_command "$1"
41