| #!/bin/sh |
| # |
| # Startup script for the DNS caching server |
| # |
| # chkconfig: 2345 99 01 |
| # description: This script starts your DNS caching server |
| # processname: dnsmasq |
| # pidfile: /var/run/dnsmasq.pid |
| |
| # Source function library. |
| . /etc/rc.d/init.d/functions |
| |
| # Source networking configuration. |
| . /etc/sysconfig/network |
| |
| # Check that networking is up. |
| [ ${NETWORKING} = "no" ] && exit 0 |
| |
| dnsmasq=/usr/sbin/dnsmasq |
| [ -f $dnsmasq ] || exit 0 |
| |
| # change this line if you want dnsmasq to serve an MX record for |
| # the host it is running on. |
| MAILHOSTNAME="" |
| # change this line if you want dns to get its upstream servers from |
| # somewhere other that /etc/resolv.conf |
| RESOLV_CONF="" |
| # change this if you want dnsmasq to cache any "hostname" or "client-hostname" from |
| # a dhcpd's lease file |
| DHCP_LEASE="/var/lib/dhcp/dhcpd.leases" |
| DOMAIN_SUFFIX=`dnsdomainname` |
| |
| OPTIONS="" |
| |
| if [ ! -z "${MAILHOSTNAME}" ]; then |
| OPTIONS="$OPTIONS -m $MAILHOSTNAME" |
| fi |
| |
| if [ ! -z "${RESOLV_CONF}" ]; then |
| OPTIONS="$OPTIONS -r $RESOLV_CONF" |
| fi |
| |
| if [ ! -z "${DHCP_LEASE}" ]; then |
| OPTIONS="$OPTIONS -l $DHCP_LEASE" |
| fi |
| |
| if [ ! -z "${DOMAIN_SUFFIX}" ]; then |
| OPTIONS="$OPTIONS -s $DOMAIN_SUFFIX" |
| fi |
| |
| RETVAL=0 |
| |
| # See how we were called. |
| case "$1" in |
| start) |
| echo -n "Starting dnsmasq: " |
| daemon $dnsmasq $OPTIONS |
| RETVAL=$? |
| echo |
| [ $RETVAL -eq 0 ] && touch /var/lock/subsys/dnsmasq |
| ;; |
| stop) |
| if test "x`pidof dnsmasq`" != x; then |
| echo -n "Shutting down dnsmasq: " |
| killproc dnsmasq |
| fi |
| RETVAL=$? |
| echo |
| [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/dnsmasq /var/run/dnsmasq.pid |
| ;; |
| status) |
| status dnsmasq |
| RETVAL=$? |
| ;; |
| restart|reload) |
| $0 stop |
| $0 start |
| RETVAL=$? |
| ;; |
| condrestart) |
| if test "x`/sbin/pidof dnsmasq`" != x; then |
| $0 stop |
| $0 start |
| RETVAL=$? |
| fi |
| ;; |
| *) |
| echo "Usage: $0 {start|stop|restart|reload|condrestart|status}" |
| exit 1 |
| esac |
| |
| exit $RETVAL |
| |