Назад | Перейти на главную страницу

Расширения конфиденциальности IPv6 use_tempaddr = 1 vs use_tempaddr = 2

Я понимаю расширения конфиденциальности и что вы включаете их, задав use_tempaddr. К сожалению, я не нашел объяснений различным настройкам. Каждая статья, которую я прочитал, использовала либо 1, либо 2, либо процитировала kernel.org без дополнительных объяснений.

Документация 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-адрес отличается от временного? Тот, который назначен DHCP / установлен статически? Или что-то другое?

Спасибо за вашу помощь!

Расширение конфиденциальности можно использовать с автоконфигурацией адреса без сохранения состояния (SLAAC). Этот параметр не действует для DHCPv6 или статической конфигурации. С расширением конфиденциальности у вас есть как минимум два общедоступных IPv6-адреса (и локальный для ссылки FE80::), один, например, с идентификатором EUI-64 и один с идентификатором, созданным в соответствии с RFC-3041. Вы можете увидеть это с помощью команды ip a. Станция слушает их обоих, но use_tempaddr 1 или 2, чтобы определить, какой адрес используется для исходящего трафика.

когда use_tempaddr=2, адрес конфиденциальности используется как источник всего исходящего трафика. С участием use_tempaddr=1используется система генерирования конфиденциального адреса, но поскольку для исходящего трафика используется более «предсказуемый» адрес, его назначение выглядит избыточным.