DNS

Najczęściej wykorzystywanym serwerem usługi DNS jest bind. Konfiguracja tego programu dzieli się na pliki opisujące opcja związane z działaniem samego serwera i wskazujące na obsługiwane strefy (/etc/bind/named.conf*) oraz pliki opisujące poszczególne strefy ich położenie wskazywane jest w ogólnej konfiguracji binda poprzez wpisy typu:

zone  "moja.domena" {
	type master;
	file  "/etc/bind/zone/moja.domena.ZONE";
	notify yes;
	allow-update { none; };
};

Natomisat same pliki stref są postaci:

$ORIGIN moja.domena.
$TTL 86400 

@                 IN      SOA     dns.moja.domena.  root.dns.moja.domena. (
                                  2005122902 ;; numer seryjny
                                  7200 ;; sprawdzanie czy zaszly zmiany
                                  7200 ;; ponowna proba kontaktu
                                  604800 ;; dane wygasna po
                                  86400 ;; serwery po drodze beda pamietac przez
                                  )

@                 IN      NS      dns

@                 IN      MX      15      mail

;; GLOWNE
@                 IN      A       XXX.XXX.XXX.XXX ;; UWAGA: dla @ nie można stosować CNAME gdyż mamy tam już zdefiniowane SOA, MX, NS
                                                  ;;  a CNAME wymaga bycia jedynym rekordem dla danej subdomeny
dns               IN      A       XXX.XXX.XXX.XXX ;; UWAGA: w myśl RFC 2181 tu nie może być CNAME bo na ten adres wskazuje NS
mail              IN      A       XXX.XXX.XXX.XXX ;; UWAGA: w myśl RFC 2181 tu nie może być CNAME bo na ten adres wskazuje MX

im                IN      CNAME   mail.moja.domena.
www               IN      CNAME   dns.moja.domena.
ipv6              IN      AAAA    YYY:YYYY:YYYY::YYYY

;; wpisy SRV dla usług
_xmpp-client._tcp    86400 IN SRV 0 0 5222 im
_xmpp-server._tcp    86400 IN SRV 0 0 5269 im
_sip._udp            86400 IN SRV 0 0 5060 im
_iax._udp            86400 IN SRV 0 0 4569 im

;; wpis dla www (niestety żadna przeglądarka tego nie obsługuje i trzeba dawać @ IN A :-(
_www._tcp            86400 IN SRV 0 0 80   www

;; wpis dla serwera pocztowego - obecnie w zasadzie nie potrzebny (jest MX) ale może kiedys
_smtp._tcp           86400 IN SRV 0 0 80   mail

;; wpisy SRV z "nioficjalnymi" nazwami potów, tak dla bezpieczeństwa (istotne mogą być tylko dla jabber)
_http._tcp           86400 IN SRV 0 0 80   www
_mail._tcp           86400 IN SRV 0 0 80   mail
_jabber-client._tcp  86400 IN SRV 0 0 5222 im
_jabber-server._tcp  86400 IN SRV 0 0 5269 im

;; odwrotny DNS dla IP przekierowanych przez CNAME na 23-ip.moja.domena.
;; w odpowiedniej strefie XX.YY.ZZ.in-addr.arpa (u naszego dostawcy) umieszczony musi być wpis
;;   23 IN CNAME 23-ip.moja.domena.
;; zamiast
;;   23-ip IN PTR mail.moja.domena.
23-ip             IN      PTR     mail

Wspomniane wpisy opcji serwera są następującej postaci:

options {
	directory "/var/cache/bind";
	
	auth-nxdomain no;    # conform to RFC1035
	listen-on-v6 { any; };
	
	listen-on { any; };
	allow-transfer { any; };
};

Warto zwrócić możliwość na wykorzystanie * oznaczającej dowolną nazwę hosta (np. *.moja.domena.pl oznacza wszystkie adresy postaci ciag_znakow_bez-kropki.moja.domena.pl), podobnie możemy uczynić z konfiguracją webserwera (serwer wirtualny z wpisem "ServerAlias *.moja.domena.pl" będzie obsługiwał wszystkie te odwołania (dalej możemy użyć mechanizmów różnicowania położenia katalogu głównego w zależności od tego co jest podane zamiast kropki).

Kolejną rzeczą o której warto wspomnieć jest konfiguracja DNS w bind9 dla IPv6. W /etc/bind/named.conf.options dodać należy listen-on-v6 { any; }; (wewnątrz options { ... }). Możemy także konfigurować domeny na adresach IPv6 poprzez dodanie w pliku naszej strefy wpisu z typem AAAA. Odwrotny DNS konfigurujemy podobnie jak dla IPv4 - poprzez utworzenie wpisu dla domeny {nasz prefix pisany od tyłu po każdej cyfrze szesnastkowej stawiamy kropkę}.ip6.arpawraz z wpisami dla hostów - tutaj w rekordach PTR piszemy jako nazwę domeny część odpowiedzialną za adres hosta, również od tyłu i z kropką po każdej cyfrze szesnastkowej.

Niekiedy mogą wystąpić problemy z zatrzymywaniem/restartowaniem binda, może to być spowodowane błędem w kluczy (lub haśle do niego) który autoryzuje komunikację binda i programu go nadzorującego. Należy wtedy przegenerować klucz (rndc-confgen -r /dev/urandom > /etc/bind/rndc.key) i dokonać stosowanych zmian w konfiguracji binda (hasło do klucza, ew. jego położenie).



Copyright (c) 1999-2015, Robert Paciorek (http://www.opcode.eu.org/), BSD/MIT-type license


Redystrybucja wersji źródłowych i wynikowych, po lub bez dokonywania modyfikacji JEST DOZWOLONA, pod warunkiem zachowania niniejszej informacji o prawach autorskich. Autor NIE ponosi JAKIEJKOLWIEK odpowiedzialności za skutki użytkowania tego dokumentu/programu oraz za wykorzystanie zawartych tu informacji.

This text/program is free document/software. Redistribution and use in source and binary forms, with or without modification, ARE PERMITTED provided save this copyright notice. This document/program is distributed WITHOUT any warranty, use at YOUR own risk.

Valid XHTML 1.1 Dokument ten (URL: http://www.opcode.eu.org/usage_and_config/network_services/dns) należy do serwisu OpCode. Autorem tej strony jest Robert Paciorek, wszelkie uwagi proszę kierować na adres e-mail serwisu: webmaster@opcode.eu.org.
Data ostatniej modyfikacji artykulu: '2015-09-12 19:33:16 (UTC)' (data ta może być zafałszowana niemerytorycznymi modyfikacjami artykułu).