Después de mirar cuidadosamente el DNSCache y la Red:
Más detalles en dns-sd.org, sin embargo, para que todo funcione correctamente, se necesitan cuatro registros DNS para cada impresora en el lado del cliente en caso de huella aérea / huella aérea segura:
-
registro PTR de tipo _universal._sub._ipp / ipps._tcp (llamémoslo universal): solo es necesario si la impresora es compatible con Airprint (consulte dns-sd.org)
-
registro PTR de tipo _ipp / ipps._tcp (llamémoslo ipps)
-
registro SRV
-
registro TXT
El registro SRV informa sobre los datos relacionados con el servicio (servidor / puerto, etc.) y el registro TXT informa sobre las capacidades de la impresora.
En Mac, los registros "ipps" y "universales" se consultan mediante diferentes procesos (printtool y PKBrowserServic, respectivamente). De la observación: las consultas de registros "universales" de PKBrowserServic son más frecuentes que las consultas de registros "ipps" de printtool. Entonces, en un escenario: tiene registros universales pero no ipps, no identificará el controlador.
Para responder a la pregunta original: cuando se selecciona una impresora, solicita el registro SRV y TXT (basado en registros universales o ipps que ya están en caché, así es como vemos la impresora en la lista). Si la impresora / servidor de impresión no está disponible o si falta el registro de ipps, mac no podrá hacer una "Selección automática" para el controlador.
Este problema puede solucionarse en multidifusión mediante una auto consulta tanto universal como ipps antes de que el TTL de los registros caduque para que se actualicen las cachés de todos los clientes mac.
En el caso de unidifusión, mac tiene un alto TTL de registros universales / ipps, por lo que puede llevar algún tiempo actualizar el registro de ipps en la memoria caché en una red nueva, pero en pocos minutos (máximo 10 minutos desde la observación), tiene tanto ipps como universales y el problema ya no existe.
Otra forma de manejarlo rápidamente es borrar el caché (sierra: killall -HUP mDNSResponder)