ネットワークスペシャリスト 2014年 午前2 問09
問題文
IPv4におけるARPのMACアドレス解決機能をIPv6で実現するプロトコルはどれか。
選択肢
ア:DHCPv6
イ:ICMPv6(正解)
ウ:IGMPv2
エ:RIPng
🔒 解説は解答すると表示されます
近隣探索プロトコル【午前2解説】
正解の理由
IPv6では、IPv4のARPに相当する「同一リンク上のIPアドレス→リンク層アドレス」の解決や近隣管理を ICMPv6 の拡張であるNDP(Neighbor Discovery Protocol)が担います。したがって選択肢の中で該当するのは イ(ICMPv6)です。NDPは ICMPv6 のメッセージ群(Neighbor Solicitation/Advertisement, Router Solicitation/Advertisement, Redirect など)でアドレス解決、重複検出、ルータ発見などを実現します。
解法ステップ
- 問題要求を「ARPの機能(IPv6でのIP→MAC解決)」と置き換える。
- IPv6でARPを置き換える仕組みは何かを思い出す(答え:NDP)。
- NDPはどのプロトコルに属するかを確認する(ICMPv6の拡張)。
- 他の選択肢(DHCPv6、IGMPv2、RIPng)は役割が異なることを根拠に除外する。
- DHCPv6:アドレス割当・設定配布(ただしDUIDはクライアント識別子)
- IGMPv2:IPv4のマルチキャスト管理(IPv6ではMLD)
- RIPng:IPv6向け経路制御(ルーティングプロトコル)
選択肢別の誤答解説
- ア: DHCPv6
- 誤り。DHCPv6はIPv6アドレスやDNSなどの設定を配布するプロトコルであり、即時にホストのIPv6アドレスからリンク層アドレスを解決する役割は持たない。DUID(DHCP Unique Identifier)はクライアント識別子であり、MACアドレスそのものではない。DHCPv6はクライアント識別やオプション伝送を行うが、IP→リンク層アドレス解決はNDPに委ねられる。
- イ: ICMPv6
- 正解。ICMPv6のメッセージ群として実装されるNDPが、Neighbor Solicitation (NS) / Neighbor Advertisement (NA) によりARP相当のアドレス解決を行う。
- ウ: IGMPv2
- 誤り。IGMPはIPv4のマルチキャストグループ管理用で、IPv6ではMLD(Multicast Listener Discovery)が対応する。ARP代替ではない。
- エ: RIPng
- 誤り。RIPngはIPv6用の距離ベクトル型ルーティングプロトコルであり、隣接ホストのリンク層アドレス解決とは無関係。
よくある誤解
- DUIDとMACアドレスを混同する
- DUIDは「DHCP Unique Identifier」であり、必ずしもリンク層(MAC)アドレスではありません。DHCPv6のクライアント識別に使われる識別子で、形式や生成方法は複数あります。
- 「IPv6でもARPがある」と考える
- IPv6ではARPは存在せず、NDP(ICMPv6)で同様の機能を実現します。
- DHCPv6でIP→MAC解決ができると考える
- DHCPv6はアドレス配布や設定管理が主目的で、リアルタイムな近隣解決はNDPが行います。環境によってはDHCP情報とNDP/支援機能を組み合わせる運用もありますが、役割は明確に分かれます。
補足コラム
NDPの代表的なICMPv6メッセージと用途(ICMPv6のタイプ番号)
- Router Solicitation (133):ホストがルータを要求
- Router Advertisement (134):ルータがネットワーク設定を通知(プレフィックス、MTU等)
- Neighbor Solicitation (135):アドレス解決や重複アドレス検出(DAD)に使用
- Neighbor Advertisement (136):応答(リンク層アドレス通知)
- Redirect (137):ルータが経路最適化情報を通知
Solicited-node マルチキャストアドレスの生成方法(実務で重要)
- フォーマット: ff02::1:ffXX:XXXX
- 対象IPv6アドレスの下位24ビットをこのアドレスの下位24ビットに埋め込むことで、近隣探索の問い合わせを該当ノードに効率よく届けます。
重複アドレス検出(DAD)は、ホストが自分の割り当て予定アドレスでNSを送信し、NAが返ってこないことを確認して初めてアドレスを有効化します。
FAQ
Q1: DUIDはMACアドレスとして使われますか?
A1: いいえ。DUID(DHCP Unique Identifier)はクライアントを一意に識別するための識別子で、必ずしもMACアドレスと同一ではありません。DUIDにはいくつかの形式(例:DUID-LL、DUID-LLT、DUID-UUIDなど)があり、環境によって使い分けられます。リンク層アドレスそのものによる即時解決はNDPが担います。
A1: いいえ。DUID(DHCP Unique Identifier)はクライアントを一意に識別するための識別子で、必ずしもMACアドレスと同一ではありません。DUIDにはいくつかの形式(例:DUID-LL、DUID-LLT、DUID-UUIDなど)があり、環境によって使い分けられます。リンク層アドレスそのものによる即時解決はNDPが担います。
Q2: ICMPv6はエラーメッセージだけですか?
A2: いいえ。ICMPv6はエラー通報だけでなく、NDPのような制御メッセージ群(ルータ発見、近隣探索、重複検出など)も含みます。IPv6の基本機能実装にはICMPv6が不可欠です。
A2: いいえ。ICMPv6はエラー通報だけでなく、NDPのような制御メッセージ群(ルータ発見、近隣探索、重複検出など)も含みます。IPv6の基本機能実装にはICMPv6が不可欠です。
Q3: DHCPv6でアドレス解決を代替できますか?
A3: 直接はできません。DHCPv6はアドレスや設定の配布を行いますが、リンク層アドレス解決(ARP相当)はNDPで行います。運用上はDHCPv6情報とNDP情報を組み合わせてネットワーク管理する場合がありますが、機能は別物と理解してください。
A3: 直接はできません。DHCPv6はアドレスや設定の配布を行いますが、リンク層アドレス解決(ARP相当)はNDPで行います。運用上はDHCPv6情報とNDP情報を組み合わせてネットワーク管理する場合がありますが、機能は別物と理解してください。
関連キーワード: IPv6、NDP、ICMPv6、Neighbor Solicitation、Neighbor Advertisement、DUID、DHCPv6、Solicited-node Multicast、Duplicate Address Detection、ARP

\ せっかくなら /
ネットワークスペシャリストを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

