区域标识符应该在 X-Forwarded-For IP 中吗?

Should zone identifier be in X-Forwarded-For IP?

当弄乱 Go 的 http/httputil.ReverseProxy 时,监听带有区域的本地地址,通过它在本地发出请求,包括区域,我看到区域标识符最终出现在X-Forwarded-For header 由反向代理添加。 (您可以看到它发生 around hereSplitHostPort 保持区域完好无损。)

该区域应该在 XFF IP 中吗?是否有意义?这是一个错误吗?

我 not-very-clear 对区域标识符的理解是,它在使用它的特定机器之外没有任何意义。另一方面,也许如果您正在尝试跟踪请求所采用的路径,则区域是否有必要消除歧义?

想了一会儿,我最终writing a blog post about it。这是 post 的结论部分:

区域应保留到使用点,然后决定保留或剥离它们应基于 IP 的具体用途和区域对该用途的影响。

这意味着反向代理应该包括 X-Forwarded-For header 中的区域,速率限制器可能应该丢弃它们,并且 prefix-contains-IP 检查应该基于是否有前缀中的区域。但这些只是示例——IP 地址有无数种用途,具体用途将决定(或至少告知)区域的命运。

当然,这都是值得商榷的。要查看其他一些意见,请查看我在 r/ipv6 subreddit 中询问此问题时收到的一些评论。如果您有不同意见或知道其他人对此有何评论,请告诉我。