
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::53
DNS サーバーに自由に使用できます。前述のように、EUI-64 割り当ての想定内でも、これはまったく問題ありません。単に「ローカルに管理された」EUI-64 アドレスにマップされるだけです。
(割り当てをサポートするのはごくわずかただインターフェースIDを手動で変更し、ネットワークプレフィックスを自動的に受信しますが、IPv6プレフィックスは変更されないことを願います。それとにかく頻繁に。