DNS verwendet hauptsächlich zwei Hauptprotokolle:
1. UDP (User Datagram Protocol): UDP ist ein verbindungsloses Protokoll, das häufig für DNS-Anfragen und -Antworten verwendet wird. Es ist im Vergleich zu TCP ein schnelleres Protokoll und eignet sich für kurze, einfache Datenaustausche wie DNS-Anfragen und -Antworten. Wenn ein Client (Resolver) einen Hostnamen auflösen muss, sendet er eine UDP-Anfrage an einen DNS-Server, die den aufzulösenden Hostnamen enthält. Der DNS-Server antwortet dann mit der entsprechenden IP-Adresse, wenn er über den Eintrag verfügt. Wenn der DNS-Server nicht über den Eintrag verfügt, stellt er möglicherweise Verweisinformationen bereit, die dem Client dabei helfen, den richtigen Server zu finden, der über diesen Eintrag verfügt.
2. TCP (Transmission Control Protocol): TCP ist ein zuverlässiges, verbindungsorientiertes Protokoll, das heißt, es stellt vor der Datenübertragung eine virtuelle Verbindung zwischen dem Client und dem Server her. Im Gegensatz zu UDP garantiert TCP die Zustellung und bietet Mechanismen zur Fehlererkennung und Neuübertragung. TCP wird in DNS hauptsächlich für Zonenübertragungen verwendet. Dabei handelt es sich um den Prozess der Übertragung von Zonendaten zwischen DNS-Servern bei Änderungen oder für die Erstsynchronisierung. Bei Zonenübertragungen fallen im Vergleich zu regulären Abfragen und Antworten größere Datenmengen an, wodurch TCP aufgrund seiner Zuverlässigkeitsmechanismen besser geeignet ist.
Zusammenfassend ist UDP das primäre Protokoll, das für reguläre DNS-Anfragen und -Antworten verwendet wird, während TCP speziell für Zonenübertragungen verwendet wird.