iOS 9+ Printing with IPv4 and IPv6 mixed networks
Please note that this information pertains to an older PaperCut BYOD printing solution called iOS Print which will only work on macOS PaperCut servers. However we recommend a newer solution called Mobility Print which is much more versatile and robust. It also can be installed on any type of PaperCut server and enable BYOD printing for a broader variety of devices.
What changed in iOS9?
iOS9 shifted the way iOS devices have traditionally talked on a network by using IPv6 communication:
→Lots of hexadecimal numbers with colons in-between fe80::xxxx:xxxx:xxxx:b71d
if available before it uses IPv4 communication:
→The pattern of 4 of decimal numbers we have come to know 10.xxx.xxx.xxx
This includes IPv6 Link Local addresses if it possibly can, provided the infrastructure can support them.
So how does this affect PaperCut?
PaperCut uses one of the few constant things known about an iOS device, its IP address, to link jobs to users.
On an iOS 9 or above device, printed jobs present from the IPv6 address. However, when logging on to the PaperCut app, the address presented is an IPv4 one, and we do not make the connection.
In many existing set-ups, this might not be a problem, as IPv6 might not be supported or the device might be iOS 8 or older, so you will only ever see an IPv4 address.
However, if after upgrading to iOS9 or higher, you find that users report their jobs not showing up in the print queues to be released, you may find that iOS has found a way to use IPv6 on the network.
How do I get my devices printing again?
In most networks, we have found that turning off IPv6 will work around the issue, and restore the ability to print.
This is a relatively simple process that you have to do only on the interface the Mac uses to talk to the iOS devices. In the majority installations, this is the Ethernet adapter on the Mac mini.
To disable IPv6 on the Ethernet port:
There is no GUI option to disable IPv6, it must be done from a terminal session.
- Launch Terminal
- Type the following command:
networksetup -setv6off Ethernet
- (or for the WiFi interface:
networksetup -setv6off wi-fi)
- Note that if the network interface has a space in the name, you’ll have to escape it - for example if the interface is called ‘VLAN 1’:
networksetup -setv6off VLAN\ 1
- Go to the system settings and verify the command has worked, you should be able to see an extra menu item called off with a tick against it.
“I still can not print” or “I need IPv6 on for my network”
If you cannot disable IPv6 for any reason, support might have alternative workarounds that should allow iOS9 devices to print in your environment,. Please contact us for more information.
Keywords: iOS9, iOS 9, iPhone printing, iOS printing, enterprise iPad printing, printing app, iPad school deployment