attachment
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Aptos;
panose-1:2 11 0 4 2 2 2 2 2 4;}
@font-face
{font-family:"Malgun Gothic";
panose-1:2 11 5 3 2 0 0 2 0 4;}
@font-face
{font-family:"Apple Color Emoji";
panose-1:0 0 0 0 0 0 0 0 0 0;}
@font-face
{font-family:"Segoe UI";
panose-1:2 11 5 2 4 2 4 2 2 3;}
@font-face
{font-family:"\@Malgun Gothic";}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:12.0pt;
font-family:"Aptos",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
span.EmailStyle18
{mso-style-type:personal-reply;
font-family:"Aptos",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;
mso-ligatures:none;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style>
</head>
<body lang="EN-US" link="blue" vlink="purple" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt">Thanks Mike,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">I'll have to spend some time processing the "v1." prefix link you sent, so maybe will comprehend that later.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">However, for the 2<sup>nd</sup> issue:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><i><span style="color:#0F9ED5">The reason for having the scope in the URI is to allow a Client to access Printer resources. For example, if a Printer is accessible at link-local address fe80::1234 and the Client has two network interfaces
(en0 and wlan0), a Printer URI of "ipp://[fe80::1234]/ipp/print" is insufficient to communicate with the Printer from the Client. Similarly, the "printer-more-info" and "printer-supply-info-uri" attributes are commonly used to access the Printer's embedded
web interface and entering <a href="http://[fe80::1234]/supplies"><span style="color:#0F9ED5">http://[fe80::1234]/supplies</span></a> (for example) won't work because the web browser can't determine which interface will work. And the "printer-icons" and "printer-strings-uri"
attributes (pointing to printer icon and strings file resources on the Printer) won't have the necessary network interface association that would allow a Client to access those resources.<o:p></o:p></span></i></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Is it not true, that interfaces en0 and wlan0 will have different link local addresses (based on different MAC addresses)? In that case, if the printer is queried from interface en0, then the URI's it returns
should be based on the en0 link local address from the request. So the URI's in the responses should be different and a scope should not be needed (by the printer at least). I guess the issue may be that the same hostname is used for both interfaces?
<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Of course, I guess there is no requirement for separate interfaces to use separate hostnames, but even so, a printer is going to respond to the address the request comes from, why should the printer care if
a request came from en0 (fe80::1234) or wlan0 (fe80::5678)? It should just send request responses to the IPv6 address the request came from, and it should be up to the client to decide on what interface to send the request... If the client needs to make
a series of requests (ie - Create-Job/Send-Document), the onus should be on the client to use the same interface. Even the HTTP request/response, while stateless, still uses a TCP connection to ensure sender and receiver are the same...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Of course, I'm by no means an expert on IPv6 addressing and interfaces, not sure how or if two interfaces could share the same IPv6 address.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Chris<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<div>
<div>
<div>
<p class="MsoNormal" style="vertical-align:baseline"><b><span style="font-size:10.0pt;font-family:"Arial",sans-serif">Christopher Rizzo</span></b><span style="font-size:9.0pt;font-family:"Segoe UI",sans-serif"><o:p></o:p></span></p>
<p class="MsoNormal" style="vertical-align:baseline"><b><span style="font-size:10.0pt;font-family:"Arial",sans-serif">Engineer II, Software Engineering<o:p></o:p></span></b></p>
<p class="MsoNormal" style="vertical-align:baseline"><b><span style="font-size:10.0pt;font-family:"Arial",sans-serif">Design & Development Engineering<o:p></o:p></span></b></p>
<p class="MsoNormal" style="vertical-align:baseline"><b><span style="font-size:10.0pt;font-family:"Arial",sans-serif"><o:p> </o:p></span></b></p>
<p class="MsoNormal" style="vertical-align:baseline"><a href="http://www.xerox.com/"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:windowtext;text-decoration:none"><img border="0" width="133" height="27" style="width:1.3854in;height:.2812in" id="Picture_x0020_6" src="cid:image001.png@01DC4DAD.D1C9DA60" alt="signature_1210663338"></span></a><span style="font-size:9.0pt;font-family:"Segoe UI",sans-serif"><o:p></o:p></span></p>
<p class="MsoNormal" style="vertical-align:baseline"><span style="font-size:9.0pt;font-family:"Segoe UI",sans-serif"><o:p> </o:p></span></p>
<p class="MsoNormal" style="vertical-align:baseline"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">Xerox Corporation<o:p></o:p></span></p>
<p class="MsoNormal" style="vertical-align:baseline"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">Virtual Office Employee</span><span style="font-size:9.0pt;font-family:"Segoe UI",sans-serif"><o:p></o:p></span></p>
<p class="MsoNormal" style="vertical-align:baseline"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">26600 SW Parkway Ave<o:p></o:p></span></p>
<p class="MsoNormal" style="vertical-align:baseline"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">Wilsonville, OR 97070<o:p></o:p></span></p>
<p class="MsoNormal" style="vertical-align:baseline"><span style="font-size:10.0pt;font-family:"Arial",sans-serif"><o:p> </o:p></span></p>
<p class="MsoNormal" style="vertical-align:baseline"><a href="https://www.linkedin.com/company/xerox/"><span style="font-size:10.0pt;font-family:"Arial",sans-serif;color:windowtext;text-decoration:none"><img border="0" width="24" height="24" style="width:.25in;height:.25in" id="Picture_x0020_5" src="cid:image002.png@01DC4DAD.D1C9DA60" alt="signature_3702933122"></span></a><span style="font-size:10.0pt;font-family:"Arial",sans-serif">
</span><a href="https://www.youtube.com/user/XeroxCorp"><span style="font-size:10.0pt;font-family:"Arial",sans-serif;color:windowtext;text-decoration:none"><img border="0" width="24" height="24" style="width:.25in;height:.25in" id="Picture_x0020_4" src="cid:image003.png@01DC4DAD.D1C9DA60" alt="signature_888572592"></span></a><span style="font-size:10.0pt;font-family:"Arial",sans-serif"> </span><a href="https://twitter.com/Xerox"><span style="font-size:10.0pt;font-family:"Arial",sans-serif;color:windowtext;text-decoration:none"><img border="0" width="24" height="24" style="width:.25in;height:.25in" id="Picture_x0020_3" src="cid:image004.png@01DC4DAD.D1C9DA60" alt="signature_2365106133"></span></a><span style="font-size:10.0pt;font-family:"Arial",sans-serif"> </span><a href="https://www.instagram.com/xerox/"><span style="font-size:10.0pt;font-family:"Arial",sans-serif;color:windowtext;text-decoration:none"><img border="0" width="24" height="24" style="width:.25in;height:.25in" id="Picture_x0020_2" src="cid:image005.png@01DC4DAD.D1C9DA60" alt="signature_238776473"></span></a><span style="font-size:10.0pt;font-family:"Arial",sans-serif"> </span><a href="https://www.facebook.com/XeroxCorp"><span style="font-size:10.0pt;font-family:"Arial",sans-serif;color:windowtext;text-decoration:none"><img border="0" width="24" height="24" style="width:.25in;height:.25in" id="Picture_x0020_1" src="cid:image006.png@01DC4DAD.D1C9DA60" alt="signature_954636144"></span></a><span style="font-size:10.0pt;font-family:"Arial",sans-serif"><o:p></o:p></span></p>
</div>
</div>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"><o:p> </o:p></span></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-family:"Calibri",sans-serif;color:black">From:
</span></b><span style="font-family:"Calibri",sans-serif;color:black">Michael Sweet <msweet@msweet.org><br>
<b>Date: </b>Tuesday, November 4, 2025 at 4:17 PM<br>
<b>To: </b>PWG Workgroup <ipp@pwg.org><br>
<b>Cc: </b>Christopher Rizzo <christopher.rizzo@xerox.com><br>
<b>Subject: </b>Re: [IPP] Support for IPv6 addresses with Scope ID's and what ?was? IPvFuture addresses?<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">CAUTION: This email originated from outside the organization. Do not click links or open attachments unless you recognize the sender and know the content is safe.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Chris,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0in 0in 0in 4.0pt;margin-left:3.75pt;margin-right:0in" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<p class="MsoNormal">On Nov 4, 2025, at 3:00<span style="font-family:"Arial",sans-serif"> </span>PM, Christopher Rizzo via ipp <<a href="mailto:ipp@pwg.org">ipp@pwg.org</a>> wrote:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Not sure if this is out of the scope of IPP PWG, but Apple AirPrint has requirements for support of IPv6 addressing that does not appear to be in any standards.<o:p></o:p></p>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">The history of scoped IPv6 addresses in URIs (particularly for link-local addresses) is both political and religious...<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">The original IPvFuture work by Bill Fenner and Martin Durst in the old IETF URI WG can be found here:<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"> <a href="https://datatracker.ietf.org/doc/draft-fenner-literal-zone/">https://datatracker.ietf.org/doc/draft-fenner-literal-zone/</a><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">CUPS adopted this format to support IPv6 link-local addresses back in 2005, and that eventually was adopted for use in AirPrint because there was nothing else coming from the IETF. Later, 3 years *after* AirPrint had adopted the original
IPvFuture work, the IETF 6man WG published RFC 6874 (somehow escaping the notice of the Apple folks that were involved in that WG) which uses a completely different method of encoding the scope/zone identifier and which breaks the RFC 3986/STD 66 URI format
and outlaws the use of the scope by the receiving server (not understanding that a service might need to provide absolute URIs back to a client).<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Fast forward another 10 years and various people (including me) were able to convince 6man to reopen the issue, which led to a *third* scheme/format being proposed. But during wider review the web browser developers told 6man that they
would never support IPv6 link local addresses, no matter what format is used. Ultimately the new format was dropped and a 4th draft was put together that obsoletes RFC 6874 and says "web browsers and other software should ask the user which interface to use"
and completely ignores the issue for HTTP-based protocols like IPP. <span style="font-family:"Apple Color Emoji"">
🙄</span> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">A subsequent draft (which has not been adopted, again because browser vendors said no) tried to standardize on using mDNS hostnames based on unique addresses (e.g. vendor prefix + MAC address), since that is effectively what everyone does. But
somehow a globally-unique identifier being used over mDNS isn't satisfactory for the web folks, and somehow regular DNS, perhaps managed by some vendor's cloud solution, is "better"...<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<blockquote style="border:none;border-left:solid #B5C4DF 4.5pt;padding:0in 0in 0in 4.0pt;margin-left:3.75pt;margin-right:0in" id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE">
<div>
<p class="MsoNormal">Also, there is the issue of Scope (or Zone?) ID's: the addition of "%X" on the end of an IPv6 address where X is a reference to the local client interface. According to what I read, the scope id is only relevant for the local machine and
helps identify which interface the client request goes out on, and it should be removed by the client before communicating on the network, so why would there be a requirement that a printer IPP or HTTP daemon/server comprehend IPv6 addresses with a scope id
appended?<o:p></o:p></p>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">That was the wording from RFC 6874 that was not present in the original URI WG draft and was removed from the subsequent draft that would have replaced RFC 6874.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">The reason for having the scope in the URI is to allow a Client to access Printer resources. For example, if a Printer is accessible at link-local address fe80::1234 and the Client has two network interfaces (en0 and wlan0), a Printer
URI of "ipp://[fe80::1234]/ipp/print" is insufficient to communicate with the Printer from the Client. Similarly, the "printer-more-info" and "printer-supply-info-uri" attributes are commonly used to access the Printer's embedded web interface and entering
"http://[fe80::1234]/supplies" (for example) won't work because the web browser can't determine which interface will work. And the "printer-icons" and "printer-strings-uri" attributes (pointing to printer icon and strings file resources on the Printer) won't
have the necessary network interface association that would allow a Client to access those resources.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">However, if the Client is able to include the scope in the URI, then the Printer can use that information (from the Host: header) to generate these URIs so that the Client knows which interface to use.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">FWIW, a similar approach is used for IPP-USB - there the hostname is always "localhost" with the port number being used by the Client to "route" the communications to the correct USB endpoints. Local (Client) software provides a proxy/gateway
that converts network requests to/responses from the USB Printer.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">________________________<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Michael Sweet<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
</body>
</html>