Не се нуждаете от Bonjour откриване, за да печатате през VPN
Профилът AirPrint именува принтера по адрес, път и порт, така че откриването не е нужно да преминава през тунела. Маршрутът, този порт и TLS все още трябва да работят.
Вероятно са ви казвали, че за печат от iPhone през VPN е необходимо откриването на Bonjour да преминава през тунела. Това убеждение тласка хората към TAP мостове и multicast ретранслатори, които не поправят нищо. AirPrint приема изрична дестинация: профил за конфигурация може да даде на телефона адреса на принтера, пътя до ресурса и порта. Откриването изобщо не трябва да се случва, за да се появи този запис в листа за печат. Това, което профилът не прави, е да създаде маршрута, да накара принтер без AirPrint да говори IPP или да разреши задачата.
Митът започва с вярно наблюдение
Bonjour е link-local multicast по замисъл. Маршрутизиран тунел точка-точка не пренася тези групи, затова телефон във VPN не може да разглежда принтери в отдалечената LAN и лаптоп в същия тунел също не може. Правилният извод не е, че печатът се нуждае от мост; а че разглеждането се нуждае от различен механизъм за доставяне, и явен списък е този механизъм.
Multicast ретранслатори съществуват и някои мрежи ги управляват добре, но те решават изискване за откриване, което може да нямате. Ако внедряването трябва да печата само на едно одобрено устройство, публикуването на това устройство е по-малко, тестваемо и много по-лесно за оттегляне от разширяването на broadcast домейн през тунел.
Какво всъщност съдържа профилът
Профилът com.apple.airprint съдържа масив от речници на принтери. Всеки речник приема IPAddress, който може да е буквален адрес или име на хост, ResourcePath, незадължителен Port и незадължителен ForceTLS. Apple документира Port и ForceTLS от iOS 11 нататък, така че смесен парк трябва да изясни това преди внедряването.
Пътят е полето, което хората отгатват. ResourcePath отразява стойността rp в Bonjour записа на принтера _ipps._tcp или _ipp._tcp. Често това е ipp/print при съвременните принтери без драйвери и често е специфично за производителя при по-старите. Копирането на път от различен модел създава опашка, която се появява и след това отказва всяка задача.
Един елемент от масива изглежда така, със заместващи стойности, които не са тествана крайна точка:
<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>
Този фрагмент не е профил. Той е един елемент от масива AirPrint вътре в профил и профилът все още се нуждае от собствени метаданни плюс подписване или доставка чрез MDM. Речникът на принтера AirPrint е справката за значенията на полетата.
Съберете стойностите от принтера, а не от резултат от търсене
На Mac, който вече печата на устройството, ippfind или dns-sd -B _ipp._tcp показва обявения екземпляр, а уеб интерфейсът на принтера обикновено изброява IPP пътя и порта. Запишете и четирите стойности в бележката за внедряване, за да не ги извежда следващият човек отново от екранна снимка.
След това решете съзнателно за TLS. С ForceTLS вярно телефонът трябва да се довери на сертификата, който принтерът представя, а самоподписаният сертификат се проваля, освен ако не внедрите и котвата на доверие. Изключването на TLS, за да проработи опашка, е решение за мрежовия път, а не заобиколен път за неудобен сертификат.
Доставка, после два противоположни отказа
Доставете профила през вашия канал за управление на устройства, където има такъв, и третирайте ръчно инсталиран профил на служебен телефон като изключението, което е. След инсталирането принтерът трябва да се появи в листа за печат без никакъв трафик на откриване. Тази поява е единственото, което профилът някога е трябвало да гарантира.
Принтер, който се появява, но отказва всяка задача, има проблем с маршрута, порта, пътя или TLS и нито един от тях не се решава от профила.
Принтер, който никога не се появява, има вместо това проблем с доставката или профила: профилът не се е инсталирал, масивът е неправилен или стойност не съвпада с устройството. Прочетете отново стойностите и целевото устройство, преди да пипате VPN. Добавянето на ретранслатор за откриване, за да се поправи проблем със списъка, е скъпа грешка, защото списъкът никога не е зависел от откриване.
Поддържайте записа лесен за поддръжка
Предпочитайте име на хост пред буквален адрес там, където контролирате зоната, така че промяна на адреса да не обезсилва всеки инсталиран профил. Това име на хост трябва да се резолвва от телефона, докато тунелът е активен, което го връща в разговора за split-DNS, а не в разговора за печат.
Запишете собственика на принтера и собственика на профила в записа за внедряване. Когато опашката се мести, актуализирайте публикуваната дестинация нарочно, защото старият запис не изтича сам и продължава да насочва потребителите към изведено от употреба устройство.
Нищо от това не прави принтера способен на AirPrint. Профилът публикува дестинация, а устройството все още трябва да говори IPP.