He configurado un servidor DNS en SLES10 (actualmente bind 9.6) en un servidor multi-homed. Este servidor se puede consultar desde todas las redes internas y ofrece respuestas para todas las redes internas. Tenemos dos zonas DNS "maestras" separadas. Cada una de estas zonas está siendo servida por varios servidores autorizados de DNS de Windows.
Ahora mi servidor Linux es un servidor DNS secundario para una de estas zonas (zona interna privada) y actúa como reenviador para la otra zona (zona interna pública).
Hasta hace poco, esta configuración funcionaba sin problemas. Ahora recibo, al consultar la zona interna pública (por ejemplo, mediante el host
comando en un cliente de Linux), el mensaje de error
;; Truncado, reintentando en modo TCP
un vaciado de wirehark reveló la causa de esto: la primera consulta sale en modo UDP, la respuesta no encaja en UDP (debido a la larga lista de NS autoritativo), luego se vuelve a intentar en modo TCP, entregando la respuesta correcta.
Ahora la pregunta: ¿puedo configurar mi enlace para consultar los reenviadores en modo TCP sin intentar UDP primero?
Actualización: Probar mi mano en ASCII-art ...
+--------------+ +--------------+ +-----------------+
| W2K8R2 DNS | | SLES 10 DNS | | W2K8R2 DNS |
| Zone private +---+ All internal +---+ Zone public |
| internal 2x | | Zones | | internal 30+ x |
+--------------+ +-+----------+-+ +-----------------+
| |
+--+---+ +--+---+
|Client| |Client|
+------+ +------+
host
comando y qué consulta se está enviando.
minimal-responses: yes
a la configuración BIND en SLES 10, ya que puede reducir los tamaños de respuesta. En cualquier caso, la mayoría de las consultas normales no excederán el límite de 512 bytes.