EUI64でU / Lビットが反転するのはなぜですか?


13

この反転は全単射であるため、何が使用されているのかわかりません。


1
何か回答がありましたか?もしそうなら、質問が永遠にポップアップし続けないように答えを受け入れ、答えを探します。または、独自の回答を提供して受け入れることもできます。
Ron Maupin

回答:


16

RFC 4291は、EUI64アドレスの作成方法に関する指示を提供します。

Links or Nodes with IEEE 802 48-bit MACs

[EUI64] defines a method to create an IEEE EUI-64 identifier from an
IEEE 48-bit MAC identifier.  This is to insert two octets, with
hexadecimal values of 0xFF and 0xFE (see the Note at the end of
appendix), in the middle of the 48-bit MAC (between the company_id
and vendor-supplied id).  An example is the 48-bit IEEE MAC with
Global scope:

|0              1|1              3|3              4|
|0              5|6              1|2              7|
+----------------+----------------+----------------+
|cccccc0gcccccccc|ccccccccmmmmmmmm|mmmmmmmmmmmmmmmm|
+----------------+----------------+----------------+

where "c" is the bits of the assigned company_id, "0" is the value of
the universal/local bit to indicate Global scope, "g" is
individual/group bit, and "m" is the bits of the manufacturer-
selected extension identifier.  The interface identifier would be of
the form:

|0              1|1              3|3              4|4              6|
|0              5|6              1|2              7|8              3|
+----------------+----------------+----------------+----------------+
|cccccc1gcccccccc|cccccccc11111111|11111110mmmmmmmm|mmmmmmmmmmmmmmmm|
+----------------+----------------+----------------+----------------+

そして、RFC 2373は、7番目のビットを反転する背後にある「理由」を提供します。

The motivation for inverting the "u" bit when forming the interface
identifier is to make it easy for system administrators to hand
configure local scope identifiers when hardware tokens are not
available.  This is expected to be case for serial links, tunnel end-
points, etc.  The alternative would have been for these to be of the
form 0200:0:0:1, 0200:0:0:2, etc., instead of the much simpler ::1,
::2, etc.

しかし、それは少し一口です。つまり、より簡単に言えば... MACアドレスアーキテクチャでは、7番目のビットは、MACアドレスがユニバーサルに割り当てられたかローカルに割り当てられたかを示します。値0は、アドレスが汎用的に管理されることを示します。たとえば、IANAがNICカードベンダーにOrganizationally Unique Identifier(OUI)を割り当てると、7番目のビットは0になり、OUIが普遍的に割り当てられたことを示します。ユーザーが手動でMACアドレスを変更した場合、この7番目のビットは1に設定され、イーサネットアドレスがローカルで管理されたことを示します

これについては、PacketLifeにも詳しい情報があります。


まだわかりません。管理者が0200を必要としない場合、管理者は、自分のMACアドレス構成の扱いに関係なく、適切と思われる/ 128 ipv6アドレスを手動で構成できます。ここで見られる唯一の利点は、リンクローカルアドレスを手動で変更できない状況にあります。これは、管理者が利点を得る唯一のシナリオです。つまり、eui-64 ipv6アドレスに0200が表示されて問題が発生した場合、管理者として、リンクローカルアドレスを手動で変更できると想定して、そのアドレスを手動で変更します
lobi

このリンクは、手動でリンクローカルアドレスを設定することが可能であることを示しているcommunity.cisco.com/t5/ipv6/...
LOBIは

「値0は、アドレスが汎用的に管理されることを示します」。逆ではないですか?
Nakrule

6

次のような手で割り当てられたアドレスを分類するために行われprefix::1prefix::2地元としてなど。

prefixでネットワークを設定するとします2001:db8:dead:beef::/64。ほとんどのノードでMACベースのIPを使用することになります。ただし、DNSサーバーやディレクトリサーバーなどの一部のノードでは、MACベースのアドレスよりも入力しやすく、覚えやすいアドレスを使用する必要があります。DNSサーバーについては、おそらく使用したいと思うでしょう

2001:db8:dead:beef::53

U / Lビットが0に設定されていることに注意してください。ビットの反転により、ホストIDはローカルとして分類されます。


0

つまり、イーサネットMACでは、7番目のビットはローカル/#グローバルを意味するように定義されていますが、IPv6では、64ビットのインターフェースIDの7番目のビットはグローバル/#ローカルを意味するように定義されています。


0

EUI 64は、MACアドレス(48ビット)のみを意味します。

..:FF:FE:.. 

途中ですべての64ビットを埋めます。したがって、名前はEUI-64です。正確には、変更されたEUI-64を意味します。これは、7番目のビットのビットフリップと組み合わせたEUI-64を意味します。

MACアドレスでこの7番目のビットがローカル1(0)とグローバル(1)の違いを示したため、7番目のビットが変更されています。この意味でのローカルとは、たとえば、シリアルインターフェイスです。

これはすべて、(MAC用語で)グローバルなインターフェイス上にあるパブリックアドレスを自動的に作成するため、7番目の位置で1になります。彼らはそのビットを変更したので、あなたは穴のアドレスを書き留める必要がなく、あなたは "::"の簡略表記をすることができます。

例(RFC 2373から):

...
The alternative would have been for these to be of the
form 0200:0:0:1, 0200:0:0:2, etc., instead of the much simpler ::1,
::2, etc.

短い回答 すべてのMACアドレスは、IPv6アドレスのある位置で0より大きいHEX番号を持つIPv6アドレスになってしまいます。これにより、ゼロを含めることができるため、省略表記を使用できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.