![IPv6 隐私扩展 use_tempaddr=1 与 use_tempaddr=2](https://linux22.com/image/725827/IPv6%20%E9%9A%90%E7%A7%81%E6%89%A9%E5%B1%95%20use_tempaddr%3D1%20%E4%B8%8E%20use_tempaddr%3D2.png)
我了解隐私扩展,并且可以通过设置 use_tempaddr 来启用它们。不幸的是,我找不到对不同设置的任何解释。我读过的每篇文章都使用了 1 或 2,或者引用了 kernel.org,但没有进一步解释。
use_tempaddr - INTEGER Preference for Privacy Extensions (RFC3041). <= 0 : disable Privacy Extensions == 1 : enable Privacy Extensions, but prefer public addresses over temporary addresses. > 1 : enable Privacy Extensions and prefer temporary addresses over public addresses. Default: 0 (for most devices) -1 (for point-to-point devices and loopback devices)
但是我还是不明白1
和之间的区别>1
。与临时 IP 相比,公有 IP 是什么?是使用 DHCP 分配/静态设置的 IP 吗?还是其他?
感谢您的帮助!
答案1
隐私扩展可与无状态地址自动配置 (SLAAC) 一起使用。此选项对 DHCPv6 或静态配置无效。使用隐私扩展,您至少有两个公共 IPv6 地址(和 link-local FE80::
),例如,一个带有 EUI-64 标识符,另一个带有根据 RFC-3041 生成的标识符。您可以使用命令查看它ip a
。Station 监听它们两个,但use_tempaddr
1 或 2 定义哪个地址用于传出流量。
当 时use_tempaddr=2
,隐私地址用作所有传出流量的来源。当 时use_tempaddr=1
,系统会生成隐私地址,但由于更“可预测”的地址用于传出流量,因此其用途看起来是多余的。