On vous a probablement dit qu'imprimer depuis un iPhone via un VPN exige que la découverte Bonjour traverse le tunnel. Cette croyance pousse les gens vers des ponts TAP et des relais multicast qui ne corrigent rien. AirPrint accepte une destination explicite : un profil de configuration peut fournir au téléphone l'adresse, le chemin de ressource et le port d'une imprimante. La découverte n'a jamais besoin d'avoir lieu pour que cette entrée apparaisse dans la feuille d'impression. Ce que la charge ne fait pas, c'est créer la route, faire parler IPP à une imprimante non AirPrint ou autoriser le travail.

Le mythe commence par une observation vraie

Bonjour est du multicast de lien local par conception. Un tunnel routé point à point ne transporte pas ces groupes, donc un téléphone sur un VPN ne peut pas parcourir les imprimantes du LAN distant, et un ordinateur portable sur le même tunnel non plus. La bonne conclusion n'est pas que l'impression a besoin d'un pont ; elle est que le parcours a besoin d'un autre mécanisme de livraison, et une liste explicite est ce mécanisme.

Les relais multicast existent et certains réseaux les exploitent bien, mais ils répondent à un besoin de découverte que vous n'avez peut-être pas. Si le déploiement ne doit imprimer que sur un appareil approuvé, publier cet appareil est plus petit, testable et bien plus facile à retirer que d'étendre un domaine de diffusion à travers un tunnel.

Ce que la charge contient réellement

La charge com.apple.airprint contient un tableau de dictionnaires d'imprimante. Chaque dictionnaire prend une IPAddress, qui peut être une adresse littérale ou un nom d'hôte, un ResourcePath, un Port facultatif et un ForceTLS facultatif. Apple documente Port et ForceTLS depuis iOS 11, donc un parc mixte doit avoir clarifié cela avant le déploiement.

Le chemin est le champ que les gens devinent. ResourcePath reflète la valeur rp de l'enregistrement Bonjour de l'imprimante _ipps._tcp ou _ipp._tcp. Il est souvent ipp/print sur les imprimantes modernes sans pilote et souvent spécifique au fabricant sur les plus anciennes. Copier un chemin depuis un autre modèle produit une file qui apparaît puis refuse chaque travail.

Un élément du tableau ressemble à ceci, avec des valeurs de remplacement qui ne sont pas un point de terminaison testé :

<dict>
    <key>ResourcePath</key>
    <string>ipp/print</string>
    <key>IPAddress</key>
    <string>printer-07.office.example</string>
    <key>Port</key>
    <integer>8631</integer>
    <key>ForceTLS</key>
    <true/>
</dict>

Ce fragment n'est pas un profil. C'est un élément du tableau AirPrint à l'intérieur d'une charge, et la charge a encore besoin de ses propres métadonnées ainsi que d'une signature ou d'une livraison MDM. Le dictionnaire d'imprimante AirPrint est la référence pour la signification des champs.

Recueillez les valeurs auprès de l'imprimante, pas d'un résultat de recherche

Sur un Mac qui imprime déjà vers l'appareil, ippfind ou dns-sd -B _ipp._tcp affiche l'instance annoncée, et l'interface web de l'imprimante liste généralement le chemin IPP et le port. Notez les quatre valeurs dans la note de déploiement pour que la personne suivante n'ait pas à les redéduire d'une capture d'écran.

Décidez ensuite de TLS délibérément. Avec ForceTLS à vrai, le téléphone doit faire confiance au certificat que présente l'imprimante, et un certificat auto-signé échoue sauf si vous déployez aussi l'ancre de confiance. Désactiver TLS pour faire fonctionner une file est une décision sur le chemin réseau, pas un contournement pour un certificat gênant.

Livraison, puis deux échecs opposés

Livrez la charge par votre canal de gestion des appareils là où il existe, et traitez un profil installé manuellement sur un téléphone professionnel comme l'exception qu'il est. Une fois installé, l'imprimante devrait apparaître dans la feuille d'impression sans aucun trafic de découverte. Cette apparition est la seule chose que la charge était censée garantir.

Une imprimante qui apparaît mais échoue à chaque travail a un problème de route, de port, de chemin ou de TLS, et aucun d'eux n'est réglé par la charge.

Une imprimante qui n'apparaît jamais a plutôt un problème de livraison ou de charge : le profil ne s'est pas installé, le tableau est mal formé ou une valeur ne correspond pas à l'appareil. Relisez les valeurs et l'appareil cible avant de toucher au VPN. Ajouter un relais de découverte pour corriger un problème de liste est une erreur coûteuse, car la liste n'a jamais dépendu de la découverte.

Gardez l'entrée maintenable

Préférez un nom d'hôte à une adresse littérale là où vous contrôlez la zone, afin qu'un changement d'adresse n'invalide pas chaque profil installé. Ce nom d'hôte doit se résoudre depuis le téléphone tant que le tunnel est actif, ce qui le renvoie à la conversation sur le DNS scindé plutôt qu'à celle sur l'impression.

Inscrivez le propriétaire de l'imprimante et le propriétaire du profil dans le registre de déploiement. Lorsque la file se déplace, mettez à jour la destination publiée à dessein, car une ancienne entrée n'expire pas d'elle-même et continue de diriger les utilisateurs vers un appareil retiré.

Rien de tout cela ne rend une imprimante compatible AirPrint. La charge publie une destination, et l'appareil doit encore parler IPP.

Articles similaires