Расширения конфиденциальности IPv6 use_tempaddr=1 против use_tempaddr=2
Я понимаю расширения конфиденциальности и что вы включаете их, устанавливая use_tempaddr. К сожалению, я не нашел объяснения для разных настроек. Каждый прочитанный мной articel использовал либо 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 / установлен статически? Или что-то другое?
Спасибо за вашу помощь!
1 ответ
Расширение конфиденциальности можно использовать с автоматической настройкой адреса без учета состояния (SLAAC). Эта опция не влияет на DHCPv6 или статическую конфигурацию. С расширением конфиденциальности у вас есть как минимум два публичных IPv6-адреса (и link-local FE80::
), один, например, с идентификатором EUI-64 и один с идентификатором, сгенерированным в соответствии с RFC-3041. Вы можете увидеть это с помощью команды ip a
, Станция слушает их обоих, но use_tempaddr
1 или 2, чтобы определить, какой адрес используется для исходящего трафика.
когда use_tempaddr=2
адрес конфиденциальности используется в качестве источника всего исходящего трафика. С use_tempaddr=1
используется системный адрес конфиденциальности, но поскольку для исходящего трафика используется более "предсказуемый" адрес, его назначение выглядит избыточным.