web-dev-qa-db-ja.com

このIPv6リンクローカルアドレス(Windowsによって報告されたもの)は正しいですか?もしそうなら、なぜですか?

I read online から、IPv6リンクローカルアドレスは、ネットワークインターフェイスのMACアドレスを取得し、その中央にFF:FEワードを挿入するか、追加のビットをORすることで生成されます。出来上がり:例MACアドレス00:3E:E1:c6:20:c2はIPv6リンクローカルアドレスfe80 :: 23e:e1ff:fec6:20c2%en0に対応し、MACアドレスを知っているプログラムはIPv6アドレスを計算できます。その逆。

これは私のMacintoshでは問題なく動作しているようですが、同僚のWindowsマシンでは(ipconfigの出力から)次のように表示されます。

Connection-specific DNS Suffix  . :
Link-local IPv6 Address . . . . . : fe80::eb:b41:3e4c:fd9e%11
IPv4 Address. . . . . . . . . . . : 192.168.0.3
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . :

ここでは、ネットワークインターフェイスのMACアドレス(0b:41:3e:4c:fd:9e)の前に、ff:feを挿入するのではなく、バイト「eb」のみがORされているように見えます。思った通りの真ん中。

誰かがそれがなぜであるか説明できますか?つまり、WindowsはここでのIPv6リンクローカルアドレスの指定に反することをしているのでしょうか、それとも私が知らない他の受け入れ可能なMAC-> IPv6規則を使用しているだけですか?あるいは、ベンダーがMACアドレスからfe80アドレスを生成するときに、何でもできるようになっているだけでしょうか?

6
Jeremy Friesner

リンクローカルアドレスをMACアドレスから生成する必要があるわけではありません。それは決して必要条件ではありませんでした。多くのデバイスでリンクローカルアドレスを手動で割り当てることができます。

Windowsで見られるのは、プライバシー拡張機能とランダムアドレス指定の使用です。 SLAACインターフェイスIDを割り当てる元の方法の代わりに、プライバシー拡張とランダムアドレス生成が導入されました。これはWindowsのデフォルトですが、無効にすることもできます。

RFC 4862、IPv6ステートレスアドレス自動構成 および RFC 4941、IPv6でのステートレスアドレス自動構成のプライバシー拡張 を参照してください。

5
Ron Maupin