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