use_tempaddr=1 カーネルパラメータの目的は何ですか?

use_tempaddr=1 カーネルパラメータの目的は何ですか?

sysctl文書を読むと、次のような内容が見つかりました。

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)

そのため、use_tempaddrパラメータをに設定するとプライバシー拡張が0無効になり、一時アドレスは使用されません。に設定するとプライバシー拡張が2有効になり、一時アドレスが使用されます。しかし、プライバシー拡張を有効にして一時use_tempaddrアドレスを無効にした1場合...それでは、これら3つのオプションのうち2つだけが意味がある場合、これら3つのオプションを持つ目的は何ですか?use_tempaddrに設定するユースケースは何ですか1

答え1

これを 1 に設定すると、一部のアプリケーションはアドレス変更を好み、他のアプリケーションは長期アドレスを好む状況をサポートする方法です。

たとえば、同じラップトップでSSH、RDPクライアント、およびWebブラウザを使用している場合は、RDPとSSHに長寿命のアドレスが必要になることがあります(両方とも数時間または数日間開いているTCP接続を使用できるため)。 Webブラウザのアドレス変更(追跡の問題による)

この状況を裏付ける方法はいくつかあります。そのうちの1つは、use_tempaddrを1に設定し、Webブラウザでソースアドレスを選択する特別なコードを書くことです。 (このようなコードを見たことがありますが、Androidアプリで見たようです。混乱しています。まだ理解していません。)

同じ目標を達成する別の方法があります。ただし、カーネルがユーザースペース管理者にどのような方法が最適かを判断できるようにする必要があると思う場合は、カーネルが tempaddr=1 を許可するのが妥当です。

関連情報