静的IPv6/62プレフィックスがあり、ルーター(Debianを実行している)でradvdを使用して、ルーター内からネットワーク全体に/ 64をアドバタイズします。ルーター(:: 1)以外に、EUI64にMACアドレスに基づいてサフィックスを設定させます(つまり、自動fe80 ::アドレスのサフィックスと一致させます)。
ほとんどのLinuxは、プライバシー上の理由からこれをマスキングするように移行しています。私はプライバシーへの影響については本当に心配していません。さらに、sshdなどのサービスに完全に予測可能なIPv6アドレスが必要です。
理論的には、これは簡単に構成できるはずです。たとえば、Raspbianを実行しているRaspberry Piで、/ etc /sysctl.confファイルに次を追加しました。
################################################## #################
#IPv6EUI64を有効にする
#
net.ipv6.conf.all.use_tempaddr = 0
net.ipv6.conf.default.use_tempaddr = 0
net.ipv6.conf.eth0.use_tempaddr = 0
残念ながら、何も変わりません。 (最後の行は最後の試みでした。前の2行は実際には単独で機能するはずです。)
これらのOSの何かが、EUI64の動作を妨げています。それは何ですか、どうすれば有効にできますか?
この特定のマシンはnot NetworkManagerを実行していますが、一部は実行しています。
2つの異なるアドレスタイプを混同しています。
前者は常に生成されますに加えてデフォルトのアドレスであり、それを置き換えることはありません。したがって、あなたが考えていることではありません。
後者はデフォルトのEUI64ベースのアドレスを置き換えますが、一時的ではありませんであり、use_tempaddr
ノブとは何の関係もありません。代わりに、プライマリアドレス生成モードを変更する必要があります。
SLAACがカーネルによって実行される場合は、次のsysctlを変更します。
net.ipv6.conf.default.addr_gen_mode = 0
net.ipv6.conf.eth0.addr_gen_mode = 0
(ソースコードを見ると、all.addr_gen_mode
が実装されているようには見えません。)
SLAACがdhcpcdによって実行される場合は、次のdhcpcd.conf
オプションを使用します。
slaac hwaddr
SLAACがNetworkManagerによって実行される場合:
nmcli con modify "Connection name" ipv6.addr-gen-mode eui64