2023-01-21 16:13:26 +01:00

93 lines
2.2 KiB
Plaintext
Executable File
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#/bin/bash
set -u
set -e
# cree les fichiers de configuration bind9
# - ficher de zone directe
# - ficher de zone inverse
#
readonly zone="domaine.lan"
readonly zonerev="1.168.192.in-addr.arpa"
readonly nsname="ns"
readonly nsip="192.168.1.10"
readonly nsiprev=$(echo ${nsip}|cut -d. -f4) # dernier octet pour classe C
readonly nsname2="ns2"
readonly nsip2="192.168.1.11"
readonly nsiprev2=$(echo ${nsip2}|cut -d. -f4)
readonly ttl="86400"
readonly nsfqdn="${nsname}.${zone}"
readonly nsfqdnp="${nsfqdn}."
readonly zonep="${zone}."
readonly date=$(date +%Y%m%d00)
cat <<EOT > "named.conf.local"
; fichier zone ${zone}
; le $(date)
zone "${zone}" {
type master;
file "/etc/bind/db.${zone}"; # zone directe
};
zone "${zonerev}" {
type master;
file "/etc/bind/db.${zone}.rev"; # zone inverse
};
EOT
cat <<EOT > "db.${zone}"
; fichier zone ${zone}
; le $(date)
\$TTL ${ttl} ; (1 day)
\$ORIGIN ${zonep}
@ IN SOA ${nsfqdnp} root.${nsfqdnp} (
${date} ; serial YYYYMMDDnn
14400 ; refresh (4 hours)
1800 ; retry (30 minutes)
1209600 ; expire (2 weeks)
3600 ; minimum (1 hour)
)
IN NS ${nsname}
IN NS ${nsname2}
IN A 203.0.113.10 # zone
IN AAAA 2001:DB8:BEEF:113::10 #
www IN CNAME ${nsfqdnp}
ftp IN CNAME ${nsfqdnp}
${nsname} IN A ${nsip}
IN AAAA 2001:DB8:BEEF:2::22
${nsname2} IN A ${nsip2}
IN AAAA 2001:DB8:BEEF:100::22
EOT
cat <<EOT > "db.${zone}.rev"
; fichier zone inverse ${zone}
; le $(date)
\$TTL ${ttl} ; (1 day)
\$ORIGIN ${zonep}
@ IN SOA ${nsfqdnp} root.${nsfqdnp} (
${date} ; serial YYYYMMDDnn
14400 ; refresh (4 hours)
1800 ; retry (30 minutes)
1209600 ; expire (2 weeks)
3600 ; minimum (1 hour)
)
IN NS ${nsname}
IN NS ${nsname2}
10 IN PTR
${nsiprev} IN PTR ${nsname}
${nsiprev2} IN PTR ${nsname2}
EOT