You can edit almost every page by Creating an account. Otherwise, see the FAQ.

pdnsd

Aus EverybodyWiki Bios & Wiki
Wechseln zu:Navigation, Suche

pdnsd

[[Datei:Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)|150px]]
Basisdaten

Maintainer Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)
Entwickler Thomas Moestl, Paul Rombouts
Erscheinungsjahr Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)
Aktuelle Version 1.2.9a-par
(17. März 2012)
Betriebssystem Linux, Unixartige, Cygwin, Mac OS X
Programmiersprache Lua-Fehler in Modul:Wikidata, Zeile 639: attempt to index field 'wikibase' (a nil value)
Kategorie DNS-Proxy-Server
Lizenz GNU General Public License
deutschsprachig nein
members.home.nl/p.a.rombouts/pdnsd/

pdnsd ist ein Open-Source-Programmpaket für die Namensauflösung im Domain Name System. Sein Name wurde von Thomas Moestl, dem ursprünglichen Entwickler, gewählt. Pdsnd ist ein schlankes Programm, das nur etwa 0,8 Megabyte Arbeitsspeicher (RAM) belegt.

Neben dem Server (pdnsd) umfasst das Programmpaket ein Programm zur Konfiguration (pdnsd-ctl) und eine vollständige Dokumentation. Pdnsd ist hauptsächlich ein DNS Proxy-Server mit Langzeit-Cache-Funktion, da sein Cache auf nichtflüchtige Speicher geschrieben wird (z.B. die Festplatte). Anfänglich wurde er bis 2002 von Thomas Moestl entwickelt und wird seit 2003 bis heute hauptsächlich von Paul Rombouts aktiv betreut. Der Server gilt als voll DNS-RFC kompatibel[1].

Funktionsweise[Bearbeiten]

Nameserver[Bearbeiten]

Nameserver sind Server zur Namensauflösung. Als Nameserver arbeitet pdnsd, indem er zuerst Anfragen über Domainnamen beantwortet, die in seinem eigenen Daten-Cache vorhanden sind. Auf diese Weise beschleunigt pdnsd die Anfragen über FQDN des PCs oder eines Mobilgeräts wie Laptops oder embedded Geräten wie Router.

Resolver[Bearbeiten]

Als Software, vermitteln Resolver zwischen Anwendungen und Nameservern. Ein Resolver erhält die DNS-Anfrage einer Anwendungssoftware und ruft sie von Nameservern als FQDN von bestimmten Nameserver ab, hat er die gewünschte Information nicht in der eigenen Cache-Datei.

Pdnsd ist auch ein DNS-Resolver (von engl. to resolve = auflösen). Als DNS-Resolver löst er Anfragen über FQDN (fully qualified domain names) auf, indem er den entsprechenden Domain von der root-Zone (.) aus zurückverfolgt. Dazu werden DNS-Anfragen von Anwendungssoftware, die nicht aus der eigenen Cache-Datei beantwortbar sind, an externe DNS-Name-Server weitergeleitet. Es können in der Konfigurationsdatei von pdnsd externe DNS-Server nach eigener Wahl festgelegt werden, beispielsweise zensurfreie DNS-Server wie etwa der Swiss Privacy Foundation[2] (:)

server { label="SwissPrivacyFoundation";  
ip="62.141.58.13";  
port=110;  }

oder alternative Root-Nameserver:

server { label="alt-root-servers";  
root_server=on;
  ip =   "216.87.84.214"  // .oss .parody
  ,      "66.244.95.11"   // .gopher
  ,      "202.83.95.229"  // .free, .geek, .indy, .null
port=110;  }

Positiv erhaltene Rückantworten werden der jeweiligen Anwendungssoftware beantwortet und in den internen Langzeit-Cache, meist auf der Festplatte des Computer-Systems, geschrieben. Pdnsd erlaubt die gleichzeitige Abfrage mehrerer externen DNS-Server, damit spät antwortende oder unerreichbare DNS-Server die Namensauflösung nicht verlangsamen.

Cache[Bearbeiten]

Pdnsd ist ein DNS-Cache (von engl. to cache = zwischenspeichern, puffern). Als DNS-Puffer-Speicher (Cache) schreibt pdnsd die aufgelösten FQDN-Anfragen in einen Datenspeicher (Cache), üblicherweise die System-Festplatte. Wird die voreingestellte Cache-Größe überschritten, werden älteste Puffer-Einträge verworfen, was auch mit Domainnamen-Einträgen passiert, deren Time to Live (TTL) abgelaufen ist. Pdnsd pflegt einen negativen Cache, der fehlgeschlagene Abfragen listet (negative caching).

Konfigurationsdatei (pdnsd.conf)[Bearbeiten]

Pdnsd kann mit Hilfe eines Texteditors und der Konfigurationsdatei pdnsd.conf eingestellt werden. Dazu muß der Server gestoppt und nach Einstellungsänderung neu gestartet werden. Mittels der Software pdns-ctl (pdnsd-control), die im pdnsd-Software-Packet enthalten ist, kann pdnsd aber auch zur Laufzeit konfiguriert werden. Alle Informationen zur Konfigurationsdatei sind von der Projektseite abrufbar[2].

Die Konfigurationsdatei ist in verschiedene Abschnitte unterteilt:

eine global {} Section - generelles Verhalten des pdnsd-Servers
global { 
    perm_cache=2048; 
    cache_dir="/var/cache/pdnsd"; 
    run_as="pdnsd"; 
    status_ctl=on; 
    paranoid=on; 
    randomize_recs=on; 
    run_ipv4=off;  // on for IPv4 Support only 
            // off for IPv6 DNS Server IPs  
    query_method=tcp_only; 
    tcp_qtimeout=60;  // timeout for tcp dns queries. 20 seconds 
    timeout=65;  // Global timeout option (21 seconds). 
    min_ttl=900;  // Retain cached entries at least 15 minutes. 
    max_ttl=604800;  // One week. 
    server_ip ="127.0.0.1";  // Use eth0 here if you want to allow other 
              // machines on your network to query pdnsd. } 
mehrere server {} Sectionen - Parallele Abfrage definierter DNS-Server nach Rang
(siehe oben)
mehrere rr {} Sectionen - Definition von lokal bedienten Resource Records, z.B. 1.0.0.127.in-addr.arpa. und localhost. etc..
rr { name=localhost; 
    reverse=on; 
    a=127.0.0.1; 
    owner=localhost; 
    soa=localhost,root.localhost,42,86400,900,86400,86400; } 
mehrere neg {} Sectionen - Blockierung von Resource Records
neg { name=bad.server.com;  // Badly behaved server you don't want to connect to. 
    types=A,AAAA; } 
mehrere source {} Sectionen - Einlesen von Resource Records aus Dateien
source { 
    ttl=86400; 
    owner=localhost; 
    serve_aliases=on; 
    file="/etc/hosts"; } 
eine include {} Section - Zugriff auf andere Konfigurationsdateien

Lizenz[Bearbeiten]

Pdnsd ist unter der GNU General Public License (GPL) lizenziert.

Quellen[Bearbeiten]

  1. RFCs:1034,1035,2181 [1]
  2. pdnsd Documentation (engl.)

Siehe auch[Bearbeiten]

Weblinks[Bearbeiten]


Diese artikel "Pdnsd" ist von Wikipedia The list of its authors can be seen in its historical.



Read or create/edit this page in another language[Bearbeiten]