mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-14 10:09:48 +00:00
104 lines
2.7 KiB
Bash
Executable File
104 lines
2.7 KiB
Bash
Executable File
#!/bin/sh -
|
|
#
|
|
# $Id$
|
|
# From: @(#)netstart 5.9 (Berkeley) 3/30/91
|
|
|
|
# Note that almost all the user-configurable behavior is no longer in
|
|
# this file, but rather in /etc/sysconfig. Please check this file
|
|
# first before contemplating any changes here. If you do need to change
|
|
# this file for some reason, we would like to know about it.
|
|
|
|
# If there is a global system configuration file, suck it in.
|
|
if [ -f /etc/sysconfig ]; then
|
|
. /etc/sysconfig
|
|
fi
|
|
|
|
# Set the host name if it is not already set
|
|
if [ -z "`hostname -s`" ] ; then
|
|
hostname $hostname
|
|
fi
|
|
|
|
# Set the domainname if we're using NIS
|
|
if [ -n "$defaultdomainname" -a "x$defaultdomainname" != "xNO" ] ; then
|
|
domainname $defaultdomainname
|
|
fi
|
|
|
|
# If IP filtering
|
|
if [ -n "$firewall" -a "x$firewall" != "xNO" -a -f /etc/rc.firewall ] ; then
|
|
sh /etc/rc.firewall
|
|
fi
|
|
|
|
#
|
|
# XXX This is known to cause an error if /usr is nfs mounted since it
|
|
# will not be available until after the network is up :-(. Once the
|
|
# relocation of sysctl to /sbin is done that problem will go away.
|
|
#
|
|
if [ -n "$tcp_extensions" -a "x$tcp_extensions" = "xNO" ] ; then
|
|
sysctl -w net.inet.tcp.rfc1323=0
|
|
sysctl -w net.inet.tcp.rfc1644=0
|
|
fi
|
|
|
|
# Set up all the network interfaces, calling startup scripts if needed
|
|
for ifn in ${network_interfaces}; do
|
|
if [ -e /etc/start_if.${ifn} ]; then
|
|
. /etc/start_if.${ifn} ${ifn}
|
|
fi
|
|
# Do the primary ifconfig if specified
|
|
eval ifconfig_args=\$ifconfig_${ifn}
|
|
if [ -n "${ifconfig_args}" ] ; then
|
|
ifconfig ${ifn} ${ifconfig_args}
|
|
fi
|
|
# Check to see if aliases need to be added
|
|
alias=0
|
|
while :
|
|
do
|
|
eval ifconfig_args=\$ifconfig_${ifn}_alias${alias}
|
|
if [ -n "${ifconfig_args}" ]; then
|
|
ifconfig ${ifn} ${ifconfig_args} alias
|
|
alias=`expr ${alias} + 1`
|
|
else
|
|
break;
|
|
fi
|
|
done
|
|
# Do ipx address if specified
|
|
eval ifconfig_args=\$ifconfig_${ifn}_ipx
|
|
if [ -n "${ifconfig_args}" ]; then
|
|
ifconfig ${ifn} ${ifconfig_args}
|
|
fi
|
|
ifconfig ${ifn}
|
|
done
|
|
|
|
if [ -n "$defaultrouter" -a "x$defaultrouter" != "xNO" ] ; then
|
|
static_routes="default ${static_routes}"
|
|
route_default="default ${defaultrouter}"
|
|
fi
|
|
|
|
# Set up any static routes. This should be done before router discovery.
|
|
if [ "x${static_routes}" != "x" ]; then
|
|
for i in ${static_routes}; do
|
|
eval route_args=\$route_${i}
|
|
route add ${route_args}
|
|
done
|
|
fi
|
|
|
|
if [ "x$gateway" != "xNO" ]; then
|
|
echo 'configuring host as a gateway.'
|
|
sysctl -w net.inet.ip.forwarding=1 >/dev/null 2>&1
|
|
fi
|
|
|
|
if [ "x$router" != "xNO" ] ; then
|
|
echo -n starting routing daemon:
|
|
echo -n " ${router}"; ${router} ${routerflags}
|
|
echo '.'
|
|
fi
|
|
|
|
if [ "x$ipxgateway" != "xNO" ]; then
|
|
echo 'configuring host as an ipx gateway.'
|
|
sysctl -w net.ipx.ipx.ipxforwarding=1 >/dev/null 2>&1
|
|
fi
|
|
|
|
if [ "x$ipxrouted" != "xNO" ] ; then
|
|
echo -n "starting IPXrouted"; IPXrouted ${ipxrouted}
|
|
echo '.'
|
|
fi
|