Ich habe einen DNS-Server auf SLES10 (derzeit Bindung 9.6) auf einem Multi-Homed-Server eingerichtet. Dieser Server kann von allen internen Netzwerken abgefragt werden und liefert Antworten für alle internen Netzwerke. Wir haben zwei separate DNS "Master" -Zonen. Jede dieser Zonen wird von einer Reihe autorisierender Windows-DNS-Server bedient.
Jetzt ist mein Linux-Server ein sekundärer DNS-Server für eine dieser Zonen (private interne Zone) und fungiert als Weiterleitung für die andere Zone (öffentliche interne Zone).
Bis vor kurzem funktionierte dieses Setup ohne Probleme. Jetzt erhalte ich - beim Abfragen der öffentlichen internen Zone (zB durch den host
Befehl auf einem Linux-Client) die Fehlermeldung
;; Abgeschnitten, erneuter Versuch im TCP-Modus
Ein Wireshark-Dump hat die Ursache dafür aufgedeckt: Die erste Abfrage wird im UDP-Modus ausgeführt, die Antwort passt nicht in UDP (aufgrund der längeren Liste autorisierender NS), dann wird sie im TCP-Modus wiederholt und liefert die richtige Antwort.
Nun die Frage: Kann ich meine Bindung so konfigurieren, dass die Weiterleitungen im TCP-Modus abgefragt werden, ohne zuerst UDP zu versuchen?
Update: Ich versuche mich an ASCII-Kunst ...
+--------------+ +--------------+ +-----------------+
| W2K8R2 DNS | | SLES 10 DNS | | W2K8R2 DNS |
| Zone private +---+ All internal +---+ Zone public |
| internal 2x | | Zones | | internal 30+ x |
+--------------+ +-+----------+-+ +-----------------+
| |
+--+---+ +--+---+
|Client| |Client|
+------+ +------+
host
Befehl ausführen und welche Abfrage gesendet wird.
minimal-responses: yes
der BIND-Konfiguration auf SLES 10 hinzufügen - dies kann die Antwortgröße verringern. In jedem Fall überschreiten die meisten normalen Abfragen nicht das 512-Byte-Limit.