blob: de17354f3b266c18b1ab31d3ad10852b56156b2e [file] [log] [blame]
#!/bin/bash
# ----------------------------------------------------------------------------
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
# ----------------------------------------------------------------------------
set -e
# See http://www.zytrax.com/books/dns/ch7/address_match_list.html
UPDATE_ADDR_LIST=${UPDATE_ADDR_LIST:-none}
export REV_IP_ADDR=$(echo $IP_ADDR | awk -F . '{print $4 "." $3 "." $2 "." $1}')
echo =============================
echo Environment Variable Settings
echo =============================
echo Setting DOMAIN=$DOMAIN
echo Setting IP_ADDR=$IP_ADDR
echo Setting UPDATE_ADDR_LIST=$UPDATE_ADDR_LIST
echo =========================
cp /etc/bind/zone_template /var/cache/bind/db.$DOMAIN
sed -i "s/@DOMAIN@/$DOMAIN/g" /var/cache/bind/db.$DOMAIN
sed -i "s/@IP_ADDR@/$IP_ADDR/g" /var/cache/bind/db.$DOMAIN
cat > /etc/bind/named.conf.local <<EOF
zone "$DOMAIN" in {
type master;
file "db.$DOMAIN";
allow-update {$UPDATE_ADDR_LIST;};
};
EOF
# TODO: will server start with IPV6 enabled?
#sed -i 's/OPTIONS="-u bind"/OPTIONS="-u bind -4"/g' /etc/default/bind9
exec /usr/sbin/named -u bind -g