住所ガイド
MAC アドレス形式と EUI-64 の関係
一般的な 48 ビット テキスト形式を正規化し、定義された EUI-64 変換を理解します。
AI要約
MAC セパレータは、基礎となるバイトではなく、プレゼンテーションを変更します。変換前に 6 バイトの入力を検証します。通常の EUI-64 拡張と修正された EUI-64 を区別します。
複数の文字列で同じ 48 ビットを表すことができます
例には、00:11:22:AA:BB:CC、00-11-22-AA-BB-CC、0011.22AA.BBCC などがあります。サポートされている区切り文字を削除した後、正確に 6 オクテットを解析します。混合文字、余分な文字、または 16 進数以外の文字を拒否します。
従来の修正済み EUI-64 IID レシピ
RFC 4291 に記載されているレガシー IPv6 インターフェイス識別子レシピの場合、48 ビットのリンク層アドレスの最初と最後の 3 オクテットの間に FF:FE を挿入し、ユニバーサル/ローカル ビットを反転します。これは修正された EUI-64 IID 構造です。出力がインターフェイスの現在の IPv6 アドレスであるという主張ではありません。
Input 48-bit address: 00:11:22:AA:BB:CC Insert FF:FE for legacy IID: 00:11:22:FF:FE:AA:BB:CC Invert U/L bit (Modified IID): 02:11:22:FF:FE:AA:BB:CC IPv6 IID grouping: 0211:22ff:feaa:bbcc
最新の安定した IID には、デフォルトで安定した MAC を埋め込むべきではありません
RFC 8064 は、デフォルトの推奨事項を更新します。安定した SLAAC インターフェイス識別子には RFC 7217 を使用し、デフォルトでは安定したリンク層アドレスを埋め込まないようにします。 EUI-64 形式の値だけでは、IID がどのように生成されたかを証明できません。
あいまいさを拒否するパーサーを使用する
受け入れられている表記法、小文字の 16 進数、ゼロ埋め込み、無効な長さ、およびマルチキャスト/ローカルの例をそれぞれテストします。比較に正規化されたバイトを使用しながら、表示用に元の入力を保持します。