試験項目 1.4 · CCNA-021
IPv6 Unicast Address
Global Unicast / Special-Purpose例外 / Unique Local / FD00::/8 / Link-Local / Unspecified / Loopback / Scope
このページのゴール
主要なIPv6 Unicast Address TypeとScopeを識別し、提示されたAddressが期待される用途・通信範囲と整合しているか判断できるようにする。
このページで学ぶこと
- Global Unicast Address
- Global Reachability Caveat
- Documentation Prefix 2001:db8::/32
- ULA FC00::/7
- Locally Assigned ULA FD00::/8
- Link-Local FE80::/10
- Link-Local Scope
- Unspecified Address ::
- Loopback Address ::1
- Address Type / Scope Consistency
ページ019ではIPv6アドレスの表記、ページ020ではプレフィックス長とプレフィックスサイズを確認しました。
ページ021では、IPv6ユニキャストアドレスの、
グローバルユニキャスト
ユニークローカル
リンクローカル
未指定
ループバック
を識別し、
アドレス種別
+
通信範囲・ルーティング可能性特性
+
期待値用途
が整合しているかを判断します。
例えば、
fd12:3456:789a::10
はIPv6アドレスとして成立していますが、通常のグローバルインターネットルーティングで外部公開するためのグローバルユニキャストアドレスではありません。
また、
fe80::10
はリンクローカルアドレスなので、ルーターを越えたリモートリンクとの通常通信に使用するアドレスではありません。
ページ021では、
IPv6アドレス
↓
上位プレフィックス
↓
アドレス種別
↓
スコープ/ 到達可能性
↓
期待用途
↓
種別/ スコープ整合性
の順に判断できるようにします。
1. IPv6ユニキャストアドレス
ユニキャストアドレスは、1つのインターフェースを識別し、そのインターフェースへパケットを届けるために使用するアドレスです。
ページ021ではCCNAで特に重要な、
グローバルユニキャスト
ユニークローカル
リンクローカル
未指定
ループバック
を扱います。
マルチキャストやエニーキャストの詳細は、このページでは扱いません。
2. 主要アドレス種別を上位プレフィックスから識別する
ページ021で重要なプレフィックスは、
2000::/3
→ 現在IANAがグローバルユニキャスト割当に使用する主要アドレス空間
2001:db8::/32
→ 文書用
FC00::/7
→ ユニークローカル
FD00::/8
→ ローカル割り当てULA側
FE80::/10
→ リンクローカル
::/128
→ 未指定
::1/128
→ ループバック
です。
トラブルシューティングではアドレス文字列全体の見た目だけでなく、
どのプレフィックスに属するか
を確認します。
3. グローバルユニキャストアドレス
グローバルユニキャストアドレスは、IPv6ネットワーク上で一意に使用するためのユニキャストアドレスです。
現在IANAがグローバルユニキャストアドレスを割り当てる主要アドレス空間として重要なのが、
2000::/3
です。
/3なので先頭3ビットは、
001
です。
先頭16進数の桁で大きく見ると、
2xxx:....
または、
3xxx:....
の範囲になります。
例えば、
2001:....
2400:....
2600:....
2a00:....
3000:....
などは2000::/3に入ります。
4. グローバルユニキャスト種別とインターネット到達可能性は別
次のアドレスが、
2600:abcd:1::10
であり、2000::/3に属しているとします。
ここから判断できるのは、
現在の主要グローバルユニキャストアドレス空間側
という分類です。
これだけでは、
インターネット上にルートが存在する
ファイアウォールが許可している
ネットワークポリシーが許可している
外部から実際に到達できる
ことまでは分かりません。
したがって、
グローバルユニキャスト種別
≠
グローバル到達可能性が保証される
です。
アドレス種別と動作上の到達可能性を分離して考えます。
5. 2001:db8::/32は文書用プレフィックス
次のプレフィックス:
2001:db8::/32
は2000::/3の内部にあります。
しかし、
2001:db8::/32
は文書用に予約されたプレフィックスです。
例えば、
2001:db8:10:20::1
のようなアドレスは、
教材
設計例
文書用
などで使用できます。
一方、実運用のエンドユーザーへ割り当てるためのプレフィックスではありません。
6. 2000::/3だけを見て本番用と判断しない
要件:
本番Webサーバー
インターネット向けグローバルIPv6アドレスが必要
実際値:
2001:db8:10:20::10
の場合、
2000::/3に属する
だけを見て正常とは判断しません。
確認結果は、
大分類
→ グローバルユニキャストアドレス空間内
特殊用途
→ 文書用プレフィックス
期待値
→ 本番用グローバルアドレス
実際値
→ 文書用アドレス
確認結果
→ 用途不整合
です。
ページ021では特殊用途IPv6プレフィックス全体を網羅暗記するのではなく、CCNA教材で頻出する2001:db8::/32を確実に識別します。
7. ユニークローカルアドレス
ユニークローカルアドレス、略してULAは、
FC00::/7
で定義されています。
ULAは通常のグローバルインターネットルーティングを目的とするアドレスではなく、
組織内部
サイト内部
複数の内部サブネット
明示的に接続されたサイト間
などのローカル通信に利用できます。
リンクローカルとは異なり、
1つのリンクだけ
に限定されるアドレスではありません。
8. FC00::/7とLビット
ULAの基本形式では、
| FC00::/7 | L | グローバルID | サブネットID | インターフェースID |
として考えられます。
FC00::/7の直後に、
Lビット
があります。
RFC 4193では、
L = 1
→ ローカル割り当て
です。
一方、
L = 0
は将来別の割り当て方式を定義できるよう残されています。
そのため、現在ローカル割り当てULAとして重要なのは、
FD00::/8
側です。
9. FD00::/8はローカル割り当てULA側
例えば、
fd12:3456:789a:1::10
は、
fd
から始まります。
したがって、
FD00::/8
に属し、
ローカル割り当てULA
として識別できます。
ただし、
ULA全体
=
FD00::/8
ではありません。
整理すると、
FC00::/7
→ ULA全体
FD00::/8
→ L = 1 のローカル割り当てULA側
です。
10. ULAの範囲とインターネットでのルーティング可能性を混同しない
RFC 4193ではULAの範囲はデフォルトで、
グローバル
です。
これは、
1つのリンクや1つのサイトに
アドレスの意味が限定される
という意味でのローカル範囲ではない、ということです。
一方、ULAのルーティング可能性は通常、
サイト内部
組織内部
明示的なルーティング上の合意を持つサイト間
などへ制限します。
したがって、
グローバルな範囲
と、
グローバルインターネットでのルーティング可能性
は別概念です。
ULAをIPv4のRFC 1918プライベートアドレスと対応させて覚えると用途のイメージは掴みやすいですが、完全に同一の仕組みではありません。
11. ULAの用途整合性
次のサーバー:
fd12:3456:789a:1::10
について、
期待値が、
社内アプリケーションサーバー
組織内部通信のみ
なら、ULAというアドレス種別は要件と整合する可能性があります。
一方、
グローバルインターネット上のクライアントから
通常のIPv6ルーティングで直接到達させる
ことが期待値なら、
ULAしか持たない
状態はアドレス設定要件との不整合を疑います。
ただしアドレス種別だけからネットワーク構成全体を断定しません。
12. ユニークローカルとリンクローカルは別アドレス種別
ユニークローカル
FC00::/7
と、
リンクローカル
FE80::/10
は別のアドレス種別です。
ULAはルーティングによって複数の内部サブネットやサイト間でも利用できます。
リンクローカルは、
1つのリンク
に通信範囲が限定されます。
名前に両方ともローカルが含まれていても、同じアドレス種別ではありません。
13. リンクローカルアドレス
リンクローカルユニキャストアドレスの重要なプレフィックスは、
FE80::/10
です。
例えば、
fe80::1
fe80::abcd:10
などはリンクローカルとして識別できます。
リンクローカルアドレスは、
同一リンク上の通信
で使用します。
代表的には、
近隣探索
アドレス設定関連
同一リンク上の近隣ノード間通信
などで重要です。
インターフェース上での自動生成や明示設定方法はページ022で扱います。
14. リンクローカルはルーターを越えて転送されない
IPv6ルーターは、
リンクローカル送信元アドレス
または
リンクローカル宛先アドレス
を持つパケットを別リンクへ転送しません。
したがって、
ホスト-A
↓
ルーター
↓
リモートホスト-B
という通信で宛先として、
fe80::20
だけが提示されているなら、
期待値
ルーター越え通信
実際のアドレス種別
リンクローカル
確認結果
範囲不整合
です。
15. 同一リンクならリンクローカルを利用できる
例えば、
ホスト-A
fe80::10
ホスト-B
fe80::20
同一リンク
であれば、リンクローカルアドレスを利用した通信が成立し得ます。
したがって、
グローバルユニキャストアドレスがない
=
同一リンクでもIPv6通信できない
とは判断しません。
リンクローカルアドレスはIPv6の同一リンク動作に重要です。
16. リンクローカルアドレスは別リンクで同じ値が存在し得る
リンクローカルアドレスはリンク単位で意味を持ちます。
例えば、
リンク-A
fe80::1
と、
リンク-B
fe80::1
が存在しても、リンクが異なれば同じアドレス文字列が存在し得ます。
そのためリンクローカルを扱うときは、
どのインターフェース
どのリンク
のアドレスなのかという文脈も重要です。
具体的なインターフェース指定操作などは後続ページで扱います。
17. 未指定アドレス
未指定アドレスは、
::
です。
完全表記は、
0:0:0:0:0:0:0:0
で、プレフィックス長まで明示すると、
::/128
です。
未指定アドレスは、
アドレスが存在しない
ことを示します。
RFC 4291上、
::
はノードへ割り当ててはなりません。
これは推奨事項ではなく、アドレス構成上のルールです。
18. 未指定アドレスで許される用途と禁止される用途
まだ自分のIPv6アドレスを取得していない初期化中のホストが、
送信元アドレス
::
を使用する場合があります。
しかし、
::
は、
ノードへ割り当ててはいけない
宛先アドレスとして使用してはいけない
IPv6ルーティングヘッダー内で宛先として使用してはいけない
アドレスです。
また、
送信元アドレス
::
を持つIPv6パケットをルーターが転送してはいけません。
したがって、
サーバーインターフェースアドレス
::
のように通常のノード識別アドレスとして提示されているなら、アドレス種別不整合です。
19. ループバックアドレス
IPv6ループバックアドレスは、
::1
です。
プレフィックス長まで明示すると、
::1/128
です。
ループバックアドレスは、
ノードが自分自身へパケットを送信する
ために使用します。
RFC 4291上、
::1
は物理インターフェースへ割り当ててはなりません。
20. ループバックアドレスはノード外へ送信しない
::1を宛先とするパケットは、
同じノード自身
へ向けたものです。
ループバックアドレスは、
ノード外へ送信してはいけない
ルーターが転送してはいけない
アドレスです。
また、外部インターフェースから宛先 ::1のパケットを受信した場合も正常なリモート通信として扱うものではありません。
したがって、
期待値
リモートサーバーへ通信
実際の宛先
::1
なら、
アドレス種別/ 用途不整合
です。
21. ::と::1を混同しない
見た目は似ていますが意味は異なります。
| アドレス | 種別 | 意味 |
|---|---|---|
::/128 |
未指定 | アドレス不在を示す |
::1/128 |
ループバック | ノード自身を示す |
::
はループバックではありません。
::1
も未指定ではありません。
最後までアドレス値を正確に確認します。
22. 主要アドレス種別を比較する
| アドレス/ プレフィックス | 種別 | 主な用途・特性 |
|---|---|---|
2000::/3 |
現在の主要グローバルユニキャスト割り当て空間 | グローバルユニキャスト割当に使われる主要範囲 |
2001:db8::/32 |
文書用 | 文書/ 例用 |
FC00::/7 |
ユニークローカル | ローカル通信用途 |
FD00::/8 |
ローカル割り当てULA側 | Lビット = 1 |
FE80::/10 |
リンクローカル | 同一リンク通信 |
::/128 |
未指定 | アドレス不在 |
::1/128 |
ループバック | ノード自身 |
ここでも、
アドレス種別
と、
実際に通信可能か
を分離します。
23. アドレス種別を識別する順序
ページ021の範囲では、特殊性の高いものから確認すると整理しやすくなります。
1. ::
→ 未指定
↓
2. ::1
→ ループバック
↓
3. FE80::/10
→ リンクローカル
↓
4. FC00::/7
→ ULA
↓
5. FD00::/8なら
→ ローカル割り当てULA側
↓
6. 2001:db8::/32
→ 文書用
↓
7. 2000::/3
→ 現在の主要グローバルユニキャスト空間
↓
8. 期待値用途との整合を確認
これはIPv6特殊用途アドレス全体を網羅する手順ではありません。
ページ021の学習範囲に対する判断流れです。
24. トラブルシューティングでは期待値用途と比較する
IPv6アドレスを見ただけで、
正しい
間違い
とは判断できません。
例えば、
fd12:3456:789a::10
はローカル割り当てULAとして成立するアドレスです。
期待値が、
内部アプリケーションサーバー
なら整合する可能性があります。
しかし期待値が、
通常のグローバルIPv6ルーティングで
インターネットから直接到達可能にする
なら、ULAだけでは一致しません。
したがって、
期待値用途
↓
実際のアドレス
↓
アドレス種別
↓
範囲/ ルーティング可能性特性
↓
整合性
で確認します。
25. ケース 1:文書用プレフィックス
期待値:
本番Webサーバー
インターネット向けグローバルIPv6アドレス
実際値:
2001:db8:100::10/64
分類:
2001:db8::/32
→ 文書用
結果:
期待値
実運用グローバルアドレス
実際値
文書用プレフィックス
確認結果
アドレス種別/ 用途不整合
です。
2000::/3だけを見て正常とは判断しません。
26. ケース 2:ULA
期待値:
内部データベース
組織内部通信のみ
実際値:
fd12:3456:789a:20::10/64
分類:
FD00::/8
→ ローカル割り当てULA側
このアドレス種別はローカル通信という期待値と整合する可能性があります。
ULAであることだけを理由に誤設定とは判断しません。
27. ケース 3:リンクローカル
期待値:
同一リンク上の近隣ノードと通信
実際値:
fe80::20
分類:
FE80::/10
→ リンクローカル
期待値も同一リンクなので、
種別/ 範囲
整合
です。
期待値がルーター越え通信なら、
範囲不整合
です。
28. ケース 4:未指定
期待値:
インターフェースに
有効なユニキャストアドレスが設定されている
実際値:
::
分類:
未指定
未指定アドレスはノードへ割り当ててはならないため、
期待値
有効なインターフェースアドレス
実際値
未指定
確認結果
アドレス種別不整合
です。
具体的な設定確認はページ022で扱います。
29. ケース 5:ループバック
期待値:
リモートサーバーのIPv6アドレス
実際値:
::1
分類:
ループバック
::1は自ノード自身を示し、物理インターフェースへ割り当てるアドレスでもありません。
したがって、
期待値
リモートノード
実際値
ローカルノード自身
確認結果
アドレス種別/ 用途不整合
です。
30. グローバルユニキャストでも通信失敗の原因は別にあり得る
期待値:
インターネット上のリモートサーバーへ通信
実際のローカルアドレス:
2000::/3内の
適切なグローバルユニキャストアドレス
だったとしても、
通信できない
↓
アドレス種別が間違い
とは限りません。
アドレス種別が期待値と一致しているなら、
ルーティング
フィルタリング
到達可能性
その他の設定
などへトラブルシューティング対象を広げる必要があります。
ページ021では、
アドレス種別/ 範囲に
明確な確認結果があるか
までを判断します。
31. よくある誤判断
誤り1:2000::/3なら必ずインターネット到達可能
アドレス分類と動作上の到達可能性は別です。
誤り2:2001:db8::/32を本番用グローバルアドレスとして使う
文書用プレフィックスです。
誤り3:ULAはFD00::/8だけ
ULA全体は、
FC00::/7
です。
FD00::/8はLビット = 1のローカル割り当て側です。
誤り4:ULAとリンクローカルは同じ
ULA
FC00::/7
リンクローカル
FE80::/10
で別種別です。
誤り5:ULAは1つのリンクだけで使用する
ULAはルーティングによって複数サブネットや明示的に接続されたサイト間でも利用できます。
誤り6:ULAの範囲はグローバルではない
ULAの範囲はデフォルトでグローバルです。
ただし通常のグローバルインターネットルーティングを目的とはしません。
誤り7:リンクローカルをルーター越しに転送できる
リンクローカル送信元/ 宛先パケットをIPv6ルーターが別リンクへ転送してはいけません。
誤り8:::はループバック
::
→ 未指定
です。
ループバックは、
::1
です。
誤り9:::を通常のノードアドレスとして割り当てられる
未指定アドレスはノードへ割り当ててはいけません。
誤り10:::1を物理インターフェースやリモートホスト用に使える
ループバックアドレスは物理インターフェースへ割り当ててはならず、自ノード自身に対するアドレスです。
誤り11:正しいアドレス種別なら通信成功も保証される
アドレス種別と動作上の到達可能性は別です。
32. IPv6ユニキャストアドレス種別のトラブルシューティング手順
1. 期待値用途を確認
↓
2. 実際のアドレスを確認
↓
3. :: / ::1を確認
↓
4. FE80::/10を確認
↓
5. FC00::/7を確認
↓
6. FD00::/8なら
ローカル割り当てULA側として確認
↓
7. 2001:db8::/32を確認
↓
8. 2000::/3を確認
↓
9. アドレス種別を確定
↓
10. 範囲/ ルーティング可能性特性を確認
↓
11. 期待値用途と比較
↓
12. アドレス種別/ 範囲の確認結果を判断
すべての問題で全手順を実行する必要はありません。
提示されたアドレスと期待値用途に必要な部分を確認します。
33. 最終的に判断できるようにすること
ページ021では最終的に、
2000::/3を
現在の主要グローバルユニキャスト割当空間として識別できる
2000::/3所属だけで
インターネット到達可能性を断定しない
2001:db8::/32を
文書用プレフィックスとして識別できる
FC00::/7を
ULAとして識別できる
FD00::/8側を
ローカル割り当てULAとして識別できる
ULAのLビット概念を理解する
ULAの範囲と
グローバルインターネットでのルーティング可能性を区別する
ULAとリンクローカルを区別する
FE80::/10を
リンクローカルとして識別できる
リンクローカルが同一リンク用であると判断できる
リンクローカル送信元/ 宛先パケットを
ルーターが別リンクへ転送しないと判断できる
::/128を
未指定として識別できる
未指定を
ノードへ割り当ててはいけないと判断できる
未指定を
宛先として使用してはいけないと判断できる
::1/128を
ループバックとして識別できる
ループバックを
物理インターフェースへ割り当ててはいけないと判断できる
ループバックが
ノード自身を示すと判断できる
アドレス種別
範囲/ ルーティング可能性特性
期待値用途
を照合できる
必要があります。
まとめ
ページ021で扱う主要なIPv6ユニキャストアドレス種別は、
グローバルユニキャスト
ユニークローカル
リンクローカル
未指定
ループバック
です。
現在IANAがグローバルユニキャストアドレスを割り当てる主要アドレス空間は、
2000::/3
です。
ただし、
2000::/3に属する
=
インターネット到達可能性が保証される
わけではありません。
また、
2001:db8::/32
は文書用プレフィックスなので、本番用グローバルアドレスとして割り当てるためのプレフィックスではありません。
ユニークローカルアドレスは、
FC00::/7
です。
その中で、
L = 1
のローカル割り当てULAは、
FD00::/8
側です。
ULAの範囲はデフォルトでグローバルですが、通常のグローバルインターネットルーティングを目的とはしません。
リンクローカルは、
FE80::/10
です。
同一リンク上で利用し、リンクローカル送信元または宛先を持つパケットをルーターが別リンクへ転送してはいけません。
特殊アドレスでは、
::/128
→ 未指定
::1/128
→ ループバック
を区別します。
未指定アドレスは、
アドレスが存在しない
ことを示し、
ノードへ割り当ててはいけない
宛先として使用してはいけない
アドレスです。
ループバックアドレスは、
ノード自身
を示し、
物理インターフェースへ割り当ててはいけない
ノード外へ送信してはいけない
アドレスです。
トラブルシューティングでは、
アドレス種別だけ
を見るのではなく、
期待値用途
↓
実際のアドレス
↓
アドレス種別
↓
範囲/ ルーティング可能性特性
↓
整合性
を確認します。
ページ021での最終流れは、
IPv6アドレス
↓
上位プレフィックス
↓
アドレス種別
↓
スコープ/ 到達可能性
↓
特殊用途確認
↓
期待用途との比較
↓
アドレス種別/ スコープの確認結果
です。
次のページ022では、これらのアドレス種別を前提に、Cisco IOSインターフェースへ設定されたIPv6アドレス、ipv6 address、明示的リンクローカル、ipv6 enable、自動リンクローカル、複数のIPv6アドレスなどを確認します。
理解確認
このページの内容を14問で確認します。
理解確認14問へ →