If Linux is enabling AirPrint and is advertising the printer, iOS will see it. Otherwise, iOS needs add-on software to intermediate the printing...
If your target supports AirPrint, here’s the list that Aruba Networks is recommending:
https://community.arubanetworks.com/t5/Controller-Based-WLANs/What-are-the-port- based-recommendations-for-Airplay-and-Airprint/ta-p/184424
Which looks like mDNS, in conjunction with the typical and printer-specific printing services ports and protocols.
A chunk of the network traffic for Apple services including AirPrint is using ephemeral ports.
I’m using an add-on app to reach Brother printers, as the particular models I’m dealing with do not support AirPrint.
This makes it appear that TCP 631 and UDP 5353 might minimally be enough, though your target printer (CUPS or otherwise) will have to be configured to advertise itself via mDNS. From the client end, I’d expect to see ephemeral ports used.
https://wiki.debian.org/AirPrint
If you’re on a remote network via a VPN, you’re going to have to figure out how to pass along the mDNS traffic.
CUPS is (also) part of macOS. (I’ve not checked whether macOS by default or with manual configuration changes can advertise AirPrint for connected printers. All the local printers are network, so none of the boxes I’m currently dealing with should be advertising printers. Though it’d be handy to configure for relay, which would involve advertising. But I’ve not waded into that part of CUPS recently, nor have I encountered that configuration.)
If you’re really stuck, mirror a port on your switch and run a packet capture via WireShark or otherwise, and see what the traffic is trying to use. The firewall logs might also be useful for tracking the ports, if your segment is quiet enough not to drown that traffic.