CUPS is sending a Host: header for IPv6 link local address without the proper encoding. A URI of the form:
scheme://[v1.fe80::aaaa:bbbb:cccc:dddd+zoneid]:port/resource
should result in a Host: header of the form:
Host: [v1.fe80::aaaa:bbbb:cccc:dddd+zoneid]:port
Instead CUPS is sending:
Host: [fe80::aaaa:bbbb:cccc:dddd%zoneid]:port