DNS-server

Fra Debianguiden

DNS står for Domain Name System. Det sørger for at omsætte værtsnavne til ip-adresser. Fx har 'www.jubii.dk' ip-adressen '212.112.128.10'.

Hvis man vil finde ip-adressen for et værtsnavn skriver man blot nslookup 'hostname'. Derefter vil din DNS-server (din internet udbyders eller din egen som du vil lære i denne guide at sætte op) spørge en root server, som er en kraftig DNS-server. Denne vil henvise til en topdomain server fx DNS-serverene for '.dk', som endvidere vil henvise til en DNS-server for fx 'jubii.dk'. Endvidere vil jubii's lokale DNS-server sende ip'en for fx www.jubii.dk' tilbage til dig. Denne process lyder ret tidskrævende, men det sker blot i løbet af nogle få sekunder.

Indholdsfortegnelse

Records

Når man snakker om DNS-server opsætning, skelner man imellem forskellige records:

Dette er slettet


CNAME record

Denne record er et alias til et værtsnavn. Fx er www.geekworld.dk et alias til geekworld.dyndns.dk.

MX record

Denne record står for Mail eXchange record, dvs. den fortæller en mailserver noget om hvilken server der skal modtage mail for det enkelte domain. fx har geekworld.dk 2 mx records, da man ikke kan opnå forbindelse til mailserveren udefra kun fra teledks net, derfor er den primære mx geekworld.dyndns.dk som henviser direkte til serveren, men da der ikke er adgang til den, må man bruge teledanmarks mailgate, derfor er den sekundær, og denne hedder backupmx.post.tele.dk.

NS record

Denne record fortæller hvilken DNS-server der skal bruges til det pågældende domain. f. eks. er ns-recordene til geekworld.dk, ns1.lujer.dk og ns2.lujer.dk, da disse 2 servere har zonefilen til geekworld.dk liggende.

Installation af bind

Bind kan vælges under installationen, hvis man ikke har gjort det kan den installeres med:

debian:~# aptitude install bind

Så langt så godt, nu ligger bind inde på din computer.

Opsætning af bind

Selve bind opsættes i /etc/bind/named.conf. Her er min named.conf:

options {
  directory "/var/named/zones";
  forwarders {
    194.239.134.83;
  };
};

logging {
  category lame-servers { null; };
  category cname { null; };
};

zone "." {
  type hint;
  file "/etc/bind/db.root";
};

zone "localhost" {
  type master;
  file "/etc/bind/db.local";
};

zone "127.in-addr.arpa" {
  type master;
  file "/etc/bind/db.127";
};

zone "0.in-addr.arpa" {
  type master;
  file "/etc/bind/db.0";
};

zone "255.in-addr.arpa" {
  type master;
  file "/etc/bind/db.255";
};

zone "geekworld.dk" {
  type master;
  file "geekworld.dk";
};

Den lange historie, ser sikkert ud for dig som om det er russisk. Men med lidt tålmodighed kan man godt hitte ud af den. Vi starter med at deklarere nogle options nemlig hvor zonefilerne ligger (directory "/var/named/zones";).

Vi har valgt at lægge vores i /var/named/zones men det er smag og behag. Derefter har vi valgt at bruge Tele Danmarks nameserver som forwarder, dvs. når vi laver et opslag i vores lokale nameserver, så vil vores navneserver automatisk spørge Tele Danmark's nameserver om at søge efter det værtsnavn. Hvis man udelader dette, bruger bind automatisk rootserverne. Derefter bliver der deklareret nogle zones. Det er bl.a. localhost, hvilket vi anbefaler man ligger ind (dette er standard i Debians named.conf).

Det spændende kommer når vi deklarerer geekworld.dk. Der fortæller vi bind at zonefilen til geekworld.dk hedder geekworld.dk og som vi allerede har fortalt bind ligger vores zonefiler i /var/named/zones.

Oprettelse af zonefiler

I zonefilen ligger alt information om hvilket værtsnavn der knytter sig til en ip adresse. Her er en af vores zonefiler (geekworld.dk).

$TTL	604800
@	IN	SOA	atlas.geekworld.dk. root.geekworld.dk. (
1		; Serial
604800		; Refresh
86400		; Retry
2419200		; Expire
604800 )	; Negative Cache TTL
;
@	IN	NS	atlas.geekworld.dk.
@	IN	MX	10 atlas.geekworld.dk.
router  IN	A	192.168.1.1
atlas   IN	A	192.168.1.2
venus   IN	A	192.168.1.3
apollon IN	A	192.168.1.4

Det første man støder på er SOA recorden. Den fortæller om levetid, ligesom den angiver den primære nameserver (atlas.geekworld.dk). Den angiver desuden email adressen på hostmasteren (root@geekworld.dk). Det næste vi kommer til er NS recorden og MX recorden. Tilsidst angiver vi, hvilket ip nummer de forskellige hosts har. Der kan også laves et CNAME, der vil blot stå CNAME i stedet for A, og derefter værtsnavnet, som er aliaset.

Derefter kan vi genstarte bind:

debian:~# /etc/init.d/bind restart

... og nameserveren vil forhåbentlig virke optimalt. For at bruge nameserveren skal vi have dens ip adresse stående i /etc/resolv.conf:

nameserver 192.168.1.1

Dette betyder at når vores maskine skal finde ud af IP adressen for et værtsnavn, så spørger vi nameserveren på 192.168.1.1 om IP'en. Dette betyder også at du kan få hjemmelavede værtsnavne for hele dit netværk. Du kan fx oprette dit eget lille intranet, hvor http://familien.jensen/ eksisterer.


Debianguiden er ikke tilknyttet Debian. Debian er et registreret varemærke ejet af Software in the Public Interest, Inc.
Debianguiden is not affiliated with Debian, Debian is a registered trademark owned by Software in the Public Interest, Inc.

Personlige værktøjer
Navnerum

Varianter
Handlinger
Navigation
Værktøjer