Zuerst muß das Paket "bind" mit "ipkg install bind" installiert werden.
Nun wird in das Verzeichnis "/opt/etc/named" gewechselt
und die Datei "named.conf" erstellt.
In die "named.conf" wird folgendes mit den eigenen Anpassungen eingetragen:
mylocaldomain ersetzt du mit deiner Domain:
192.168.0 mit deinem IP_Bereich.
192.168.0.1 mit der IP-Adresse deines Routers.
0.168.192.in-addr.arpa ist der IP-Bereich rückwärts.
myNAS ist der Name deines NAS.
myNAS habe ich hier die IP-Adresse 192.168.0.2 gegeben.
directory "/opt/var/named" ist das Verzeichnis, in dem die Zonen-Datei liegt.
options {directory "/opt/var/named";allow-query { 192.168.0/24; 127.0.0.1; };forward only;forwarders { 192.168.0.1; };notify no;};zone "." in {type hint;file "zone.root";}; zone "localhost" {type master;file "zone.localhost";notify no;};zone "mylocaldomain.local" {type master;file "zone.local.mylocaldomain";notify no;};zone "0.0.127.in-addr.arpa" {type master;file "zone.0.0.127";notify no;};zone "0.168.192.in-addr.arpa" {type master;file "zone.0.168.192";notify no;};
Wenn diese Datei gespeichert ist, wird in das Verzeichnis "/opt/var/named" gewechselt und
erstellen 4 Dateien mit diesem Inhalt:
/opt/var/named/zone.0.0.127
$TTL 1D@ IN SOA localhost. admin (12072008 ; Serial8H ; Refresh2H ; Retry1W ; Expire11h) ; Minimum TTL;@ IN NS localhost.1.0.0.127.in-addr.arpa IN PTR localhost.
/opt/var/named/zone.localhost
$TTL 1D@ IN SOA localhost. admin (12072008 ; Serial8H ; Refresh2H ; Retry1W ; Expire11h) ; Minimum TTL;@ IN NS localhost.localhost IN A 127.0.0.1
/opt/var/named/zone.0.168.192
$TTL 1D@ IN SOA myNAS admin (12072008 ; Serial8H ; Refresh2H ; Retry1W ; Expire11h) ; Minimum TTL;@ IN NS localhost.1.0.168.192.in-addr.arpa. IN PTR router.mylocaldomain.local.2.0.168.192.in-addr.arpa. IN PTR myNAS.mylocaldomain.local.3.0.168.192.in-addr.arpa. IN PTR pc3.mylocaldomain.local.
/opt/var/named/zone.local.mylocaldomain
$TTL 1D@ IN SOA myNAS admin (12072008 ; Serial8H ; Refresh2H ; Retry1W ; Expire11h) ; Minimum TTL ;@ IN NS localhost.localhost. IN A 127.0.0.1loopback. IN CNAME localhostrouter.mylocaldomain.local. IN A 192.168.0.1myNAS.mylocaldomain.local. IN A 192.168.0.2pc3.mylocaldomain.local. IN A 192.168.0.3www.mylocaldomain.local. IN CNAME myNAS
EDIT: IP-Adressen der Root-Server hinzugefügt
/opt/var/named/zone.root
; This file holds the information on root name servers needed to; initialize cache of Internet domain name servers; (e.g. reference this file in the "cache . <file>"; configuration file of BIND domain name servers).;; This file is made available by InterNIC ; under anonymous FTP as; file /domain/named.root; on server FTP.INTERNIC.NET; -OR- RS.INTERNIC.NET;; last update: Feb 04, 2008; related version of root zone: 2008020400;; formerly NS.INTERNIC.NET;. 3600000 IN NS A.ROOT-SERVERS.NET.A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4A.ROOT-SERVERS.NET. 3600000 AAAA 2001:503:BA3E::2:30;; formerly NS1.ISI.EDU;. 3600000 NS B.ROOT-SERVERS.NET.B.ROOT-SERVERS.NET. 3600000 A 192.228.79.201;; formerly C.PSI.NET;. 3600000 NS C.ROOT-SERVERS.NET.C.ROOT-SERVERS.NET. 3600000 A 192.33.4.12;; formerly TERP.UMD.EDU;. 3600000 NS D.ROOT-SERVERS.NET.D.ROOT-SERVERS.NET. 3600000 A 128.8.10.90;; formerly NS.NASA.GOV;. 3600000 NS E.ROOT-SERVERS.NET.E.ROOT-SERVERS.NET. 3600000 A 192.203.230.10;; formerly NS.ISC.ORG;. 3600000 NS F.ROOT-SERVERS.NET.F.ROOT-SERVERS.NET. 3600000 A 192.5.5.241F.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:2f::f;; formerly NS.NIC.DDN.MIL;. 3600000 NS G.ROOT-SERVERS.NET.G.ROOT-SERVERS.NET. 3600000 A 192.112.36.4;; formerly AOS.ARL.ARMY.MIL;. 3600000 NS H.ROOT-SERVERS.NET.H.ROOT-SERVERS.NET. 3600000 A 128.63.2.53H.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:1::803f:235;; formerly NIC.NORDU.NET;. 3600000 NS I.ROOT-SERVERS.NET.I.ROOT-SERVERS.NET. 3600000 A 192.36.148.17;; operated by VeriSign, Inc.;. 3600000 NS J.ROOT-SERVERS.NET.J.ROOT-SERVERS.NET. 3600000 A 192.58.128.30J.ROOT-SERVERS.NET. 3600000 AAAA 2001:503:C27::2:30;; operated by RIPE NCC;. 3600000 NS K.ROOT-SERVERS.NET.K.ROOT-SERVERS.NET. 3600000 A 193.0.14.129 K.ROOT-SERVERS.NET. 3600000 AAAA 2001:7fd::1;; operated by ICANN;. 3600000 NS L.ROOT-SERVERS.NET.L.ROOT-SERVERS.NET. 3600000 A 199.7.83.42;; operated by WIDE;. 3600000 NS M.ROOT-SERVERS.NET.M.ROOT-SERVERS.NET. 3600000 A 202.12.27.33M.ROOT-SERVERS.NET. 3600000 AAAA 2001:dc3::35; End of File
/EDIT
Bei PC-Namen mit voller Domain-Adresse erhalten am Ende einen Punkt: http://www.mylocaldomain.local. .
Bei PC-Namen ohne Domain-Adresse wird intern die Domain-Adresse angefügt: www .
Ich habe feststellen müssen, das die Adressen hauptsächlich mit voller Domain-Adresse verwendet werden muß.
IN A ist eine Zuweisung von PC-Namen zu einer IP-Adresse.
IN CNAME ist ein ALIAS zu einem schon angegebenen PC-Namen.
IN PTR ist eine Zuweisung einer IP-Adresse zu einem PC-Namen.
Der DNS-Server wird mit "chroot /share/HDA_DATA/optware /opt/etc/init.d/S09named start gestartet.
Damit es auch bei jedem Reboot vom System mitgestartet wird, mußt es in die autorun.sh eintragen werden.
mount -t ext2 /dev/mtdblock5 /tmp/configecho "/opt/etc/init.d/S09named start" >> /tmp/config/autorun.shchmod u+x /tmp/config/autorun.shumount /tmp/config
Edit:
Zudem habe ich mir das Startscriptkomplett abgeändert.
Hie meine Version:
start() {
echo "Starting named service"
# Start daemons
pid=`pidof named`
if [ ! -n $pid ]; then
echo "already running"
else
/opt/sbin/named
pid=`pidof named`
if [ -n $pid ]; then
echo "named started"
fi
fi
}
stop() {
# Stop daemons.
echo "Shutting down named: "
pid=`pidof named`
if [ -n $pid ]; then
kill $pid
echo "named stopped"
fi
}
restart() {
# Stop daemons.
echo "restart named: "
pid=`pidof named`
if [ -n $pid ]; then
kill -HUP $pid
echo "named restarted"
fi
}
status() {
pid=`pidof named`
if [ -n $pid ]; then
echo "named is running"
fi
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
status)
status
;;
*)
pid=`pidof named`
echo "Usage: named { [start]|stop|[restart][status] } PID : $pid"
exit 1
esac
exit 0
Alles anzeigen
EDIT 2010-05-15 :
- chroot entfernt
- Alternative zur autorun.sh habe ich ein QPKG erstellt, der das Start-Script beinhaltet und beim Booten ausführt.
! Das QPKG installiert nicht das bind.ipkg und beinhaltet keine Konfigurationsdateien. !