1. Introduction

This program scans the network for Bonjour Print Services (AirPrint) that are being published. It collects details about these services and creates scripts which can be used to create DNS Records. These DNS records then allow the publishing of AirPrint services on networks which are subnetted or use VLAN’s. The whole process can be completed manually, but this tool makes it simpler and quicker, and also reduces some of the scope for error in the creation of records. The tool either works with printers that publish AirPrint information themselves, or with AirPrint proxies, such as Collobos FingerPrint.

The main tool which can capture data and convert it into scripts for creating DNS records.
The main tool which can capture data and convert it into scripts for creating DNS records.

Used for collecting DNS-SD data from a machine and exporting it to a text file.
Used for collecting DNS-SD data from a machine and exporting it to a text file.

2. Requirements

To use this tool you need: Install Bonjour Print Services for Windows (http://support.apple.com/kb/Dl999) Be connected to the subnet or VLAN with the devices that are publishing AirPrint services Have access to your DNS servers (for importing the records)#

3. Download

The current version is 1.2 and can be downloaded here:

Download “DNS SD Parser” DNS-SD-Parser.zip – Downloaded 1788 times – 44 KB

Version 1.2 (9th March 2017)
– Fixed issue where selecting a new DNS-SD Import File or re-collecting data causes an application crash
– Improved extraction of records from input files/capture to ensure all printers are detected
– Enabled the PowerShell Script function, with the caveat that any printer with a TXT record over 255 characters cannot be generated in this way.
– Fixed a bug where repeat Update of the DNS information would generate duplicate records in the export

Version 1.18 (18th May 2015)
– Fixes an issue where if the server hosting the printer has the letters SRV in it’s name, the tool will fail to import the records.

Version 1.0 (18th January 2015)
– Initial Release


This application is provided as-is to aid in the configuration of DNS records for AirPrint services. No liability will be taken for any consequences arising from its use.

4. Instructions

There are 2 ways of capturing the data. You can either use the Parser to obtain all the information and process it in one go. Alternatively, there is a capture application which allows you to run the capture on another machine, and then create the records on your own workstation.

Using the DNS-SD Parser Tool

1. Open the tool. Click on ‘Get Resource Records From This Machine’ button

2. Enter the location in your DNS structure that you want to create the DNS records under. You can just enter the root of your domain, which will publish the records to all devices. Alternatively you can specify a subdomain, which allows you to choose which devices will browse, allows segregation of airprint services. If the subdomain does not exist, then it will be created. This location needs to be set on the Apple device. See notes below.

3. Enter the name of your DNS Zone File. This is the name that you see in the DNS Console in the list of Forward Lookup Zones. Once you are happy, click ‘Update Records’

4. A list of all the printers that were found is shown on the left. You can choose which printers will have records created by unchecking or checking the Include box. Unless you are adding printers to an existing domain which is already set up, I recommend that you leave the DNS-SD Browse Records included.

5. If you want to change the name of any of the printers, then edit the Name column. This name is what will appear on the Apple device when they search for AirPrint printers.

6. For each printer, check that the Host Providing Service field is correct. By default it will say server.local. This will not resolve properly. You need to enter the FQDN of the server providing the AirPrint services. You can also use the IP address of the printer or print server.

7. If you wish, you can edit the Published Properties for the printer. This tells the Apple device what the capabilities of the selected printer are. I recommend that you leave these at the defaults unless you are confident.

8. When you have checked all of the settings, click ‘Save Create & Delete DNSCMD Scripts’. This will prompt you for a location, where two files will be saved. The first will run a script that will create all of the necessary records in DNS. The second, will reverse the action and remove all of the records that it creates. Using the

DNS-SD Capture Tool

1. Open the tool. Click on ‘Get Resource Records From This Machine’ button

2. When prompted, choose a filename and location.

3. Open the DNS-SD Parser tool. Choose the ‘Open DNS-SD Export File’ option and locate the file above.

4. Continue from Step 2 of the instructions above

Publishing AirPrint Printers to Apple Devices

Once this is set up, the Apple devices need one option configuring on them before they will find these published printers. This is the Search Domain.

You can either set the search domain manually, or you can set it up as a DHCP option. It is DHCP option 135. On Windows this is not a default option and will need to be created.

Information & Credits

Further information on configuring AirPrint using DNS can be found on my site at https://www.craig-tolley.co.uk

The full Bonjour protocol specification can be found here: https://developer.apple.com/bonjour/printing-specification/bonjourprinting-1.0.2.pdf

With thanks to Mark James for the Silk Icon Set – http://www.famfamfam.com

9 people found this post useful.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.