IPv6 の基本概念 / ベストプラクティス

IPv6 の基本概念 / ベストプラクティス

IPv6 について理解を深めようとしています。

私は見つけたこのガイド非常に便利ですが、まだいくつかの点は理解できません。

リンクローカル vs ユニークローカル

上記のガイドを読むと、リンク ローカル アドレスはホスト境界を越えない (つまり、デバイス間の通信には使用されない) ことがわかります。ユニーク ローカルは、IPv4 ローカル IP アドレスの概念に近いものです。

これは正しいです?

インターフェースID

私の理解が正しければ、各ホストは MAC アドレスから計算できる値によって識別されます。これは必須/ベスト プラクティスですか?

IPv4 ではアドレスは MAC アドレスとは関連がないため、たとえば、PC の NIC カードを変更して (MAC アドレスを変更して) も同じアドレスを使用できます。

さらに、IP アドレスは通常、何らかの基準 (PC の場合は a から b、プリンターの場合は x から y など) を使用して割り当てられます。これは必須ではありませんが、日常のメンテナンスに役立ちます。

IPv6 ではこれをどのように実行できますか?

答え1

リンクローカル アドレスはホスト境界を越えません (つまり、デバイス間の通信には使用されません)。

いいえ。彼らはするホスト境界は越えますが、ネットワーク (またはサブネット) 境界を越えることはありません。

リンクローカル アドレスは、以前はヌル アドレスから送信する必要があったパケット (例: DHCP → DHCPv6)、または IP ベースではなかったパケット (例: ARP → ICMPv6 NDP) に使用されます。また、以前は本質的にリンク スコープであるメッセージに「通常の」IP アドレスを使用していたルーティング プロトコル (RIPng、OSPFv3、Babel など) でも使用されます。

(技術的には、IPv4 にもリンク スコープ アドレス 169.254.0.0/16 がありますが、これはオプションであり、使用法ははるかに制限されています。これらは「通常の」アドレスと相互に排他的であると見なされることがよくあります。これは IPv6 には当てはまりません。IPv6 では、通常、すべてのインターフェイスに、他のすべてに加えてリンク ローカル アドレスがあります。)

ただし、リンク スコープを、実際にはホスト境界を越えない「インターフェイス ローカル」または「ホスト」スコープ アドレスと混同している可能性があります。実際に表示される唯一のホスト スコープ アドレスは::1(ループバック) です。

ユニークローカルは、IPv4 ローカル IP アドレスの概念に近いものです。

はい、しかし、その使用目的はIPv4とは少し異なります。つまり、LAN内でユニークローカルアドレスを使用したい場合でも、まだそれらと一緒にグローバル アドレスを使用します (つまり、各ホストには 2 つのアドレスがあります)。NAT は、1:1 NAT であっても、強く推奨されません。

IPv4とIPv6の両方において、これらのアドレスはグローバル範囲。それらはローカル割り当てただし、IP では、これらが「パブリック インターネット」アドレスと根本的に異なるとは見なされず、同じ方法でルーティングされます。

私の理解が正しければ、各ホストは MAC アドレスから計算できる値によって識別されます。これは必須/ベスト プラクティスですか?

いいえ。これはデフォルトのオプションです (MAC アドレスを持つネットワークの場合) が、必須ではありません。IPv6 ではあらゆる種類のインターフェース識別子が許可され、小さな例外を除いて、それらを特別に扱うことはありません。

  • 最近では、プライマリ インターフェイス ID が、RFC 7217 に従って不透明なハッシュベースのインターフェイス識別子に置き換えられることがよくあります。これは安定したままですが、外部に情報は公開されません。(一部のオペレーティング システムでは異なるアルゴリズムが使用される場合がありますが、最終結果は同じです。)

  • それよりずっと以前、ほとんどのホストがまだEUI-64インターフェース識別子を使用していたとき、それらの多くはすでにRFC 4941を実装してランダムな一時的インターフェース識別子。

  • 一般に、MAC または EUI-64 は、レイヤー 2 アドレスをまったく持たないポイントツーポイントのレイヤー 3 のみのトンネル メカニズム (PPP など) が多数存在するため、必須にすることはできません。

EUI-64 または MAC アドレスから IPv6 アドレスを生成するアルゴリズムは、EUI-64 の「ローカル/グローバル」ビットを考慮して慎重に行われているため、好みのインターフェイス ID を手動で割り当てるだけで (例<whatever>::123:ab)、構文的には「ローカルに管理された」EUI-64 アドレス (この例では ) に基づいている場合と同じになります02:00:00:00:01:23:00:ab

さらに、IP アドレスは通常、何らかの基準 (PC の場合は a から b、プリンターの場合は x から y など) を使用して割り当てられます。これは必須ではありませんが、日常のメンテナンスに役立ちます。

私の最初の提案は「DNS を使用する」ことです。仕事では、ほとんどの場合、生のアドレスを入力することはもうありません。特定のプリンターに接続したい場合、入力を開始するのではなく192.、入力を開始するpr-と、ブラウザーはさまざまな IP アドレスのリストではなく、プリンターのリストを提供します。

大規模なネットワークでは、複数の VLAN と複数のサブネットも必要になります。サブネット ID 1 (例: 2001:db8:42:1::/64) をユーザー VLAN に割り当て、サブネット ID 2 (2001:db8:42:2::/64) をプリンタ VLAN に割り当てます。

ほとんどのデバイスでは、IPv6 アドレスを手動で割り当てることを妨げません。たとえば、2001:db8:42::53DNS サーバーに自由に使用できます。前述のように、EUI-64 割り当ての想定内でも、これはまったく問題ありません。単に「ローカルに管理された」EUI-64 アドレスにマップされるだけです。

(割り当てをサポートするのはごくわずかただインターフェースIDを手動で変更し、ネットワークプレフィックスを自動的に受信しますが、IPv6プレフィックスは変更されないことを願います。それとにかく頻繁に。

関連情報