Lorsqu’on administre des systèmes Apple en entreprise, il est souvent nécessaire de faire passer Bonjour à travers différents VLAN et donc différents routeurs. Or Bonjour n’est pas fait pour cela, il utilise une adresse mutilcast qui en temps normal reste sur le LAN de la machine d’origine.
Cependant, il peut être utile d’autoriser certaines annonces de service à passer à travers toute notre infrastructure, les annonces de service en provenance des serveurs de l’entreprise par exemple.
Pour autant, les administrateurs réseau aiment éviter, autant que possible, de diffuser des éléments en multicast sur leur infrastructure, d’autant que Bonjour n’est pas en odeur de sainteté auprès de ces équipes.
De fait, il est intéressant d’utiliser Bonjour Wide Area que j’ai déjà présenté par le passé. Lorsque vient le moment de saisir les informations d’une zone WAB, un problème se pose, le besoin d’accéder aux informations nécessaires.
Jusqu’à présent, le seul outil permettant de faire cela proprement est un outil en ligne de commande fournie par Apple, dns-sd.
yoanngini@macpro ~ 21:46 % dns-sd -Z _http._tcp local
Browsing for _http._tcp.local
DATE: ---Wed 31 Jul 2013---
21:49:17.707 ...STARTING...
; To direct clients to browse a different domain, substitute that domain in place of '@'
lb._dns-sd._udp PTR @
; In the list of services below, the SRV records will typically reference dot-local Multicast DNS names.
; When transferring this zone file data to your unicast DNS server, you'll need to replace those dot-local
; names with the correct fully-qualified (unicast) domain name of the target host offering the service.
_http._tcp PTR Jenkins._http._tcp
Jenkins._http._tcp SRV 0 0 8080 office-inig-services-com.local. ; Replace with unicast FQDN of target host
Jenkins._http._tcp TXT "server-id=ca0401eb22589429039ca905ee96b6ec" "path=/" "slave-port=49366" "url=http://office.inig-services.com:8080/" "version=1.490"
_http._tcp PTR EPSON9966AD\032(Epson\032Stylus\032Photo\032PX820FWD)._http._tcp
EPSON9966AD\032(Epson\032Stylus\032Photo\032PX820FWD)._http._tcp SRV 0 0 80 EPSON9966AD.local. ; Replace with unicast FQDN of target host
EPSON9966AD\032(Epson\032Stylus\032Photo\032PX820FWD)._http._tcp TXT ""
_http._tcp PTR Officejet\0326700\032[0A30C1]._http._tcp
Officejet\0326700\032[0A30C1]._http._tcp SRV 0 0 80 HP0A30C1.local. ; Replace with unicast FQDN of target host
Officejet\0326700\032[0A30C1]._http._tcp TXT ""
Le seul défaut de cet outil au-delà d’être en ligne de commande, c’est qu’il recherche par type de service et non par serveur. Or, dans la plupart des cas vous chercherez à sortir le fichier de zone pour tous les services d’un serveur en particulier.
Face à ce constant, je publie aujourd’hui une nouvelle application, Bonjour Dumper, permettant d’explorer le réseau local, en classant les résultats par serveur ou par service, pour exporter les données nécessaires à l’écriture d’une zone WAB.
Cette application est disponible sur iPhone, iPad et Mac, via les App Store respectifs.
Bonjour Dumper sur le Mac App Store.
Bonjour Dumper sur l’App Store pour iOS.