mirror of
https://github.com/freebsd/freebsd-src.git
synced 2024-11-28 02:32:47 +00:00
d75038b6e7
Have netstart directly source sysconfig so that it stands on its own. Do not source netstart in rc, run it with sh. Rework the dangerous /etc/hostname.* so that it uses a variable with a list of interfaces and a variable for each interface in that list. The files /etc/hostname.* become obsolete with this change, the information is now stored in /etc/sysconfig. Source any /etc/start_if.${ifn} files so they can export things to netstart (plans for future enhancements in this area.) Obsolete /etc/defaultrouter, this is now down with $defaultrouter from sysconfig.
61 lines
1.6 KiB
Bash
Executable File
61 lines
1.6 KiB
Bash
Executable File
#!/bin/sh -
|
|
#
|
|
# $Id: netstart,v 1.26 1995/04/09 09:54:41 rgrimes Exp $
|
|
# From: @(#)netstart 5.9 (Berkeley) 3/30/91
|
|
|
|
# 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 [ -z "`domainname`" -a -e "/etc/defaultdomain" ] ; then
|
|
domainname=`cat /etc/defaultdomain`
|
|
domainname $domainname
|
|
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
|
|
eval ifconfig_args=\$ifconfig_${ifn}
|
|
ifconfig ${ifn} ${ifconfig_args}
|
|
ifconfig ${ifn}
|
|
done
|
|
|
|
# set the address for the loopback interface
|
|
ifconfig lo0 inet localhost
|
|
|
|
# set interface for multicasts to default interface
|
|
# this needs to happen before router discovery
|
|
route add 224.0.0.0 -netmask 0xf0000000 -interface $hostname
|
|
|
|
if [ -n "$defaultrouter" -a "x$defaultrouter" != "xNO" ] ; then
|
|
route add default $defaultrouter
|
|
fi
|
|
|
|
# use loopback, not the wire
|
|
# route add $hostname localhost
|
|
|
|
if [ "x$gated" != "xNO" -o "x$routedflags" != "xNO" ] ; then
|
|
echo -n starting routing daemons:
|
|
|
|
# $gated and $routedflags are imported from /etc/sysconfig.
|
|
# If $gated == YES, gated is used; otherwise routed.
|
|
# If $routedflags == NO, routed isn't run.
|
|
|
|
if [ "X${gated}" = X"YES" -a -r /etc/gated.conf ]; then
|
|
echo -n ' gated'; gated $gatedflags
|
|
elif [ "X${routedflags}" != X"NO" ]; then
|
|
echo -n ' routed'; routed $routedflags
|
|
fi
|
|
|
|
echo '.'
|
|
fi
|