Delegering av DNS-hanteringen i AMPRNet
Av flera skäl är det önskvärt att delegera DNS-hanteringen tillsammans med adressdelegationerna. Det lokala nätet blir mer robust om det blir frånkopplat och arbetet underlättas lokalt. En nackdel som kräver uppmärksamhet är att fler portar öppnas och exponeras för Internet.
De resurser som krävs lokalt är dels en enkel server (i detta exempel en Raspberrypi under Raspbian), dels någon som tar på sig ansvaret för att hålla zon-filerna aktuella. Arbetsinsatsen är inte stor eller speciellt komplicerad men kräver dock vissa kunskaper. För den oinvigde finns det gott om lättillgängligt utbildningsmaterial på nätet, tex här
De medlemmar som av en eller annan orsak inte anser sig kunna ta hand om en egen dns server kan liera sig med en partner, helst lokalt. Detta organiseras i samband med ursprungliga adressdelegationen och uppdateras vid behov.
Installation av DNS-server
För Debian-liknande Linux-system som Raspbian, Ubuntu, mfl, omfattar installationen föjande paket:
sudo apt-get install bind9 bind9utils dnsutils
sedan behövs konfigurations- och zonfilerna beskrivna nedan. Konfigurationsfilen (named.conf.local) anger vilka zoner som servern hanterar. Zonerna bestå av de två (sub)domänerna xxx.amprnet.se och xxx.se.ampr.org vid framåtuppslagning och de två delegerade adressrymderna (ipv4 och ipv6) vid bakåtuppslagning.
Konfigurationsfiler
Nedan listas konfigurationsfilerna dels på den centrala sevrern som information, dels för den lokala servern tillsammans med de fyra zon-filerna för implementering.
Som exempel ser vi nedan dns-delegationen till SK0TM. Den relevanta adressrymden för varje enskild medlem anges tillsammans med adressdelegationen från föreningen.
Central server
DNS-delegationen på den nationella servern (/etc/bind/named.conf.local) ser ut så här:
//SK0TM zone "sk0tm.amprnet.se" { type slave; file "/var/cache/bind/slave/db.sk0tm.amprnet.se"; masters { 44.140.47.2; 2001:6b0:4b:2f00::2; }; allow-query { any; }; }; zone "sk0tm.se.ampr.org" { type slave; file "/var/cache/bind/slave/db.sk0tm.se.ampr.org"; masters { 44.140.47.2; 2001:6b0:4b:2f00::2; }; allow-query { any; }; }; zone "47.140.44.IN-ADDR.ARPA" { type slave; file "/var/cache/bind/slave/db.44.140.47.rev"; masters { 44.140.47.2; 2001:6b0:4b:2f00::2; }; allow-query { any; }; }; zone "f.2.b.4.0.0.0.b.6.0.1.0.0.2.ip6.arpa" { type slave; masters { 44.140.47.2; 2001:6b0:4b:2f00::2; }; file "/var/cache/bind/slave/f.2.b.4.0.0.0.b.6.0.1.0.0.2.ip6.arpa"; allow-query { any; }; };
Lokal server
Följande fem filer ska finnas på den lokala servern:
/etc/bind/named.conf.local /etc/bind/master/db.sk0tm.amprnet.se /etc/bind/master/db.sk0tm.se.ampr.org /etc/bind/master/db.44.140.47.rev /etc/bind/master/f.2.b.4.0.0.0.b.6.0.1.0.0.2.ip6.arpa
Var och en listas nedan.
Lokal konfigurationsfil
$ cat /etc/bind/named.conf.local i@sk0tm:~ $ cat /etc/bind/named.conf.local // // Do any local configuration here // // Consider adding the 1918 zones here, if they are not used in your // organization //include "/etc/bind/zones.rfc1918"; zone "sk0tm.se.ampr.org" { type master; file "/etc/bind/master/db.sk0tm.se.ampr.org"; also-notify { 192.16.124.50; }; allow-transfer { 192.16.124.50; }; allow-query { any; }; }; zone "sk0tm.amprnet.se" { type master; file "/etc/bind/master/db.sk0tm.amprnet.se"; also-notify { 192.16.124.50; }; allow-transfer { 192.16.124.50; }; allow-query { any; }; }; zone "47.140.44.IN-ADDR.ARPA" { type master; file "/etc/bind/master/db.44.140.47.rev"; also-notify { 192.16.124.50; }; allow-transfer { 192.16.124.50; }; allow-query { any; }; }; zone "f.2.b.4.0.0.0.b.6.0.1.0.0.2.ip6.arpa" { type master; file "/etc/bind/master/f.2.b.4.0.0.0.b.6.0.1.0.0.2.ip6.arpa"; also-notify { 192.16.124.50; }; allow-transfer { 192.16.124.50; }; allow-query { any; }; };
Zon-fil för framåtuppslagning sk0tm.amprnet.se
pi@sk0tm:~ $ cat /etc/bind/master/db.sk0tm.amprnet.se ; DO NOT EDIT THIS FILE - it is used for multiple zones. ; Instead, copy it, edit named.conf, and use that copy. ; $TTL3600 @IN SOA ns.sk0tm.amprnet.se. noc.ssvl.kth.se. ( 18021101 ; Serial 36000 ; Refresh 6000 ; Retry 86400 ; Expire 30000 ) ; Negative Cache TTL ; @ IN A 44.140.47.2 @ IN AAAA 2001:6b0:4b:2f00::2 @ IN NS ns.sk0tm.amprnet.se. MX 0 mail.ssvl.kth.se. gw A44.140.47.1 gw AAAA 2001:6b0:4b:2f00::1 ns A 44.140.47.2 ns AAAA 2001:6b0:4b:2f00::2 pi CNAME ns pi@sk0tm:~ $
Zon-fil för framåtuppslagning sk0tm.se.ampr.org
$ cat /etc/bind/master/db.sk0tm.se.ampr.org pi@sk0tm:~ $ cat /etc/bind/master/db.sk0tm.se.ampr.org ; DO NOT EDIT THIS FILE - it is used for multiple zones. ; Instead, copy it, edit named.conf, and use that copy. ; $TTL 3600 @ IN SOA ns.sk0tm.se.ampr.org. noc.ssvl.kth.se. ( 18020301 ; Serial 36000 ; Refresh 6000 ; Retry 86400 ; Expire 30000 ) ; Negative Cache TTL ; @ IN A 44.140.47.2 @ IN AAAA 2001:6b0:4b::3 @ IN NS ns.sk0tm.amprnet.se. MX 0 mail.ssvl.kth.se. gw A 44.140.47.1 ns A 44.140.47.2 pi CNAME ns www CNAME ns pi@sk0tm:~ $
Zon-fil för bakåtuppslagning ipv4
$ cat /etc/bind/master/db.44.140.47.rev pi@sk0tm:~ $ cat /etc/bind/master/db.44.140.47.rev ; BIND reverse data file for empty rfc1918 zone ; ; DO NOT EDIT THIS FILE - it is used for multiple zones. ; Instead, copy it, edit named.conf, and use that copy. ; $TTL3600 @IN SOA ns.sk0tm.amprnet.se. noc.ssvl.kth.se. ( 18012001 ; Serial 36000 ; Refresh 6000 ; Retry 86400 ; Expire 30000 ) ; Negative Cache TTL ; @INNSns.ssvl.kth.se. NS ns2.ssvl.kth.se. ;********SK0TM*****44.140.47.0/24 *************** $ORIGIN 47.140.44.IN-ADDR.ARPA. 1 PTR sk0tm-gw.se.ampr.org. 1 PTR gw.sk0tm.amprnet.se. 2 PTR sk0tm-pi.se.ampr.org. 2 PTR pi.sk0tm.amprnet.se. 2 PTR www.sk0tm.se.ampr.org. pi@sk0tm:~ $
Zon-fil för bakåtuppslagning ipv6
pi@sk0tm:/etc/bind $ cat /etc/bind/master/f.2.b.4.0.0.0.b.6.0.1.0.0.2.ip6.arpa ; BIND reverse data file for empty rfc1918 zone ; ; DO NOT EDIT THIS FILE - it is used for multiple zones. ; Instead, copy it, edit named.conf, and use that copy. ; $TTL 3600 @ IN SOA ns.sk0mt.amprnet.se. noc.ssvl.kth.se. ( 18022701 ; Serial 600 ; Refresh 60 ; Retry 86400 ; Expire 300 ) ; Negative Cache TTL ; @ IN NS ns.sk0tm.amprnet.se. NS ns.ssvl.kth.se. NS ns2.ssvl.kth.se. ; 2001:6b0:4b:2f00::0/56 sk0mt.amprnet.se (44.140.15.0/24) 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR gw.sk0tm.amprnet.se. 2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR ns.sk0tm.amprnet.se. 2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR pi.sk0tm.amprnet.se. 2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0 IN PTR www.sk0tm.amprnet.se. pi@sk0tm:~ $
Prioritering av ipv4- eller ipv6-adresser vid namnuppslagning
Debian/Raspbian/Ubuntu prioriterar per default ipv6 vid uppslagning. Detta kan ändras genom editering i filen /etc/gai.conf Referens