next up previous contents
Next: echo Up: Protokollbeschreibungen und Portlisten für Previous: discard   Contents

DNS - Domain Name Service

Domain Name Service oder auch Domain Name System genannt, hat nichts mit Microsoft Windows-Domänen zu tun! DNS ist ein verteiltes Datenbanksystem, in dem Rechnernamen und IP-Adressen gespeichert sind. Durch Anfrage eines DNS-Servers kann die richtige IP-Adresse für einen bestimmten Rechner (oder umgekehrt) in einem Netz ermittelt werden. Auch für den Versand von Mail ist das Domain Name System wichtig - es gibt nämlich Auskunft darüber, welcher Rechner einer Domain Mails entgegennimmt.

DNS-Server verwenden Port 53 sowohl mit TCP als auch mit UDP. Clients verwenden sowohl über TCP als auch über UDP beliebige Ports oberhalb von 1023. Einige Server verwenden Port 53, andere Ports oberhalb 10234. Normalerweise werden DNS-Lookups per UDP durchgeführt. Klappt das nicht, so wird die Anfrage per TCP wiederholt. Zonetransfers zwischen Servern erfolgen immer per TCP. Befindet sich ein DNS-Server in einer DMZ und ein anderer im lokalen Netz, so kann man den Verkehr auf TCP beschränken, falls beide Server 'DNS NOTIFY' unterstützen. Stellt ein Client eine Anfrage an den DNS-Server, so kümmert sich dieser üblicherweise selbst um die Auflösung der Namen - man nennt das 'Rekursiven Lookup'. Es könnte aber auch passieren5, dass der DNS-Server dem Client einen anderen DNS-Server nennt, bei dem er es versuchen soll. In einer Firewallumgebung ist das nicht erwünscht. Damit die Firewall DNS-Pakete nur zu bestimmten DNS-Servern zulassen muss, können DNS-Server auch so konfiguriert werden, dass Anfragen nur über vordefinierte Server erfolgen. DNS-Server arbeiten immer wie Proxies. NAT ist problemlos einsetzbar.

Ist der Zugriff auf einen eigenen DNS-Server aus dem Internet erforderlich (weil man selbst Serverdienste zur Verfügung stellt), so sollte man unbedingt einen sogenannten 'Fake DNS-Server' in der DMZ einrichten, der nur die wirklich benötigten Daten nach außen gibt. Im lokalen Netz wird dann ein eigener DNS-Server eingerichtet, der alle lokalen Daten uneingeschränkt verwaltet. Der DNS-Server auf dem Bastion-Host sollte keine 'HINFO'-Datensätze nach außen sichtbar machen. Es sollten keine Zonetransfers nach außen möglich sein.

Richtung Proto- Port
Status
Anmerkung
Client Server koll Quelle Ziel
 
         
 
>   UDP 1024: 53
NEW, ESTABLISHED
Client-Anfrage über UDP an DNS-Server
  < UDP 53 1024:
RELATED, ESTABLISHED
Serverantwort
>   TCP 1024: 53
NEW, ESTABLISHED
Client-Anfrage über TCP an DNS-Server
  < TCP 53 1024:
RELATED, ESTABLISHED
Serverantwort
>   UDP 53 53
NEW, ESTABLISHED
Anfrage über UDP von Server an Server
  < UDP 53 53
RELATED, ESTABLISHED
Antwort des Servers an Server
>   TCP 1024: 53
NEW, ESTABLISHED
Anfrage oder Zonetransfer zwischen 2 Servern
  < TCP 53 1024:
RELATED, ESTABLISHED
Antwort oder Zonetransfer zwischen Servern

Bei 'iptables' unter Linux habe ich festgestellt, dass Antworten von Servern mit UDP nicht immer der Anfrage zugeordnet werden können (Status 'RELATED') und verworfen werden, wenn nur Pakete mit dem Status 'RELATED' anstatt 'NEW' zugelassen werden. Ich habe das noch nicht genauer untersucht, es scheint aber trotzdem problemlos zu funktionieren, ohne neue Verbindungen von außen mit 'NEW' zuzulassen.


next up previous contents
Next: echo Up: Protokollbeschreibungen und Portlisten für Previous: discard   Contents
Ernst Pisch 2003-05-17