「2021-09-19 DHCPv6-PD 機能検証」の版間の差分

提供:hkatou_Lab
ナビゲーションに移動 検索に移動
編集の要約なし
 
(同じ利用者による、間の16版が非表示)
22行目: 22行目:


* 例 2. は L3SW が PD クライアントに集約ルートとして /56 を割り当てた例です
* 例 2. は L3SW が PD クライアントに集約ルートとして /56 を割り当てた例です
* PD ルート + PD クライアントのリンクローカルアドレスの 2 つのエントリで済みます
* PD ルート + PD-Client のリンクローカルアドレスの 2 つのエントリで済みます
** ただし、実運用としては PD クライアントにも疎通確認用として /64 でグローバル ユニキャストを持たせたほうが運用しやすいケースも考えられます
* PD-Client 配下では /56 をサブネット分割し、/64 のネットワークを 16 個作成できます
* PD-Client 配下では /56 をサブネット分割し、/64 のネットワークを 16 個作成できます
* /64 1 つでも、分割して複数持たせても良いです
** /64 1 つでも、分割して複数持たせても良いです


* PC などの数が増えても、L3SW のリソースには影響しません
* PC などの数が増えても、L3SW のリソースには影響しません
* ただし、実運用としては PD クライアントにも疎通確認用として /64 でグローバル ユニキャストを持たせたほうが運用しやすいケースも考えられます


{| class="wikitable"
{| class="wikitable"
54行目: 53行目:
|}
|}


実際の 3SW の例として Catalyst 9300 の '''IPv4 ARP エントリは 32,000''' ですが、'''IPv6 ND の場合は半分の 16,000''' となります。
実際の L3SW の例として Catalyst 9300 の '''IPv4 ARP エントリは 32,000''' ですが、'''IPv6 ND の場合は半分の 16,000''' となります。


机上では 1 台につきグローバル ユニキャスト + リンクローカルで最低 2 つのエントリを消費するため、'''Catalyst 9300 1 台あたり 8,000 台が最大収容数'''と考えられ、IPv4 よりもかなり見劣りします。
机上では 1 台につきグローバル ユニキャスト + リンクローカルで最低 2 つのエントリを消費するため、'''Catalyst 9300 1 台あたり 8,000 台が最大収容数'''と考えられ、IPv4 よりもかなり見劣りします。
== DHCPv6-PD のデメリット ==
* FTTH を想定した場合、ブロードバンドルータの対応機種が限られます
* ARP / IPv6 ND よりも静的よりのプロトコルとなるため、冗長構成はよく検討する必要があります
* IPv6 リナンバリングはまだまだノウハウがありません  移行設計はよく検討する必要があります


== 検証環境 ==
== 検証環境 ==
いずれも無料で提供されているソフトウェアです。
'''ESXi7.0 無償評価版'''
'''ESXi7.0 無償評価版'''


* VMware Workstaion でも可能ですが、CPU とメモリの要件が厳しいため、ノート PC では厳しいでしょう
* VMware Workstaion でも可能ですが、CPU とメモリの要件が厳しいため、少なくとも 2021 年のノート PC では厳しいでしょう
* hkatou Lab では Supermicro のコンパクトサーバ、E300-9a Atom C3858 12 Core 12 Thread + 64GB メモリを使用しています
* hkatou Lab では Supermicro のコンパクトサーバ、E300-9a Atom C3858 12 Core 12 Thread + 64GB メモリを使用しています




'''EVE-NG  Community Edition'''
'''EVE-NG  Community Edition'''
* 8 vCPU / 30GB のメモリを割り当てました<br />




75行目: 85行目:
** 1 vCPU x 5 台 = '''5 vCPU'''
** 1 vCPU x 5 台 = '''5 vCPU'''
** 4GB メモリ x 5 台 = '''20GB'''
** 4GB メモリ x 5 台 = '''20GB'''
*** IOS-XE 上では 1.8GB ほどフリーに見えるため、2.5GB / VM 程度の割当でもいけそうです
*** IOS-XE 上では 1.8GB ほどフリーに見えるため、2.5GB / VM = '''12.5GB''' 程度の割当でもいけそうです
 
いずれも無料で提供されているソフトウェアです。


== 構成図 ==
== 構成図 ==
188行目: 196行目:
| -
| -
|}
|}
<span></span><ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-1930311742297749" data-ad-slot="5409634032"></ins><span></span><span></span>


== ホストリスト・役割 ==
== ホストリスト・役割 ==
216行目: 226行目:


* PD-CL の DHCPv6 Router Solicitation に対して、リレーエージェントで DHCPv6 サーバに転送します
* PD-CL の DHCPv6 Router Solicitation に対して、リレーエージェントで DHCPv6 サーバに転送します
* リレーエージェントが動作すると、対応するスタティックルートがインジェクションされます
* リレーエージェントが動作すると、対応するスタティックルートがインジェクション (挿入) されます


=== PD-CL ===
=== PD-CL ===
239行目: 249行目:


=== DHCPv6 サーバ ===
=== DHCPv6 サーバ ===
==== DHCPv6-SV ====
{| class="wikitable mw-collapsible mw-collapsed"
{| class="wikitable mw-collapsible mw-collapsed"
|+DHCPv6-SV コンフィグ
|+DHCPv6-SV コンフィグ
246行目: 258行目:
|-
|-
|DHCPv6 サーバ
|DHCPv6 サーバ
|<nowiki>DHCPv6-SV#show run | s ipv6 uni|ipv6 dhcp|Gi.*4|ipv6 local</nowiki>
|
ipv6 unicast-routing
DHCPv6-SV#show run | s ipv6 uni|ipv6 dhcp|Gi.*4|ipv6 local
 
ipv6 unicast-routing
ipv6 dhcp pool DHCPv6-PD01
 
ipv6 dhcp pool DHCPv6-PD01
prefix-delegation pool PD-POOL01
  prefix-delegation pool PD-POOL01
 
  link-address 2001:DB8:FD7::1/64
link-address 2001:DB8:FD7::1/64
  dns-server 2001:DB8:4860::8888
 
  domain-name example.com
dns-server 2001:DB8:4860::8888
 
interface GigabitEthernet4
domain-name example.com
  no ip address
 
  negotiation auto
interface GigabitEthernet4
  ipv6 address 2001:DB8:AE86:100::128/64
 
  ipv6 nd ra suppress all
no ip address
  ipv6 dhcp server
 
  no mop enabled
negotiation auto
  no mop sysid
 
ipv6 address 2001:DB8:AE86:100::128/64
ipv6 route ::/0 GigabitEthernet4 FE80::AE86:100:1
 
ipv6 local pool PD-POOL01 2001:DB8:CAFE::/48 56
ipv6 nd ra suppress all
 
ipv6 dhcp server
 
no mop enabled
 
no mop sysid
 
ipv6 route ::/0 GigabitEthernet4 FE80::AE86:100:1
 
ipv6 local pool PD-POOL01 2001:DB8:CAFE::/48 56
|ipv6 dhcp pool
|ipv6 dhcp pool
* 払い出すプール全体を設定
* 払い出すプール全体を設定
295行目: 296行目:
=== IPv6 スタティックルーティング ===
=== IPv6 スタティックルーティング ===
[[ファイル:20210919 DHCPv6-PD Diagram 01-Static Routing.png|代替文=IPv6_Static_Routing|なし|フレーム|IPv6_Static_Routing|リンク=http://hkatou.net/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:20210919_DHCPv6-PD_Diagram_01-Static_Routing.png]]
[[ファイル:20210919 DHCPv6-PD Diagram 01-Static Routing.png|代替文=IPv6_Static_Routing|なし|フレーム|IPv6_Static_Routing|リンク=http://hkatou.net/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:20210919_DHCPv6-PD_Diagram_01-Static_Routing.png]]
==== DHCPv6-SV ====
{| class="wikitable mw-collapsible mw-collapsed"
{| class="wikitable mw-collapsible mw-collapsed"
|+DHCPv6-SV コンフィグ
|+DHCPv6-SV コンフィグ
302行目: 305行目:
|-
|-
|IPv6 スタティックルーティング
|IPv6 スタティックルーティング
|<nowiki>DHCPv6-SV#show run | s ipv6 uni|ipv6 route|Gi.*4</nowiki>
|
ipv6 unicast-routing
DHCPv6-SV#show run | s ipv6 uni|ipv6 route|Gi.*4
 
ipv6 unicast-routing
interface GigabitEthernet4
 
interface GigabitEthernet4
no ip address
  no ip address
 
  negotiation auto
negotiation auto
  ipv6 address 2001:DB8:AE86:100::128/64
 
  ipv6 nd ra suppress all
ipv6 address 2001:DB8:AE86:100::128/64
  ipv6 dhcp server
 
  no mop enabled
ipv6 nd ra suppress all
  no mop sysid
 
ipv6 dhcp server
ipv6 route ::/0 GigabitEthernet4 FE80::AE86:100:1
 
no mop enabled
 
no mop sysid
 
ipv6 route ::/0 GigabitEthernet4 FE80::AE86:100:1
|ipv6 route
|ipv6 route
* DHCPv6-SV は Core 宛にデフォルトルートを設定
* DHCPv6-SV は Core 宛にデフォルトルートを設定
337行目: 334行目:
|-
|-
|IPv6 スタティックルーティング
|IPv6 スタティックルーティング
|<nowiki>Core#show run | s ipv6 uni|Gi.*3</nowiki>
|
ipv6 unicast-routing
Core#show run | s ipv6 uni|Gi.*3
 
ipv6 unicast-routing
interface GigabitEthernet3
 
interface GigabitEthernet3
no ip address
  no ip address
 
  negotiation auto
negotiation auto
  ipv6 address FE80::AE86:100:1 link-local
 
  ipv6 address 2001:DB8:AE86:100::1/64
ipv6 address FE80::AE86:100:1 link-local
  ipv6 nd ra suppress all
 
  ipv6 ospf 1 area 0.0.0.0
ipv6 address 2001:DB8:AE86:100::1/64
  no mop enabled
 
  no mop sysid
ipv6 nd ra suppress all
 
ipv6 ospf 1 area 0.0.0.0
 
no mop enabled
 
no mop sysid
|ipv6 address <address> link-local
|ipv6 address <address> link-local
* Core は DHCPv6-SV を収容する、ゲートウェイ用インターフェースを設定
* Core は DHCPv6-SV を収容する、ゲートウェイ用インターフェースを設定
377行目: 367行目:
|-
|-
|OSPFv3
|OSPFv3
|<nowiki>Core#show run | s Gi.*1|ipv6 uni|ipv6 router|Lo.*0</nowiki>
|
ipv6 unicast-routing
Core#show run | s Gi.*1|ipv6 uni|ipv6 router|Lo.*0
ipv6 unicast-routing
interface Loopback0
  ip address 1.1.1.1 255.255.255.255
  ipv6 address 2001:DB8:4860::8888/128
  ipv6 enable
  ipv6 ospf 1 area 0.0.0.0
interface GigabitEthernet1
  no ip address
  negotiation auto
  ipv6 address FE80::AE86:200:1 link-local
  ipv6 address 2001:DB8:AE86:200::1/64
  ipv6 ospf 1 area 0.0.0.0
  no mop enabled
  no mop sysid
ipv6 router ospf 1
  router-id 1.1.1.1
  passive-interface default
  no passive-interface GigabitEthernet1


interface Loopback0
|ipv6 ospf 1 area 0.0.0.0 / no passive-interface GigabitEthernet1
 
* Core は Gi1 で Dist と接続、OSPFv3 隣接関係を確立する
ip address 1.1.1.1 255.255.255.255
passive-interface default
 
ipv6 address 2001:DB8:4860::8888/128
 
ipv6 enable
 
ipv6 ospf 1 area 0.0.0.0
 
interface GigabitEthernet1
 
no ip address
 
negotiation auto
 
ipv6 address FE80::AE86:200:1 link-local
 
ipv6 address 2001:DB8:AE86:200::1/64
 
ipv6 ospf 1 area 0.0.0.0
 
no mop enabled
 
no mop sysid
 
ipv6 router ospf 1
 
router-id 1.1.1.1
 
passive-interface default
 
no passive-interface GigabitEthernet1
|ipv6 ospf 1 area 0.0.0.0 / no passive-interface GigabitEthernet1
* Core は Gi1 で Dist と接続、OSPFv3 隣接関係を確立する
passive-interface default
* Gi3 の DHCPv6-SV とは隣接関係を確立しないために、OSPFv3 で passive-interface default を設定する
* Gi3 の DHCPv6-SV とは隣接関係を確立しないために、OSPFv3 で passive-interface default を設定する
|}
|}
426行目: 404行目:
|-
|-
|OSPFv3
|OSPFv3
|<nowiki>Dist#show run | s Gi.*4|ipv6 uni|ipv6 router|Lo.*0</nowiki>
|
ipv6 unicast-routing
Dist#show run | s Gi.*4|ipv6 uni|ipv6 router|Lo.*0
ipv6 unicast-routing
interface Loopback0
  ip address 1.1.1.11 255.255.255.255
  ipv6 enable
  ipv6 ospf 1 area 0.0.0.0
interface GigabitEthernet4
  no ip address
  negotiation auto
  ipv6 address FE80::AE86:200:2 link-local
  ipv6 address 2001:DB8:AE86:200::2/64
  ipv6 ospf 1 area 0.0.0.0
  no mop enabled
  no mop sysid
ipv6 router ospf 1
  summary-prefix 2001:DB8:CAFE::/48
  router-id 1.1.1.11
  passive-interface default
  no passive-interface GigabitEthernet4
  redistribute static


interface Loopback0
|ipv6 ospf 1 area 0.0.0.0 / no passive-interface GigabitEthernet4
 
* Dist は Gi4 で Core と接続、OSPFv3 隣接関係を確立する
ip address 1.1.1.11 255.255.255.255
passive-interface default
 
* Gi1 の PD-CL と隣接関係を確立しないために、OSPFv3 で passive-interface default を設定する
ipv6 enable
 
ipv6 ospf 1 area 0.0.0.0
 
interface GigabitEthernet4
 
no ip address
 
negotiation auto
 
ipv6 address FE80::AE86:200:2 link-local
 
ipv6 address 2001:DB8:AE86:200::2/64
 
ipv6 ospf 1 area 0.0.0.0
 
no mop enabled
 
no mop sysid
 
ipv6 router ospf 1
 
summary-prefix 2001:DB8:CAFE::/48
 
router-id 1.1.1.11
 
passive-interface default
 
no passive-interface GigabitEthernet4
 
redistribute static
|ipv6 ospf 1 area 0.0.0.0 / no passive-interface GigabitEthernet4
* Dist は Gi4 で Core と接続、OSPFv3 隣接関係を確立する
passive-interface default
* Gi1 の PD-CL と隣接関係を確立しないために、OSPFv3 で passive-interface default を設定する
|}
|}
==== ルート集約 ====
=== ルート集約 ===
===== Dist =====
==== Dist ====
{| class="wikitable mw-collapsible mw-collapsed"
{| class="wikitable mw-collapsible mw-collapsed"
|+Dist コンフィグ
|+Dist コンフィグ
479行目: 444行目:
|OSPFv3
|OSPFv3
ルート集約
ルート集約
|<nowiki>Dist#show run | s Gi.*1|ipv6 uni|ipv6 router|Lo.*0</nowiki>
|
ipv6 unicast-routing
Dist#show run | s Gi.*1|ipv6 uni|ipv6 router|Lo.*0
ipv6 unicast-routing
interface Loopback0
  ip address 1.1.1.11 255.255.255.255
  ipv6 enable
  ipv6 ospf 1 area 0.0.0.0
interface GigabitEthernet1
  no ip address
  negotiation auto
  ipv6 address FE80:DB8:FD7::1 link-local
  ipv6 address 2001:DB8:FD7::1/64
  ipv6 enable
  ipv6 nd prefix default no-advertise
  ipv6 nd managed-config-flag
  ipv6 nd other-config-flag
  ipv6 dhcp relay destination 2001:DB8:AE86:100::128
  ipv6 dhcp relay source-interface GigabitEthernet1
  ipv6 ospf 1 area 0.0.0.0
  no mop enabled
  no mop sysid
ipv6 router ospf 1
  summary-prefix 2001:DB8:CAFE::/48
  router-id 1.1.1.11
  passive-interface default
  no passive-interface GigabitEthernet4
  redistribute static


interface Loopback0
|ipv6 ospf 1 area 0.0.0.0
 
* OSPFv3 にこのインターフェースのネットワークを広報するため、エリアを設定
ip address 1.1.1.11 255.255.255.255
summary-prefix
 
* Dist は Core に OSPFv3 ルートを広報する際、/56 サブネットルートを集約して、/48 集約ルートで広報
ipv6 enable
redistribute static
 
* PD ルートは Cisco の場合スタティックルートとして登録されるため、再配布を設定することで別の OSPFv3 ルータへルートを配布
ipv6 ospf 1 area 0.0.0.0
|}
 
=== DHCPv6-PD リレーエージェント ===
interface GigabitEthernet1
==== Dist ====
 
{| class="wikitable mw-collapsible mw-collapsed"
no ip address
|+Dist コンフィグ
 
!プロトコル
negotiation auto
!コンフィグ
 
!解説
ipv6 address FE80:DB8:FD7::1 link-local
|-
 
|DHCPv6
ipv6 address 2001:DB8:FD7::1/64
リレーエージェント
 
|
ipv6 enable
Dist#show run int gi 1
 
Building configuration...
ipv6 nd prefix default no-advertise
Current configuration?: 406 bytes
 
<nowiki>!
ipv6 nd managed-config-flag
interface GigabitEthernet1
 
  no ip address
ipv6 nd other-config-flag
  negotiation auto
  ipv6 address FE80:DB8:FD7::1 link-local
  ipv6 address 2001:DB8:FD7::1/64
  ipv6 enable
  ipv6 nd prefix default no-advertise
  ipv6 nd managed-config-flag
  ipv6 nd other-config-flag
  ipv6 dhcp relay destination 2001:DB8:AE86:100::128
  ipv6 dhcp relay source-interface GigabitEthernet1
  ipv6 ospf 1 area 0.0.0.0
  no mop enabled
  no mop sysid
end</nowiki>
|ipv6 address 2001:DB8:FD7::1/64
* DHCPv6 リレーエージェント link-address に使用す
* DHCPv6-SV で該当する link-address の Pool からプレフィックスが払い出される
* 複数の DHCPv6 リレーエージェント機器 (Dist) が存在した場合、DHCPv6 サーバでプールも複数必要なため、リレーエージェントを見分けるための情報として必要
ipv6 nd managed-config-flag
* ipv6 のアドレス割当を Dist の ND RA (Neighbor Discovery Router Advertisement) から、DHCPv6 サーバへ変更する
ipv6 nd other-config-flag
* DNS サーバの情報を DHCPv6 サーバに問い合わせる
ipv6 dhcp relay destination
* DHCPv6-SV のグローバル ユニキャスト アドレスを指定する
ipv6 dhcp relay source-interface
* DHCPv6-SV にリレーする際の送信元アドレスのインターフェースを指定する
|-
|DHCPv6-PD
ルートインジェクション
|
Dist#show run all | s ipv6 dhcp iapd-route-add
ipv6 dhcp iapd-route-add


ipv6 dhcp relay destination 2001:DB8:AE86:100::128
|ipv6 dhcp iapd-route-add


ipv6 dhcp relay source-interface GigabitEthernet1
* PD が払い出されると、自動でスタティックルートを挿入します
 
* デフォルトで有効です
ipv6 ospf 1 area 0.0.0.0
|}
 
=== DHCPv6-PD クライアント ===
no mop enabled
==== PD-CL ====
 
{| class="wikitable mw-collapsible mw-collapsed"
no mop sysid
|+PD-CL コンフィグ
 
ipv6 router ospf 1
 
summary-prefix 2001:DB8:CAFE::/48
 
router-id 1.1.1.11
 
passive-interface default
 
no passive-interface GigabitEthernet4
 
redistribute static
|ipv6 ospf 1 area 0.0.0.0
* OSPFv3 にこのインターフェースのネットワークを広報するため、エリアを設定
summary-prefix
* Dist は Core に OSPFv3 ルートを広報する際、/56 サブネットルートを集約して、/48 集約ルートで広報
redistribute static
* PD ルートは Cisco の場合スタティックルートとして登録されるため、再配布を設定することで別の OSPFv3 ルータへルートを配布
|}
=== DHCPv6-PD リレーエージェント ===
{| class="wikitable mw-collapsible mw-collapsed"
|+Dist コンフィグ
!プロトコル
!プロトコル
!コンフィグ
!コンフィグ
!解説
!解説
|-
|-
|DHCPv6
|DHCPv6-PD
リレーエージェント
クライアント
|Dist#show run int gi 1
|
Building configuration...
PD-CL#show run | s ipv6 uni|Gi.*4
ipv6 unicast-routing
interface GigabitEthernet4
  no ip address
  negotiation auto
  ipv6 address autoconfig default
  ipv6 nd ra suppress all
  ipv6 dhcp client pd PD-PREFIX
  ipv6 dhcp client request vendor
  no mop enabled
  no mop sysid


Current configuration : 406 bytes
|ipv6 address autoconfig default
 
* ipv6 アドレスを自動設定
<nowiki>!</nowiki>
* default オプションを付けるとデフォルトルートとして使用
 
ipv6 dhcp client pd PD-PREFIX
interface GigabitEthernet1
* DHCPv6 PD クライアントとして設定
* PD-PREFIX という名前で、サブネット分割する際の集約プレフィックスを登録
|}
=== DHCPv6-PD SLAAC ゲートウェイ ===
==== PD-CL ====
{| class="wikitable mw-collapsible mw-collapsed"
|+PD-CL コンフィグ
!プロトコル
!コンフィグ
!解説
|-
|DHCPv6-PD
クライアント
|
PD-CL#show run | s ipv6 uni|ipv6 dhcp pool|Gi.*1
ipv6 unicast-routing
ipv6 dhcp pool SLAAC
  import dns-server
  import domain-name
interface GigabitEthernet1
  no ip address
  negotiation auto
  ipv6 address PD-PREFIX?::1/64
  ipv6 nd other-config-flag
  ipv6 dhcp server SLAAC
  no mop enabled
  no mop sysid


no ip address
|ipv6 dhcp pool
* DHCPv6-PD で受信した DNS サーバとドメイン名を SLAAC プールで使用
ipv6 address PD-PREFIX ::1/64
* Gi1 で /56 集約ルートである PD-PREFIX から /64 にサブネット分割し、::1/64 アドレスを割当
|}
=== IPv6 SLAAC クライアント ===
==== SLAAC ====
{| class="wikitable mw-collapsible mw-collapsed"
|+SLAAC コンフィグ
!プロトコル
!コンフィグ
!解説
|-
|IPv6 クライアント
|
SLAAC#show run | s ipv6 uni|Gi.*4
ipv6 unicast-routing
interface GigabitEthernet4
  no ip address
  negotiation auto
  ipv6 address autoconfig default
  no mop enabled
  no mop sysid


negotiation auto
|ipv6 address autoconfig default
* ipv6 アドレスを自動設定
* default オプションを付けるとデフォルトルートとして使用
|}
==== IPv6 SLAAC クライアントのバッドプラクティス ====
RA に M フラグの存在しない PD-CL に対し、ipv6 address dhcp を設定しないこと
* M フラグ = アドレス or プレフィックスをルータ RA -> DHCPv6 サーバからの払い出しに変更する機能<br />
== 動作確認 - ホスト別 show コマンドリスト ==


ipv6 address FE80:DB8:FD7::1 link-local
=== DHCPv6-SV ===


ipv6 address 2001:DB8:FD7::1/64
* show ipv6 dhcp binding
* show ipv6 dhcp pool


ipv6 enable
=== Core ===


ipv6 nd prefix default no-advertise
* show ipv6 route


ipv6 nd managed-config-flag
=== Dist ===


ipv6 nd other-config-flag
* show ipv6 ospf summary-prefix
* show ipv6 dhcp relay binding
* show ipv6 route static


ipv6 dhcp relay destination 2001:DB8:AE86:100::128
=== PD-CL ===


ipv6 dhcp relay source-interface GigabitEthernet1
* show ipv6 dhcp interface GigabitEthernet 4
* show ipv6 interface GigabitEthernet 1 prefix
* show ipv6 dhcp interface GigabitEthernet 1
* show ipv6 dhcp pool


ipv6 ospf 1 area 0.0.0.0
=== SLAAC ===


no mop enabled
* show ipv6 route
* show ip name-servers


no mop sysid
== 動作確認 - show コマンド ==
===DHCPv6-SV===
====show ipv6 dhcp binding====
{| class="wikitable mw-collapsible mw-collapsed"
|+DHCPv6-SV 確認コマンド
!プロトコル
!show コマンド
!確認ポイント
|-
| rowspan="2" |DHCPv6
サーバ
|
DHCPv6-SV#'''show ipv6 dhcp binding'''
Client: FE80::5200:FF:FE04:3
  DUID: 00030001001E14D9FB00
  Username: unassigned
  VRF: default
  Interface: relayed
  IA PD: IA ID 0x000A0001, T1 302400, T2 483840
  Prefix: 2001:DB8:CAFE::/56
      preferred lifetime 604800, valid lifetime 2592000
      expires at Oct 19 2021 12:07 AM (2587060 seconds)
|/56 がバインディングテーブルに存在すること


end
|ipv6 address 2001:DB8:FD7::1/64
* DHCPv6 リレーエージェント link-address に使用す
* DHCPv6-SV で該当する link-address の Pool からプレフィックスが払い出される
* 複数の DHCPv6 リレーエージェント機器 (Dist) が存在した場合、DHCPv6 サーバでプールも複数必要なため、リレーエージェントを見分けるための情報として必要
ipv6 nd managed-config-flag
* ipv6 のアドレス割当を Dist の ND RA (Neighbor Discovery Router Advertisement) から、DHCPv6 サーバへ変更する
ipv6 nd other-config-flag
* DNS サーバの情報を DHCPv6 サーバに問い合わせる
ipv6 dhcp relay destination
* DHCPv6-SV のグローバル ユニキャスト アドレスを指定する
ipv6 dhcp relay source-interface
* DHCPv6-SV にリレーする際の送信元アドレスのインターフェースを指定する
|-
|-
|DHCPv6-PD
|
ルートインジェクション
DHCPv6-SV#show ipv6 dhcp pool
|<nowiki>Dist#show run all | s ipv6 dhcp iapd-route-add</nowiki>
DHCPv6 pool: DHCPv6-PD01
ipv6 dhcp iapd-route-add
  Prefix pool: PD-POOL01
|ipv6 dhcp iapd-route-add
  Link-address prefix: 2001:DB8:FD7::1/64
 
        preferred lifetime 604800, valid lifetime 2592000
* PD が払い出されると、自動でスタティックルートを挿入します
  DNS server: 2001:DB8:4860::8888
* デフォルトで有効です
  Domain name: example.com
  Active clients: 1
|link-address が PD ルートを払い出す Dist のインターフェースアドレスと一致していること
|}
|}
=== DHCPv6-PD クライアント ===
===Core===
====show ipv6 route====
{| class="wikitable mw-collapsible mw-collapsed"
{| class="wikitable mw-collapsible mw-collapsed"
|+PD-CL コンフィグ
|+Core 確認コマンド
!プロトコル
!プロトコル
!コンフィグ
!show コマンド
!解説
!確認ポイント
|-
|-
|DHCPv6-PD
|OSPFv3
クライアント
|Core#'''show ipv6 route ospf'''
|<nowiki>PD-CL#show run | s ipv6 uni|Gi.*4</nowiki>
IPv6 Routing Table - default - 7 entries
ipv6 unicast-routing


interface GigabitEthernet4
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route


no ip address
       B - BGP, R - RIP, H - NHRP, I1 - ISIS L1


negotiation auto
       I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP


ipv6 address autoconfig default
       EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination


ipv6 nd ra suppress all
       NDr - Redirect, RL - RPL, O - OSPF Intra, OI - OSPF Inter


ipv6 dhcp client pd PD-PREFIX
       OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1


ipv6 dhcp client request vendor
       ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations


no mop enabled
       ld - LISP dyn-eid, lA - LISP away, le - LISP extranet-policy


no mop sysid
       lp - LISP publications, a - Application, m - OMP
|ipv6 address autoconfig default
* ipv6 アドレスを自動設定
* default オプションを付けるとデフォルトルートとして使用
ipv6 dhcp client pd PD-PREFIX
* DHCPv6 PD クライアントとして設定
* PD-PREFIX という名前で、サブネット分割する際の集約プレフィックスを登録
|}
=== DHCPv6-PD SLAAC ゲートウェイ ===
{| class="wikitable mw-collapsible mw-collapsed"
|+PD-CL コンフィグ
!プロトコル
!コンフィグ
!解説
|-
|DHCPv6-PD
クライアント
|<nowiki>PD-CL#show run | s ipv6 uni|ipv6 dhcp pool|Gi.*1</nowiki>
ipv6 unicast-routing


ipv6 dhcp pool SLAAC
O   2001:DB8:FD7::/64 [110/2]


import dns-server
     via FE80::AE86:200:2, GigabitEthernet1


import domain-name
OE2 2001:DB8:CAFE::/48 [110/20]


interface GigabitEthernet1
     via FE80::AE86:200:2, GigabitEthernet1
|dist から以下のルートを OSPFv3 で学習していること


no ip address
* /64 link-address
* /48 DHCPv6-PD 集約ルート


negotiation auto
/56 の DHCPv6-PD サブネットルートを受信している場合、Dist で集約ルートに失敗しています


ipv6 address PD-PREFIX ::1/64
|}
===Dist===
====OSPFv3====
=====show ipv6 ospf summary-prefix=====
{| class="wikitable mw-collapsible mw-collapsed"
|+Dist 確認コマンド
!プロトコル
!show コマンド
!確認ポイント
|-
| rowspan="2" |OSPFv3
|
Dist#'''show ipv6 ospf summary-prefix'''
            OSPFv3 Router with ID (1.1.1.11) (Process ID 1)
2001:DB8:CAFE::'''/48'''  Metric 20, External metric type 2, Tag 0
|/56 スタティックルートが、集約して /48 で再配布されていること
 
|-
|
Dist#'''show ipv6 route ospf'''
IPv6 Routing Table - default - 9 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
        B - BGP, R - RIP, H - NHRP, I1 - ISIS L1
        I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP
        EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination
        NDr - Redirect, RL - RPL, O - OSPF Intra, OI - OSPF Inter
        OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
        ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations
        ld - LISP dyn-eid, lA - LISP away, le - LISP extranet-policy
        lp - LISP publications, a - Application, m - OMP
O  '''2001:DB8:4860::8888/128''' [110/1]
      via FE80::AE86:200:1, GigabitEthernet4
O  '''2001:DB8:AE86:100::/64''' [110/2]
      via FE80::AE86:200:1, GigabitEthernet4
O  '''2001:DB8:CAFE::/48''' [254/20]
      via Null0, directly connected
|以下を Core から受信していること
*/64 サーバ収容セグメント
*/128 インターネット模擬 DNS サーバ IP
以下が Null0 ルートとして登録されていること
*/48 DHCPv6-PD 集約ルート


ipv6 nd other-config-flag


ipv6 dhcp server SLAAC
/48 DHCPv6-PD 集約ルートは、以下の条件で自動登録されます。
*/56 で PD ルートを払い出し
*OSPFv3 で summary-prefix を設定


no mop enabled


no mop sysid
これは以下の効果があります。
|ipv6 dhcp pool
*OSPFv3 で集約ルートを広報することで、ルーティングテーブルの消費量を削減
* DHCPv6-PD で受信した DNS サーバとドメイン名を SLAAC プールで使用
*存在しない /56 ルート宛のトラフィックを受信した際、ASIC などハードウェア レベルでパケットをドロップ
ipv6 address PD-PREFIX ::1/64
**Null0 が存在しない + 該当するトラフィックを受信した場合、デフォルトルートで ping/pong ルーティングによるルーティング ループが発生し、CPU 使用率が高騰します
* Gi1 で /56 集約ルートである PD-PREFIX から /64 にサブネット分割し、::1/64 アドレスを割当
|-
| rowspan="2" |DHCPv6-PD
リレーエージェント
|
Dist#'''show ipv6 dhcp relay binding'''
Relay Bindings associated with default vrf:
Prefix: '''2001:DB8:CAFE::/56''' (GigabitEthernet1)
  DUID: 00030001001E14D9FB00
  IAID: 655361
  lifetime: 2592000
  expiration: 01:34:35 UTC Oct 19 2021
Summary:
  Total number of Relay bindings = 1
  Total number of IAPD bindings = 1
  Total number of IANA bindings = 0
  Total number of Relay bindings added by Bulk lease = 0
|/56 PD ルートと同じプレフィックスを払い出していること
|-
|
Dist#'''show ipv6 route static'''
IPv6 Routing Table - default - 8 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
        B - BGP, R - RIP, H - NHRP, I1 - ISIS L1
        I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP
        EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination
        NDr - Redirect, RL - RPL, O - OSPF Intra, OI - OSPF Inter
        OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
        ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations
        ld - LISP dyn-eid, lA - LISP away, le - LISP extranet-policy
        lp - LISP publications, a - Application, m - OMP
S  '''2001:DB8:CAFE::/56''' [1/0]
      via FE80::5200:FF:FE04:3, GigabitEthernet1
|DHCPv6 Relay された際、スタティックルートが登録されます
PD クライアント宛 /56 スタティックルートが登録されていること
|}
|}
=== IPv6 SLAAC クライアント ===
===PD-CL ===
==== DHCPv6-PD クライアント====
{| class="wikitable mw-collapsible mw-collapsed"
{| class="wikitable mw-collapsible mw-collapsed"
|+SLAAC コンフィグ
|+PD-CL 確認コマンド
!プロトコル
!プロトコル
!コンフィグ
!show コマンド
!解説
!確認ポイント
|-
|-
|IPv6 クライアント
| rowspan="2" |DHCPv6-PD
|<nowiki>SLAAC#show run | s ipv6 uni|Gi.*4</nowiki>
クライアント
ipv6 unicast-routing
|
PD-CL#'''show ipv6 dhcp interface GigabitEthernet 4'''
GigabitEthernet4 is in client mode
  Prefix State is OPEN (0)
  Information refresh timer expires in 21:20:06
  Renew will be sent in 3d09h
  Address State is IDLE
  List of known servers:
    Reachable via address: FE80:DB8:FD7::1
    DUID: 00030001001E14471B00
    Preference: 0
    Configuration parameters:
      IA PD: IA ID 0x000A0001, T1 302400, T2 483840
        Prefix: '''2001:DB8:CAFE::/56'''
                preferred lifetime 604800, valid lifetime 2592000
                expires at Oct 19 2021 04:09 AM (2582406 seconds)
      DNS server: '''2001:4860:4860::8888'''
      Domain name: example.com
      Information refresh time: 0
  Prefix name: '''PD-PREFIX'''
  Prefix Rapid-Commit: disabled
  Address Rapid-Commit: disabled
|/56 プレフィックスを受信していること
DNS サーバアドレスが DHCPv6 サーバで設定したものと同一であること


interface GigabitEthernet4
ドメイン名が DHCPv6 サーバで設定したものと同一であること


no ip address
下位にサブネット分割するための、プレフィックス名があること


negotiation auto
|-
|
PD-CL#'''show ipv6 interface GigabitEthernet 1 prefix'''
IPv6 Prefix Advertisements GigabitEthernet1
Codes for 1st column:
        A - Address, P - Prefix-Advertisement, O - Pool
        U - Per-user prefix
Codes for 2nd column and above:
        D - Default
        N - Not advertised, C - Calendar
PD default [LA] Valid lifetime 2592000, preferred lifetime 604800
A 2001:DB8:CAFE::/64 [LA] Valid lifetime 2592000, preferred lifetime 604800


ipv6 address autoconfig default
|下位側インターフェースに PRE-PREFIX /56 を上位に使用した、/64 プレフィックスを割り当てていること
|-
| rowspan="2" |DHCPv6 サーバ
|
PD-CL#'''show ipv6 dhcp interface GigabitEthernet 1'''
GigabitEthernet1 is in server mode
  Using pool: SLAAC
  Preference value: 0
  Hint from client: ignored
  Rapid-Commit: disabled
|Gi1 に pool 名を指定した場合、pool 名が出力されます
Automatic で Pool 名を指定しない場合もあります
|-
|
PD-CL#'''show ipv6 dhcp pool'''
DHCPv6 pool: SLAAC
  Imported DNS server: 2001:DB8:4860::8888
  Imported Domain name: example.com
  Active clients: 0
|Pool に DHCPv6 サーバから受信した
*DNS サーバ
*ドメイン名
が設定されていること
|}
===SLAAC===
{| class="wikitable mw-collapsible mw-collapsed"
|+SLAAC 確認コマンド
!プロトコル
!show コマンド
!確認ポイント
|-
| rowspan="2" |IPv6 クライアント
|
SLAAC#'''show ipv6 route'''
IPv6 Routing Table - default - 4 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
        B - BGP, R - RIP, H - NHRP, I1 - ISIS L1
        I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP
        EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination
        NDr - Redirect, RL - RPL, O - OSPF Intra, OI - OSPF Inter
        OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
        ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations
        ld - LISP dyn-eid, lA - LISP away, le - LISP extranet-policy
        lp - LISP publications, a - Application, m - OMP
ND  '''::/0''' [2/0]
      via FE80::5200:FF:FE04:0, GigabitEthernet4
NDp '''2001:DB8:CAFE::/64''' [2/0]
      via GigabitEthernet4, directly connected
L  2001:DB8:CAFE:0:5200:FF:FE05:3/128 [0/0]
      via GigabitEthernet4, receive
L  FF00::/8 [0/0]
      via Null0, receive


no mop enabled
|IPv6 デフォルトルートを持っていること
PD-CL でサブネット分割されたグローバルユニキャストネットワークアドレスを持っていること
 
|-
|
SLAAC#'''show ip name-servers'''
2001:DB8:4860::8888


no mop sysid
|DHCPV6-PD -> PD-CL 経由で DNS サーバを受信できていること
|ipv6 address autoconfig default
* ipv6 アドレスを自動設定
* default オプションを付けるとデフォルトルートとして使用
|}
|}
==== IPv6 SLAAC クライアントのバッドプラクティス ====
RA に M フラグの存在しない PD-CL に対し、ipv6 address dhcp を設定しないこと
* M フラグ = アドレス or プレフィックスをルータ RA -> DHCPv6 サーバからの払い出しに変更する機能<br />
== 動作確認 - ホスト別 show コマンドリスト ==


=== DHCPv6-SV ===
== 疎通確認 ==
疎通不可の場合、traceroute で不通となっている箇所を特定し、該当するプロトコルを切り分けて障害箇所を特定します。
 
=== Dist プロビジョニング用疎通確認 ===
DHCPv6 プロビジョニングに必要な疎通確認は、以下になります。


* show ipv6 dhcp binding
==== Dist Gi4 -> DHCPv6-SV : ping 2001:DB8:AE86:100::128 ====
* show ipv6 dhcp pool


=== Core ===
* 失敗する場合、Core と接続する OSPFv3 P2P アドレスで、OSPFv3 の広報に失敗していないか確認します


* show ipv6 route
==== Dist Gi1 -> DHCPv6-SV : ping 2001:DB8:AE86:100::128 source Gi1 ====


=== Dist ===
* 失敗する場合、PD-CL 収容インターフェースのアドレスで、OSPFv3 の広報に失敗していないか確認します
* DHCPv6 の払い出しの前提条件となります


* show ipv6 ospf summary-prefix
=== PD-CL / SLAAC  プロビジョニング疎通確認 ===
* show ipv6 dhcp relay binding
DHCPv6 プロビジョニング確認に必要な疎通確認は、以下になります。
* show ipv6 route static


=== PD-CL ===
==== PD-CL / SLAAC Gi4 -> DHCPv6-SV : ping 2001:DB8:AE86:100::128  ====


* show ipv6 dhcp interface GigabitEthernet 4
* 失敗する場合、以下を確認します
* show ipv6 interface GigabitEthernet 1 prefix
** PD-CL 収容インターフェースのアドレスで、OSPFv3 の広報に失敗していないか
* show ipv6 dhcp interface GigabitEthernet 1
** PD-CL でデフォルトルートを持っているか
* show ipv6 dhcp pool


=== SLAAC ===
=== PD-CL / SLAAC サービス疎通確認 ===
サービス確認に必要な疎通確認は、以下になります。


* show ipv6 route
==== PD-CL / SLAAC Gi4 -> Core Lo0 : ping 2001:DB8:AE86:100::128 ====
* show ip name-servers


== 動作確認 - show コマンド ==
* 失敗する場合、以下を確認します
===DHCPv6-SV===
** PD-CL 収容インターフェースのアドレスで、OSPFv3 の広報に失敗していないか
====show ipv6 dhcp binding====
** PD-CL でデフォルトルートを持っているか
{| class="wikitable mw-collapsible mw-collapsed"
** Core で ::8888 のアドレスを OSPFv3 で広報しているか
|+DHCPv6-SV 確認コマンド
!プロトコル
!show コマンド
!確認ポイント
|-
| rowspan="2" |DHCPv6
サーバ
|DHCPv6-SV#'''show ipv6 dhcp binding'''
Client: FE80::5200:FF:FE04:3


  DUID: 00030001001E14D9FB00


  Username : unassigned
== パケットキャプチャ ==
以下の手順で採取しました。


  VRF : default
# PD-CL Gi4 を shutdown
# write memory
# reload
# 各所でキャプチャ開始
# PD-CL Gi4 no shutdown


  Interface : relayed
再起動しない場合、以前取得していたプレフィックスを再度要求する、rebind メッセージがキャプチャできます。


  IA PD: IA ID 0x000A0001, T1 302400, T2 483840
=== DHCPv6-SV Gi4 [[ファイル:DHCPv6-SV Gi4.pcapng|代替文=DHCPv6-SV Gi4 Capture|フレームなし]]===


    Prefix: 2001:DB8:CAFE::/56
==== 01-DHCPv6 Relay Forward ====
 
<syntaxhighlight lang="diff" line="1">
            preferred lifetime 604800, valid lifetime 2592000
Frame 1: 231 bytes on wire (1848 bits), 231 bytes captured (1848 bits) on interface -, id 0
 
Ethernet II, Src: 50:00:00:02:00:02 (50:00:00:02:00:02), Dst: 50:00:00:01:00:03 (50:00:00:01:00:03)
            expires at Oct 19 2021 12:07 AM (2587060 seconds)
Internet Protocol Version 6, Src: 2001:db8:fd7::1, Dst: 2001:db8:ae86:100::128
|/56 がバインディングテーブルに存在すること
User Datagram Protocol, Src Port: 547, Dst Port: 547
 
DHCPv6
|-
    Message type: Relay-forw (12)
|DHCPv6-SV#'''show ipv6 dhcp pool'''
    Hopcount: 0
DHCPv6 pool: DHCPv6-PD01
    Link address: 2001:db8:fd7::1
 
    Peer address: fe80::5200:ff:fe04:3
  Prefix pool: PD-POOL01
    Relay Message
 
        Option: Relay Message (9)
  Link-address prefix: 2001:DB8:FD7::1/64
        Length: 84
 
        DHCPv6
               preferred lifetime 604800, valid lifetime 2592000
            Message type: Solicit (1)
 
            Transaction ID: 0x17cbbf
  DNS server: 2001:DB8:4860::8888
            Elapsed time
 
                Option: Elapsed time (8)
  Domain name: example.com
                Length: 2
 
                Elapsed time: 0ms
  Active clients: 1
            Client Identifier
|link-address が PD ルートを払い出す Dist のインターフェースアドレスと一致していること
                Option: Client Identifier (1)
|}
                Length: 10
===Core===
                DUID: 00030001001e14d9fb00
====show ipv6 route====
                DUID Type: link-layer address (3)
{| class="wikitable mw-collapsible mw-collapsed"
                Hardware type: Ethernet (1)
|+Core 確認コマンド
                Link-layer address: 00:1e:14:d9:fb:00
!プロトコル
            User Class
!show コマンド
                Option: User Class (15)
!確認ポイント
                Length: 10
|-
            Vendor Class
|OSPFv3
                Option: Vendor Class (16)
|Core#'''show ipv6 route ospf'''
                Length: 14
IPv6 Routing Table - default - 7 entries
                Enterprise ID: ciscoSystems (9)
 
                vendor-class-data: CSR1000V
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
            Option Request
 
                Option: Option Request (6)
       B - BGP, R - RIP, H - NHRP, I1 - ISIS L1
                Length: 8
 
                Requested Option code: Identity Association for Prefix Delegation (25)
       I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP
                Requested Option code: DNS recursive name server (23)
 
                Requested Option code: Domain Search List (24)
       EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination
                Requested Option code: Boot File URL (59)
 
            Identity Association for Prefix Delegation
       NDr - Redirect, RL - RPL, O - OSPF Intra, OI - OSPF Inter
                Option: Identity Association for Prefix Delegation (25)
 
                Length: 12
       OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
                IAID: 000a0001
                T1: 0
                T2: 0
    Client Link-Layer Address
        Option: Client Link-Layer Address (79)
        Length: 8
    Interface-Id
        Option: Interface-Id (18)
        Length: 5
        Interface-ID: 0103476931
    Remote Identifier
        Option: Remote Identifier (37)
        Length: 22
        Enterprise ID: ciscoSystems (9)
        Remote-ID: 020000000000000a00030001001ee5c71700


       ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations
</syntaxhighlight>003 : Dist の Gi1 2001:db8:fd7::1 を送信元 IPv6 , DHCPv6-SV の Gi4 2001:db8:ae86:100::128 を宛先 IPv6 に指定しています


       ld - LISP dyn-eid, lA - LISP away, le - LISP extranet-policy
006 : Relay Forward メッセージを示しています


       lp - LISP publications, a - Application, m - OMP
009 : PD-CL Gi4 Link-local アドレス


O   2001:DB8:FD7::/64 [110/2]
020-026 : DUID は DHCPv6 のクライアント固有識別子を示す  DUID Type が 3 になっており、リンクレイヤーアドレスを元にしてアドレスやプレフィックスを払い出す DUID-LL を意味する ([https://datatracker.ietf.org/doc/html/rfc8415 RFC8415])


     via FE80::AE86:200:2, GigabitEthernet1
026 : DHCPv6-PD クライアントの MAC アドレス


OE2 2001:DB8:CAFE::/48 [110/20]
035-41 : 取得したい アドレス or プレフィックス、DNS サーバ IP など


     via FE80::AE86:200:2, GigabitEthernet1
042-47 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633]  IA-PD (Identity Association for Prefix Delegation) オプション
|dist から以下のルートを OSPFv3 で学習していること


* /64 link-address
==== 02-DHCPv6 Relay Reply ====
* /48 DHCPv6-PD 集約ルート
<syntaxhighlight lang="diff" line="1">
 
Frame 2: 223 bytes on wire (1784 bits), 223 bytes captured (1784 bits) on interface -, id 0
/56 の DHCPv6-PD サブネットルートを受信している場合、Dist で集約ルートに失敗しています
Ethernet II, Src: 50:00:00:01:00:03 (50:00:00:01:00:03), Dst: 50:00:00:02:00:02 (50:00:00:02:00:02)
 
Internet Protocol Version 6, Src: 2001:db8:ae86:100::128, Dst: 2001:db8:fd7::1
|}
User Datagram Protocol, Src Port: 547, Dst Port: 547
===Dist===
DHCPv6
====OSPFv3====
    Message type: Relay-reply (13)
=====show ipv6 ospf summary-prefix=====
    Hopcount: 0
{| class="wikitable mw-collapsible mw-collapsed"
    Link address: 2001:db8:fd7::1
|+Dist 確認コマンド
    Peer address: fe80::5200:ff:fe04:3
!プロトコル
    Relay Message
!show コマンド
        Option: Relay Message (9)
!確認ポイント
        Length: 114
|-
        DHCPv6
| rowspan="2" |OSPFv3
            Message type: Advertise (2)
|Dist#'''show ipv6 ospf summary-prefix'''
            Transaction ID: 0x17cbbf
            OSPFv3 Router with ID (1.1.1.11) (Process ID 1)
            Server Identifier
 
                Option: Server Identifier (2)
'''2001:DB8:CAFE::/48'''  Metric 20, External metric type 2, Tag 0
                Length: 10
|/56 スタティックルートが、集約して /48 で再配布されていること
                DUID: 00030001001e14471b00
 
                DUID Type: link-layer address (3)
|-
                Hardware type: Ethernet (1)
|Dist#'''show ipv6 route ospf'''
                Link-layer address: 00:1e:14:47:1b:00
IPv6 Routing Table - default - 9 entries
            Client Identifier
 
                Option: Client Identifier (1)
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
                Length: 10
 
                DUID: 00030001001e14d9fb00
       B - BGP, R - RIP, H - NHRP, I1 - ISIS L1
                DUID Type: link-layer address (3)
 
                Hardware type: Ethernet (1)
       I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP
                Link-layer address: 00:1e:14:d9:fb:00
 
            Identity Association for Prefix Delegation
       EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination
                Option: Identity Association for Prefix Delegation (25)
 
                Length: 41
       NDr - Redirect, RL - RPL, O - OSPF Intra, OI - OSPF Inter
                IAID: 000a0001
 
                T1: 302400
       OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
                T2: 483840
 
                IA Prefix
       ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations
                    Option: IA Prefix (26)
                    Length: 25
                    Preferred lifetime: 604800
                    Valid lifetime: 2592000
                    Prefix length: 56
                    Prefix address: 2001:db8:cafe::
            DNS recursive name server
                Option: DNS recursive name server (23)
                Length: 16
                1 DNS server address: 2001:4860:4860::8888
            Domain Search List
                Option: Domain Search List (24)
                Length: 13
                Domain name suffix search list
    Interface-Id
        Option: Interface-Id (18)
        Length: 5
        Interface-ID: 0103476931


       ld - LISP dyn-eid, lA - LISP away, le - LISP extranet-policy
</syntaxhighlight>003 : DHCPv6-SV の Gi4 2001:db8:ae86:100::128 を送信元 IPv6 , Dist の Gi1 2001:db8:fd7::1 を宛先 IPv6 に指定しています


       lp - LISP publications, a - Application, m - OMP
006 : Relay-Reply メッセージを示しています


O   2001:DB8:4860::8888/128 [110/1]
009 : PD-CL Gi4 Link-local アドレス


     via FE80::AE86:200:1, GigabitEthernet4
029 : DHCPv6-PD クライアントの MAC アドレス


O   2001:DB8:AE86:100::/64 [110/2]
030-42 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633] IA-PD オプション 取得したい アドレス or プレフィックス、DNS サーバ IP など


     via FE80::AE86:200:1, GigabitEthernet4
043-46 : DNS サーバ


O   2001:DB8:CAFE::/48 [254/20]
047-50 : ドメイン検索リスト


     via Null0, directly connected
==== 03-DHCPv6 Relay Forward ====
|以下を Core から受信していること
<syntaxhighlight lang="diff" line="1">
*/64 サーバ収容セグメント
Frame 3: 274 bytes on wire (2192 bits), 274 bytes captured (2192 bits) on interface -, id 0
*/128 インターネット模擬 DNS サーバ IP
Ethernet II, Src: 50:00:00:02:00:02 (50:00:00:02:00:02), Dst: 50:00:00:01:00:03 (50:00:00:01:00:03)
以下が Null0 ルートとして登録されていること
Internet Protocol Version 6, Src: 2001:db8:fd7::1, Dst: 2001:db8:ae86:100::128
*/48 DHCPv6-PD 集約ルート
User Datagram Protocol, Src Port: 547, Dst Port: 547
 
DHCPv6
 
    Message type: Relay-forw (12)
/48 DHCPv6-PD 集約ルートは、以下の条件で自動登録されます。
    Hopcount: 0
*/56 で PD ルートを払い出し
    Link address: 2001:db8:fd7::1
*OSPFv3 で summary-prefix を設定
    Peer address: fe80::5200:ff:fe04:3
 
    Relay Message
 
        Option: Relay Message (9)
これは以下の効果があります。
        Length: 127
*OSPFv3 で集約ルートを広報することで、ルーティングテーブルの消費量を削減
        DHCPv6
*存在しない /56 ルート宛のトラフィックを受信した際、ASIC などハードウェア レベルでパケットをドロップ
            Message type: Request (3)
**Null0 が存在しない + 該当するトラフィックを受信した場合、デフォルトルートで ping/pong ルーティングによるルーティング ループが発生し、CPU 使用率が高騰します
            Transaction ID: 0x1948ce
|-
            Elapsed time
| rowspan="2" |DHCPv6-PD
                Option: Elapsed time (8)
リレーエージェント
                Length: 2
|Dist#'''show ipv6 dhcp relay binding'''
                Elapsed time: 0ms
Relay Bindings associated with default vrf:
            Client Identifier
 
                Option: Client Identifier (1)
Prefix: '''2001:DB8:CAFE::/56''' (GigabitEthernet1)
                Length: 10
 
                DUID: 00030001001e14d9fb00
  DUID: 00030001001E14D9FB00
                DUID Type: link-layer address (3)
 
                Hardware type: Ethernet (1)
  IAID: 655361
                Link-layer address: 00:1e:14:d9:fb:00
 
            User Class
  lifetime: 2592000
                Option: User Class (15)
 
                Length: 10
  expiration: 01:34:35 UTC Oct 19 2021
            Vendor Class
 
                Option: Vendor Class (16)
Summary:
                Length: 14
 
                Enterprise ID: ciscoSystems (9)
  Total number of Relay bindings = 1
                vendor-class-data: CSR1000V
 
            Option Request
  Total number of IAPD bindings = 1
                Option: Option Request (6)
 
                Length: 8
  Total number of IANA bindings = 0
                Requested Option code: Identity Association for Prefix Delegation (25)
 
                Requested Option code: DNS recursive name server (23)
  Total number of Relay bindings added by Bulk lease = 0
                Requested Option code: Domain Search List (24)
|/56 PD ルートと同じプレフィックスを払い出していること
                Requested Option code: Boot File URL (59)
|-
            Server Identifier
|Dist#'''show ipv6 route static'''
                Option: Server Identifier (2)
IPv6 Routing Table - default - 8 entries
                Length: 10
 
                DUID: 00030001001e14471b00
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
                DUID Type: link-layer address (3)
 
                Hardware type: Ethernet (1)
       B - BGP, R - RIP, H - NHRP, I1 - ISIS L1
                Link-layer address: 00:1e:14:47:1b:00
 
            Identity Association for Prefix Delegation
       I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP
                Option: Identity Association for Prefix Delegation (25)
 
                Length: 41
       EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination
                IAID: 000a0001
 
                T1: 0
       NDr - Redirect, RL - RPL, O - OSPF Intra, OI - OSPF Inter
                T2: 0
 
                IA Prefix
       OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
                    Option: IA Prefix (26)
 
                    Length: 25
       ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations
                    Preferred lifetime: 0
 
                    Valid lifetime: 0
       ld - LISP dyn-eid, lA - LISP away, le - LISP extranet-policy
                    Prefix length: 56
 
                    Prefix address: 2001:db8:cafe::
       lp - LISP publications, a - Application, m - OMP
    Client Link-Layer Address
 
        Option: Client Link-Layer Address (79)
S   '''2001:DB8:CAFE::/56''' [1/0]
        Length: 8
 
    Interface-Id
     via FE80::5200:FF:FE04:3, GigabitEthernet1
        Option: Interface-Id (18)
|DHCPv6 Relay された際、スタティックルートが登録されます
        Length: 5
PD クライアント宛 /56 スタティックルートが登録されていること
        Interface-ID: 0103476931
|}
    Remote Identifier
===PD-CL ===
        Option: Remote Identifier (37)
==== DHCPv6-PD クライアント====
        Length: 22
{| class="wikitable mw-collapsible mw-collapsed"
        Enterprise ID: ciscoSystems (9)
|+PD-CL 確認コマンド
        Remote-ID: 020000000000000a00030001001ee5c71700
!プロトコル
!show コマンド
!確認ポイント
|-
| rowspan="2" |DHCPv6-PD
クライアント
|PD-CL#'''show ipv6 dhcp interface GigabitEthernet 4'''
GigabitEthernet4 is in client mode


  Prefix State is OPEN (0)
</syntaxhighlight>01-Relay Forward と 02-Relay Reply で交渉した結果、クライアントが要求した内容を示します。


  Information refresh timer expires in 21:20:06


  Renew will be sent in 3d09h
003 : Dist の Gi1 2001:db8:fd7::1 を送信元 IPv6 , DHCPv6-SV の Gi4 2001:db8:ae86:100::128 を宛先 IPv6 に指定しています


  Address State is IDLE
006 : Relay Forward メッセージを示しています


  List of known servers:
009 : PD-CL Gi4 Link-local アドレス


    Reachable via address: FE80:DB8:FD7::1
020-026 : DUID は DHCPv6 のクライアント固有識別子を示す  DUID Type が 3 になっており、リンクレイヤーアドレスを元にしてアドレスやプレフィックスを払い出す DUID-LL を意味する ([https://datatracker.ietf.org/doc/html/rfc8415 RFC8415])


    DUID: 00030001001E14471B00
026 : DHCPv6-PD クライアントの MAC アドレス


    Preference: 0
035-41 : 取得したい アドレス or プレフィックス、DNS サーバ IP など


    Configuration parameters:
049-61 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633] IA-PD オプション 取得したい アドレス or プレフィックス


      IA PD: IA ID 0x000A0001, T1 302400, T2 483840
==== 04-DHCPv6 Relay Reply ====
 
<syntaxhighlight lang="diff" line="1">
        Prefix: '''2001:DB8:CAFE::/56'''
Frame 4: 223 bytes on wire (1784 bits), 223 bytes captured (1784 bits) on interface -, id 0
 
Ethernet II, Src: 50:00:00:01:00:03 (50:00:00:01:00:03), Dst: 50:00:00:02:00:02 (50:00:00:02:00:02)
                preferred lifetime 604800, valid lifetime 2592000
Internet Protocol Version 6, Src: 2001:db8:ae86:100::128, Dst: 2001:db8:fd7::1
 
User Datagram Protocol, Src Port: 547, Dst Port: 547
                expires at Oct 19 2021 04:09 AM (2582406 seconds)
DHCPv6
 
    Message type: Relay-reply (13)
      DNS server: '''2001:4860:4860::8888'''
    Hopcount: 0
 
    Link address: 2001:db8:fd7::1
      Domain name: '''example.com'''
    Peer address: fe80::5200:ff:fe04:3
 
    Relay Message
      Information refresh time: 0
        Option: Relay Message (9)
 
        Length: 114
  Prefix name: '''PD-PREFIX'''
        DHCPv6
 
            Message type: Reply (7)
  Prefix Rapid-Commit: disabled
            Transaction ID: 0x1948ce
 
            Server Identifier
  Address Rapid-Commit: disabled
                Option: Server Identifier (2)
|/56 プレフィックスを受信していること
                Length: 10
DNS サーバアドレスが DHCPv6 サーバで設定したものと同一であること
                DUID: 00030001001e14471b00
 
                DUID Type: link-layer address (3)
ドメイン名が DHCPv6 サーバで設定したものと同一であること
                Hardware type: Ethernet (1)
 
                Link-layer address: 00:1e:14:47:1b:00
下位にサブネット分割するための、プレフィックス名があること
            Client Identifier
 
                Option: Client Identifier (1)
|-
                Length: 10
|PD-CL#'''show ipv6 interface GigabitEthernet 1 prefix'''
                DUID: 00030001001e14d9fb00
IPv6 Prefix Advertisements GigabitEthernet1
                DUID Type: link-layer address (3)
 
                Hardware type: Ethernet (1)
Codes for 1st column:
                Link-layer address: 00:1e:14:d9:fb:00
 
            Identity Association for Prefix Delegation
       A - Address, P - Prefix-Advertisement, O - Pool
                Option: Identity Association for Prefix Delegation (25)
 
                Length: 41
       U - Per-user prefix
                IAID: 000a0001
 
                T1: 302400
Codes for 2nd column and above:
                T2: 483840
 
                IA Prefix
       D - Default
                    Option: IA Prefix (26)
 
                    Length: 25
       N - Not advertised, C - Calendar
                    Preferred lifetime: 604800
 
                    Valid lifetime: 2592000
PD default [LA] Valid lifetime 2592000, preferred lifetime 604800
                    Prefix length: 56
 
                    Prefix address: 2001:db8:cafe::
A 2001:DB8:CAFE::/64 [LA] Valid lifetime 2592000, preferred lifetime 604800
            DNS recursive name server
|下位側インターフェースに PRE-PREFIX /56 を上位に使用した、/64 プレフィックスを割り当てていること
                Option: DNS recursive name server (23)
|-
                Length: 16
| rowspan="2" |DHCPv6 サーバ
                1 DNS server address: 2001:4860:4860::8888
|PD-CL#'''show ipv6 dhcp interface GigabitEthernet 1'''
            Domain Search List
GigabitEthernet1 is in server mode
                Option: Domain Search List (24)
 
                Length: 13
  Using pool: SLAAC
                Domain name suffix search list
 
    Interface-Id
  Preference value: 0
        Option: Interface-Id (18)
 
        Length: 5
  Hint from client: ignored
        Interface-ID: 0103476931
 
  Rapid-Commit: disabled
|Gi1 に pool 名を指定した場合、pool 名が出力されます
Automatic で Pool 名を指定しない場合もあります
|-
|PD-CL#'''show ipv6 dhcp pool'''
DHCPv6 pool: SLAAC


  Imported DNS server: 2001:DB8:4860::8888
</syntaxhighlight>03-Relay Forward に対し、実際に割り当てるアドレス・プレフィックスを 04 で返信します。


  Imported Domain name: example.com


  Active clients: 0
003 : DHCPv6-SV の Gi4 2001:db8:ae86:100::128 を送信元 IPv6 , Dist の Gi1 2001:db8:fd7::1 を宛先 IPv6 に指定しています
|Pool に DHCPv6 サーバから受信した
*DNS サーバ
*ドメイン名
が設定されていること
|}
===SLAAC===
{| class="wikitable mw-collapsible mw-collapsed"
|+SLAAC 確認コマンド
!プロトコル
!show コマンド
!確認ポイント
|-
| rowspan="2" |IPv6 クライアント
|SLAAC#'''show ipv6 route'''
IPv6 Routing Table - default - 4 entries


Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
006 : Relay-Reply メッセージを示しています


       B - BGP, R - RIP, H - NHRP, I1 - ISIS L1
009 : PD-CL Gi4 Link-local アドレス


       I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP
029 : DHCPv6-PD クライアントの MAC アドレス


       EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination
030-42 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633] IA-PD オプション 取得したい アドレス or プレフィックス


       NDr - Redirect, RL - RPL, O - OSPF Intra, OI - OSPF Inter
043-46 : DNS サーバ


       OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
047-50 : ドメイン検索リスト


       ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations


       ld - LISP dyn-eid, lA - LISP away, le - LISP extranet-policy


       lp - LISP publications, a - Application, m - OMP


ND  '''::/0''' [2/0]


     via FE80::5200:FF:FE04:0, GigabitEthernet4


NDp '''2001:DB8:CAFE::/64''' [2/0]


     via GigabitEthernet4, directly connected


L   2001:DB8:CAFE:0:5200:FF:FE05:3/128 [0/0]
=== PD-CL [[ファイル:PD-CL Gi4 capture.pcapng|代替文=PD-CL Gi4 capture]] ===
DHCPv6 M / O フラグを両方 On にして、プレフィックスと DNS サーバを DHCPv6 サーバから取得するキャプチャです。


     via GigabitEthernet4, receive
==== 01-DHCPv6 Solicit ====
 
<syntaxhighlight lang="diff" line="1">
L   FF00::/8 [0/0]
Frame 14: 146 bytes on wire (1168 bits), 146 bytes captured (1168 bits) on interface -, id 0
 
Ethernet II, Src: 50:00:00:04:00:03 (50:00:00:04:00:03), Dst: IPv6mcast_01:00:02 (33:33:00:01:00:02)
     via Null0, receive
Internet Protocol Version 6, Src: fe80::5200:ff:fe04:3, Dst: ff02::1:2
|IPv6 デフォルトルートを持っていること
User Datagram Protocol, Src Port: 546, Dst Port: 547
PD-CL でサブネット分割されたグローバルユニキャストネットワークアドレスを持っていること
DHCPv6
 
    Message type: Solicit (1)
|-
    Transaction ID: 0x17cbbf
|SLAAC#show ip name-servers
    Elapsed time
2001:DB8:4860::8888
        Option: Elapsed time (8)
|DHCPV6-PD -> PD-CL 経由で DNS サーバを受信できていること
        Length: 2
|}
        Elapsed time: 0ms
 
    Client Identifier
== 疎通確認 ==
        Option: Client Identifier (1)
=== Dist プロビジョニング用疎通確認 ===
        Length: 10
DHCPv6 プロビジョニングに必要な疎通確認は、以下になります。
        DUID: 00030001001e14d9fb00
 
        DUID Type: link-layer address (3)
==== Dist Gi4 -> DHCPv6-SV : ping 2001:DB8:AE86:100::128 ====
        Hardware type: Ethernet (1)
 
        Link-layer address: 00:1e:14:d9:fb:00
* 失敗する場合、Core と接続する OSPFv3 P2P アドレスで、OSPFv3 の広報に失敗していないか確認します
    User Class
 
        Option: User Class (15)
==== Dist Gi1 -> DHCPv6-SV : ping 2001:DB8:AE86:100::128 source Gi1 ====
        Length: 10
 
    Vendor Class
* 失敗する場合、PD-CL 収容インターフェースのアドレスで、OSPFv3 の広報に失敗していないか確認します
        Option: Vendor Class (16)
* DHCPv6 の払い出しの前提条件となります
        Length: 14
 
        Enterprise ID: ciscoSystems (9)
 
        vendor-class-data: CSR1000V
疎通不可の場合、traceroute で不通となっている箇所を特定し、該当するプロトコルを切り分けて障害箇所を特定します。
    Option Request
 
        Option: Option Request (6)
=== PD-CL プロビジョニング疎通確認 ===
        Length: 8
DHCPv6 プロビジョニング確認に必要な疎通確認は、以下になります。
        Requested Option code: Identity Association for Prefix Delegation (25)
        Requested Option code: DNS recursive name server (23)
        Requested Option code: Domain Search List (24)
        Requested Option code: Boot File URL (59)
    Identity Association for Prefix Delegation
        Option: Identity Association for Prefix Delegation (25)
        Length: 12
        IAID: 000a0001
        T1: 0
        T2: 0
 
</syntaxhighlight>003 : PD-CL ではリンクローカル アドレスしか持っていないため、送信元がリンクローカル、宛先が ff02::1:2 のルータ宛マルチキャストアドレスになります


==== PD-CL Gi4 -> DHCPv6-SV : ping 2001:DB8:AE86:100::128 ====
006 : Solicit メッセージを示しています


* 失敗する場合、以下を確認します
012-018 : DUID は DHCPv6 のクライアント固有識別子を示す  DUID Type が 3 になっており、リンクレイヤーアドレスを元にしてアドレスやプレフィックスを払い出す DUID-LL を意味する ([https://datatracker.ietf.org/doc/html/rfc8415 RFC8415])
** PD-CL 収容インターフェースのアドレスで、OSPFv3 の広報に失敗していないか
** PD-CL でデフォルトルートを持っているか


=== PD-CL サービス疎通確認 ===
018 : DHCPv6-PD クライアントの MAC アドレス
サービス確認に必要な疎通確認は、以下になります。


==== PD-CL Gi4 -> DHCPv6-SV : ping 2001:DB8:4860::8888 ====
027-33 : 取得したい アドレス or プレフィックス、DNS サーバ IP など


* 失敗する場合、以下を確認します
034-39 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633]  IA-PD (Identity Association for Prefix Delegation) オプション
** PD-CL 収容インターフェースのアドレスで、OSPFv3 の広報に失敗していないか
** PD-CL でデフォルトルートを持っているか
** Core で ::8888 のアドレスを OSPFv3 で広報しているか


 
==== 02-DHCPv6 Advertise ====
== パケットキャプチャ ==
以下の手順で採取しました。
 
# PD-CL Gi4 を shutdown
# write memory
# reload
# 各所でキャプチャ開始
# PD-CL Gi4 no shutdown
 
再起動しない場合、以前取得していたプレフィックスを再度要求する、rebind メッセージがキャプチャできます。
 
=== DHCPv6-SV Gi4 [[ファイル:DHCPv6-SV Gi4.pcapng|代替文=DHCPv6-SV Gi4 Capture|フレームなし]]===
 
==== 01-DHCPv6 Relay Forward ====
<syntaxhighlight lang="diff" line="1">
<syntaxhighlight lang="diff" line="1">
Frame 1: 231 bytes on wire (1848 bits), 231 bytes captured (1848 bits) on interface -, id 0
Frame 15: 176 bytes on wire (1408 bits), 176 bytes captured (1408 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:02:00:02 (50:00:00:02:00:02), Dst: 50:00:00:01:00:03 (50:00:00:01:00:03)
Ethernet II, Src: 50:00:00:03:00:00 (50:00:00:03:00:00), Dst: 50:00:00:04:00:03 (50:00:00:04:00:03)
Internet Protocol Version 6, Src: 2001:db8:fd7::1, Dst: 2001:db8:ae86:100::128
Internet Protocol Version 6, Src: fe80:db8:fd7::1, Dst: fe80::5200:ff:fe04:3
User Datagram Protocol, Src Port: 547, Dst Port: 547
User Datagram Protocol, Src Port: 547, Dst Port: 546
DHCPv6
DHCPv6
     Message type: Relay-forw (12)
     Message type: Advertise (2)
     Hopcount: 0
     Transaction ID: 0x17cbbf
     Link address: 2001:db8:fd7::1
     Server Identifier
    Peer address: fe80::5200:ff:fe04:3
         Option: Server Identifier (2)
    Relay Message
         Length: 10
         Option: Relay Message (9)
        DUID: 00030001001e14471b00
         Length: 84
         DUID Type: link-layer address (3)
         DHCPv6
        Hardware type: Ethernet (1)
            Message type: Solicit (1)
        Link-layer address: 00:1e:14:47:1b:00
            Transaction ID: 0x17cbbf
    Client Identifier
            Elapsed time
        Option: Client Identifier (1)
                Option: Elapsed time (8)
        Length: 10
                Length: 2
        DUID: 00030001001e14d9fb00
                Elapsed time: 0ms
        DUID Type: link-layer address (3)
            Client Identifier
        Hardware type: Ethernet (1)
                Option: Client Identifier (1)
        Link-layer address: 00:1e:14:d9:fb:00
                Length: 10
    Identity Association for Prefix Delegation
                DUID: 00030001001e14d9fb00
        Option: Identity Association for Prefix Delegation (25)
                DUID Type: link-layer address (3)
        Length: 41
                Hardware type: Ethernet (1)
        IAID: 000a0001
                Link-layer address: 00:1e:14:d9:fb:00
        T1: 302400
            User Class
        T2: 483840
                Option: User Class (15)
        IA Prefix
                Length: 10
             Option: IA Prefix (26)
            Vendor Class
            Length: 25
                Option: Vendor Class (16)
            Preferred lifetime: 604800
                Length: 14
            Valid lifetime: 2592000
                Enterprise ID: ciscoSystems (9)
            Prefix length: 56
                vendor-class-data: CSR1000V
             Prefix address: 2001:db8:cafe::
             Option Request
     DNS recursive name server
                Option: Option Request (6)
         Option: DNS recursive name server (23)
                Length: 8
         Length: 16
                Requested Option code: Identity Association for Prefix Delegation (25)
        1 DNS server address: 2001:4860:4860::8888
                Requested Option code: DNS recursive name server (23)
     Domain Search List
                Requested Option code: Domain Search List (24)
         Option: Domain Search List (24)
                Requested Option code: Boot File URL (59)
         Length: 13
             Identity Association for Prefix Delegation
         Domain name suffix search list
                Option: Identity Association for Prefix Delegation (25)
 
                Length: 12
</syntaxhighlight>003 : PD-CL ではリンクローカル アドレスしか持っていないため、宛先が PD-CL リンクローカル、送信元がルータのリンクローカルになります
                IAID: 000a0001
 
                T1: 0
006 : Advertise メッセージを示している
                T2: 0
 
     Client Link-Layer Address
021 : DHCPv6-PD クライアントの MAC アドレス
         Option: Client Link-Layer Address (79)
         Length: 8
     Interface-Id
         Option: Interface-Id (18)
         Length: 5
         Interface-ID: 0103476931
    Remote Identifier
        Option: Remote Identifier (37)
        Length: 22
        Enterprise ID: ciscoSystems (9)
        Remote-ID: 020000000000000a00030001001ee5c71700


</syntaxhighlight>003 : Dist の Gi1 2001:db8:fd7::1 を送信元 IPv6 , DHCPv6-SV の Gi4 2001:db8:ae86:100::128 を宛先 IPv6 に指定しています
022-34 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633] IA-PD オプション 取得したい アドレス or プレフィックス


006 : Relay Forward メッセージを示しています
035-38 : DNS サーバ


009 : PD-CL Gi4 Link-local アドレス
039-42 : ドメイン検索リスト


020-026 : DUID は DHCPv6 のクライアント固有識別子を示す  DUID Type が 3 になっており、リンクレイヤーアドレスを元にしてアドレスやプレフィックスを払い出す DUID-LL を意味する ([https://datatracker.ietf.org/doc/html/rfc8415 RFC8415])
==== 03-DHCPv6 Request ====
 
<syntaxhighlight lang="diff" line="1">
026 : DHCPv6-PD クライアントの MAC アドレス
Frame 16: 189 bytes on wire (1512 bits), 189 bytes captured (1512 bits) on interface -, id 0
 
Ethernet II, Src: 50:00:00:04:00:03 (50:00:00:04:00:03), Dst: IPv6mcast_01:00:02 (33:33:00:01:00:02)
035-41 : 取得したい アドレス or プレフィックス、DNS サーバ IP など
Internet Protocol Version 6, Src: fe80::5200:ff:fe04:3, Dst: ff02::1:2
 
User Datagram Protocol, Src Port: 546, Dst Port: 547
042-47 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633]  IA-PD (Identity Association for Prefix Delegation) オプション
 
==== 02-DHCPv6 Relay Reply ====
<syntaxhighlight lang="diff" line="1">
Frame 2: 223 bytes on wire (1784 bits), 223 bytes captured (1784 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:01:00:03 (50:00:00:01:00:03), Dst: 50:00:00:02:00:02 (50:00:00:02:00:02)
Internet Protocol Version 6, Src: 2001:db8:ae86:100::128, Dst: 2001:db8:fd7::1
User Datagram Protocol, Src Port: 547, Dst Port: 547
DHCPv6
DHCPv6
     Message type: Relay-reply (13)
     Message type: Request (3)
     Hopcount: 0
     Transaction ID: 0x1948ce
     Link address: 2001:db8:fd7::1
     Elapsed time
    Peer address: fe80::5200:ff:fe04:3
         Option: Elapsed time (8)
    Relay Message
         Length: 2
         Option: Relay Message (9)
         Elapsed time: 0ms
         Length: 114
    Client Identifier
         DHCPv6
        Option: Client Identifier (1)
            Message type: Advertise (2)
        Length: 10
            Transaction ID: 0x17cbbf
        DUID: 00030001001e14d9fb00
            Server Identifier
        DUID Type: link-layer address (3)
                Option: Server Identifier (2)
        Hardware type: Ethernet (1)
                Length: 10
        Link-layer address: 00:1e:14:d9:fb:00
                DUID: 00030001001e14471b00
    User Class
                DUID Type: link-layer address (3)
        Option: User Class (15)
                Hardware type: Ethernet (1)
        Length: 10
                Link-layer address: 00:1e:14:47:1b:00
    Vendor Class
            Client Identifier
        Option: Vendor Class (16)
                Option: Client Identifier (1)
        Length: 14
                Length: 10
        Enterprise ID: ciscoSystems (9)
                DUID: 00030001001e14d9fb00
        vendor-class-data: CSR1000V
                DUID Type: link-layer address (3)
    Option Request
                Hardware type: Ethernet (1)
        Option: Option Request (6)
                Link-layer address: 00:1e:14:d9:fb:00
        Length: 8
            Identity Association for Prefix Delegation
        Requested Option code: Identity Association for Prefix Delegation (25)
                Option: Identity Association for Prefix Delegation (25)
        Requested Option code: DNS recursive name server (23)
                Length: 41
        Requested Option code: Domain Search List (24)
                IAID: 000a0001
        Requested Option code: Boot File URL (59)
                T1: 302400
    Server Identifier
                T2: 483840
        Option: Server Identifier (2)
                IA Prefix
        Length: 10
                    Option: IA Prefix (26)
        DUID: 00030001001e14471b00
                    Length: 25
        DUID Type: link-layer address (3)
                    Preferred lifetime: 604800
        Hardware type: Ethernet (1)
                    Valid lifetime: 2592000
        Link-layer address: 00:1e:14:47:1b:00
                    Prefix length: 56
    Identity Association for Prefix Delegation
                    Prefix address: 2001:db8:cafe::
        Option: Identity Association for Prefix Delegation (25)
            DNS recursive name server
        Length: 41
                Option: DNS recursive name server (23)
        IAID: 000a0001
                Length: 16
        T1: 0
                1 DNS server address: 2001:4860:4860::8888
        T2: 0
            Domain Search List
        IA Prefix
                Option: Domain Search List (24)
            Option: IA Prefix (26)
                Length: 13
            Length: 25
                Domain name suffix search list
            Preferred lifetime: 0
    Interface-Id
            Valid lifetime: 0
        Option: Interface-Id (18)
            Prefix length: 56
        Length: 5
            Prefix address: 2001:db8:cafe::
        Interface-ID: 0103476931
 
</syntaxhighlight>01-Solicit と 02-Advertise で交渉した結果、クライアントが要求する内容を示します。


</syntaxhighlight>003 : DHCPv6-SV の Gi4 2001:db8:ae86:100::128 を送信元 IPv6 , Dist の Gi1 2001:db8:fd7::1 を宛先 IPv6 に指定しています


006 : Relay-Reply メッセージを示しています
003 : PD-CL ではリンクローカル アドレスしか持っていないため、送信元がリンクローカル、宛先が ff02::1:2 のルータ宛マルチキャストアドレスになります


009 : PD-CL Gi4 Link-local アドレス
006 : Request メッセージを示しています


029 : DHCPv6-PD クライアントの MAC アドレス
013-018 : DUID は DHCPv6 のクライアント固有識別子を示す  DUID Type が 3 になっており、リンクレイヤーアドレスを元にしてアドレスやプレフィックスを払い出す DUID-LL を意味する ([https://datatracker.ietf.org/doc/html/rfc8415 RFC8415])


030-42 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633] IA-PD オプション 取得したい アドレス or プレフィックス、DNS サーバ IP など
018 : DHCPv6-PD クライアントの MAC アドレス


043-46 : DNS サーバ
027-33 : 取得したい アドレス or プレフィックス、DNS サーバ IP など


047-50 : ドメイン検索リスト
041-53 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633] IA-PD オプション 取得したい アドレス or プレフィックス


==== 03-DHCPv6 Relay Forward ====
==== 04-DHCPv6 Reply ====
<syntaxhighlight lang="diff" line="1">
<syntaxhighlight lang="diff" line="1">
Frame 3: 274 bytes on wire (2192 bits), 274 bytes captured (2192 bits) on interface -, id 0
Frame 17: 176 bytes on wire (1408 bits), 176 bytes captured (1408 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:02:00:02 (50:00:00:02:00:02), Dst: 50:00:00:01:00:03 (50:00:00:01:00:03)
Ethernet II, Src: 50:00:00:03:00:00 (50:00:00:03:00:00), Dst: 50:00:00:04:00:03 (50:00:00:04:00:03)
Internet Protocol Version 6, Src: 2001:db8:fd7::1, Dst: 2001:db8:ae86:100::128
Internet Protocol Version 6, Src: fe80:db8:fd7::1, Dst: fe80::5200:ff:fe04:3
User Datagram Protocol, Src Port: 547, Dst Port: 547
User Datagram Protocol, Src Port: 547, Dst Port: 546
DHCPv6
DHCPv6
     Message type: Relay-forw (12)
     Message type: Reply (7)
     Hopcount: 0
     Transaction ID: 0x1948ce
    Link address: 2001:db8:fd7::1
    Server Identifier
    Peer address: fe80::5200:ff:fe04:3
        Option: Server Identifier (2)
    Relay Message
        Length: 10
        Option: Relay Message (9)
        DUID: 00030001001e14471b00
        Length: 127
        DUID Type: link-layer address (3)
        DHCPv6
        Hardware type: Ethernet (1)
            Message type: Request (3)
        Link-layer address: 00:1e:14:47:1b:00
            Transaction ID: 0x1948ce
    Client Identifier
            Elapsed time
        Option: Client Identifier (1)
                Option: Elapsed time (8)
        Length: 10
                Length: 2
        DUID: 00030001001e14d9fb00
                Elapsed time: 0ms
        DUID Type: link-layer address (3)
            Client Identifier
        Hardware type: Ethernet (1)
                Option: Client Identifier (1)
        Link-layer address: 00:1e:14:d9:fb:00
                Length: 10
    Identity Association for Prefix Delegation
                DUID: 00030001001e14d9fb00
        Option: Identity Association for Prefix Delegation (25)
                DUID Type: link-layer address (3)
        Length: 41
                Hardware type: Ethernet (1)
        IAID: 000a0001
                Link-layer address: 00:1e:14:d9:fb:00
        T1: 302400
            User Class
        T2: 483840
                Option: User Class (15)
        IA Prefix
                Length: 10
            Option: IA Prefix (26)
            Vendor Class
            Length: 25
                Option: Vendor Class (16)
            Preferred lifetime: 604800
                Length: 14
            Valid lifetime: 2592000
                Enterprise ID: ciscoSystems (9)
            Prefix length: 56
                vendor-class-data: CSR1000V
            Prefix address: 2001:db8:cafe::
            Option Request
     DNS recursive name server
                Option: Option Request (6)
         Option: DNS recursive name server (23)
                Length: 8
         Length: 16
                Requested Option code: Identity Association for Prefix Delegation (25)
        1 DNS server address: 2001:4860:4860::8888
                Requested Option code: DNS recursive name server (23)
     Domain Search List
                Requested Option code: Domain Search List (24)
         Option: Domain Search List (24)
                Requested Option code: Boot File URL (59)
         Length: 13
            Server Identifier
         Domain name suffix search list
                Option: Server Identifier (2)
 
                Length: 10
</syntaxhighlight>03-Request に対し、実際に割り当てられたアドレス・プレフィックスを 04 で受信。
                DUID: 00030001001e14471b00
 
                DUID Type: link-layer address (3)
 
                Hardware type: Ethernet (1)
003 : PD-CL ではリンクローカル アドレスしか持っていないため、宛先が PD-CL リンクローカル、送信元がルータのリンクローカルになります
                Link-layer address: 00:1e:14:47:1b:00
 
            Identity Association for Prefix Delegation
006 : Reply メッセージを示しています
                Option: Identity Association for Prefix Delegation (25)
 
                Length: 41
021 : DHCPv6-PD クライアントの MAC アドレス
                IAID: 000a0001
 
                T1: 0
022-34 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633] IA-PD オプション 取得したい アドレス or プレフィックス
                T2: 0
 
                IA Prefix
035-38 : DNS サーバ
                    Option: IA Prefix (26)
 
                    Length: 25
039-42 : ドメイン検索リスト
                    Preferred lifetime: 0
 
                    Valid lifetime: 0
=== SLAAC ICMPv6 NS / NA [[ファイル:SLAAC Gi4 capture.pcapng|代替文=SLAAC Gi4 capture]] ===
                    Prefix length: 56
IPv6 ND RA で DHCPv6 サーバではなく、PD-CL ルータからアドレスを払い出す SLAAC クライアントのキャプチャです。
                    Prefix address: 2001:db8:cafe::
     Client Link-Layer Address
         Option: Client Link-Layer Address (79)
         Length: 8
     Interface-Id
         Option: Interface-Id (18)
         Length: 5
         Interface-ID: 0103476931
    Remote Identifier
        Option: Remote Identifier (37)
        Length: 22
        Enterprise ID: ciscoSystems (9)
        Remote-ID: 020000000000000a00030001001ee5c71700


</syntaxhighlight>01-Relay Forward と 02-Relay Reply で交渉した結果、クライアントが要求した内容を示します。
ここのみ SLAAC を再起動して取得しています。


* DHCPv6-PD の払い出しと、別の処理で行われるため


003 : Dist の Gi1 2001:db8:fd7::1 を送信元 IPv6 , DHCPv6-SV の Gi4 2001:db8:ae86:100::128 を宛先 IPv6 に指定しています
==== 01-ICMPv6 Neighbor Solicitation (NS) ====
 
<syntaxhighlight lang="diff" line="1">
006 : Relay Forward メッセージを示しています
Frame 4: 86 bytes on wire (688 bits), 86 bytes captured (688 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_ff:05:00:03 (33:33:ff:05:00:03)
Internet Protocol Version 6, Src: ::, Dst: ff02::1:ff05:3
Internet Control Message Protocol v6
    Type: Neighbor Solicitation (135)
    Code: 0
    Checksum: 0x821b [correct]
    [Checksum Status: Good]
    Reserved: 00000000
    Target Address: fe80::5200:ff:fe05:3
    ICMPv6 Option (Nonce)
        Type: Nonce (14)
        Length: 1 (8 bytes)
        Nonce: 7dfaf2df2a18


009 : PD-CL Gi4 Link-local アドレス
</syntaxhighlight>003 : SLAAC ではリンクローカル アドレスが使用できるかまだわからないため、送信元がなし、宛先が ff02::1:2 のルータ宛マルチキャストアドレスになります


020-026 : DUID は DHCPv6 のクライアント固有識別子を示す  DUID Type が 3 になっており、リンクレイヤーアドレスを元にしてアドレスやプレフィックスを払い出す DUID-LL を意味する ([https://datatracker.ietf.org/doc/html/rfc8415 RFC8415])
Duplicate Address Detection (DAD) が終わったあとに、送信元アドレスが使用可能になります


026 : DHCPv6-PD クライアントの MAC アドレス
005 : Neighbor Solicitation メッセージを示しています


035-41 : 取得したい アドレス or プレフィックス、DNS サーバ IP など


049-61 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633] IA-PD オプション 取得したい アドレス or プレフィックス
==== 02-ICMPv6 Neighbor Advertisement (NA) ====
 
==== 04-DHCPv6 Relay Reply ====
<syntaxhighlight lang="diff" line="1">
<syntaxhighlight lang="diff" line="1">
Frame 4: 223 bytes on wire (1784 bits), 223 bytes captured (1784 bits) on interface -, id 0
Frame 9: 86 bytes on wire (688 bits), 86 bytes captured (688 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:01:00:03 (50:00:00:01:00:03), Dst: 50:00:00:02:00:02 (50:00:00:02:00:02)
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_01 (33:33:00:00:00:01)
Internet Protocol Version 6, Src: 2001:db8:ae86:100::128, Dst: 2001:db8:fd7::1
Internet Protocol Version 6, Src: fe80::5200:ff:fe05:3, Dst: ff02::1
User Datagram Protocol, Src Port: 547, Dst Port: 547
Internet Control Message Protocol v6
DHCPv6
     Type: Neighbor Advertisement (136)
     Message type: Relay-reply (13)
     Code: 0
     Hopcount: 0
     Checksum: 0xe784 [correct]
     Link address: 2001:db8:fd7::1
    [Checksum Status: Good]
     Peer address: fe80::5200:ff:fe04:3
    Flags: 0xa0000000, Router, Override
     Relay Message
        1... .... .... .... .... .... .... .... = Router: Set
        Option: Relay Message (9)
        .0.. .... .... .... .... .... .... .... = Solicited: Not set
        Length: 114
        ..1. .... .... .... .... .... .... .... = Override: Set
        DHCPv6
        ...0 0000 0000 0000 0000 0000 0000 0000 = Reserved: 0
            Message type: Reply (7)
     Target Address: fe80::5200:ff:fe05:3
            Transaction ID: 0x1948ce
     ICMPv6 Option (Target link-layer address : 50:00:00:05:00:03)
            Server Identifier
        Type: Target link-layer address (2)
                Option: Server Identifier (2)
        Length: 1 (8 bytes)
                Length: 10
        Link-layer address: 50:00:00:05:00:03 (50:00:00:05:00:03)
                DUID: 00030001001e14471b00
 
                DUID Type: link-layer address (3)
</syntaxhighlight>003 : SLAAC ではリンクローカル アドレスが使用できるかまだわからないため、送信元がルータのリンクローカルアドレス、宛先が ff02::1 の全ノード宛マルチキャストアドレスになります
                Hardware type: Ethernet (1)
 
                Link-layer address: 00:1e:14:47:1b:00
005 : Neighbor Advertisement を示しています
            Client Identifier
 
                Option: Client Identifier (1)
009-013 : ルータ + 上書きフラグをセット
                Length: 10
 
                DUID: 00030001001e14d9fb00
 
                DUID Type: link-layer address (3)
=== SLAAC ICMPv6 RS / RA ===
                Hardware type: Ethernet (1)
 
                Link-layer address: 00:1e:14:d9:fb:00
==== 01-ICMPv6 Router Solicitation (RS) ====
            Identity Association for Prefix Delegation
<syntaxhighlight lang="diff" line="1">
                Option: Identity Association for Prefix Delegation (25)
Frame 13: 70 bytes on wire (560 bits), 70 bytes captured (560 bits) on interface -, id 0
                Length: 41
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_02 (33:33:00:00:00:02)
                IAID: 000a0001
Internet Protocol Version 6, Src: fe80::5200:ff:fe05:3, Dst: ff02::2
                T1: 302400
Internet Control Message Protocol v6
                T2: 483840
    Type: Router Solicitation (133)
                IA Prefix
    Code: 0
                    Option: IA Prefix (26)
    Checksum: 0xdb1d [correct]
                    Length: 25
    [Checksum Status: Good]
                    Preferred lifetime: 604800
    Reserved: 00000000
                    Valid lifetime: 2592000
    ICMPv6 Option (Source link-layer address : 50:00:00:05:00:03)
                    Prefix length: 56
         Type: Source link-layer address (1)
                    Prefix address: 2001:db8:cafe::
         Length: 1 (8 bytes)
            DNS recursive name server
         Link-layer address: 50:00:00:05:00:03 (50:00:00:05:00:03)
                Option: DNS recursive name server (23)
 
                Length: 16
</syntaxhighlight>003 : SLAAC では NS / NA でリンクローカル アドレスを取得したため、送信元が SLAAC のリンクローカルアドレス、宛先が ff02::2 のルータ宛マルチキャストアドレスになります
                1 DNS server address: 2001:4860:4860::8888
            Domain Search List
                Option: Domain Search List (24)
                Length: 13
                Domain name suffix search list
    Interface-Id
         Option: Interface-Id (18)
         Length: 5
         Interface-ID: 0103476931
 
</syntaxhighlight>03-Relay Forward に対し、実際に割り当てるアドレス・プレフィックスを 04 で返信します。
 
 
003 : DHCPv6-SV の Gi4 2001:db8:ae86:100::128 を送信元 IPv6 , Dist の Gi1 2001:db8:fd7::1 を宛先 IPv6 に指定しています
 
006 : Relay-Reply メッセージを示しています
 
009 : PD-CL Gi4 Link-local アドレス
 
029 : DHCPv6-PD クライアントの MAC アドレス
 
030-42 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633] IA-PD オプション 取得したい アドレス or プレフィックス
 
043-46 : DNS サーバ
 
047-50 : ドメイン検索リスト
 
 


005 : Router Solicitation タイプを示しています


==== 01-ICMPv6 Router Advertisement (RA) ====
<syntaxhighlight lang="diff" line="1">
Frame 14: 118 bytes on wire (944 bits), 118 bytes captured (944 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:04:00:00 (50:00:00:04:00:00), Dst: IPv6mcast_01 (33:33:00:00:00:01)
Internet Protocol Version 6, Src: fe80::5200:ff:fe04:0, Dst: ff02::1
Internet Control Message Protocol v6
    Type: Router Advertisement (134)
    Code: 0
    Checksum: 0x83a4 [correct]
    [Checksum Status: Good]
    Cur hop limit: 64
    Flags: 0x40, Other configuration, Prf (Default Router Preference): Medium
        0... .... = Managed address configuration: Not set
        .1.. .... = Other configuration: Set
        ..0. .... = Home Agent: Not set
        ...0 0... = Prf (Default Router Preference): Medium (0)
        .... .0.. = Proxy: Not set
        .... ..0. = Reserved: 0
    Router lifetime (s): 1800
    Reachable time (ms): 0
    Retrans timer (ms): 0
    ICMPv6 Option (Source link-layer address : 50:00:00:04:00:00)
        Type: Source link-layer address (1)
        Length: 1 (8 bytes)
        Link-layer address: 50:00:00:04:00:00 (50:00:00:04:00:00)
    ICMPv6 Option (MTU : 1500)
        Type: MTU (5)
        Length: 1 (8 bytes)
        Reserved
        MTU: 1500
    ICMPv6 Option (Prefix information : 2001:db8:cafe::/64)
        Type: Prefix information (3)
        Length: 4 (32 bytes)
        Prefix Length: 64
        Flag: 0xc0, On-link flag(L), Autonomous address-configuration flag(A)
            1... .... = On-link flag(L): Set
            .1.. .... = Autonomous address-configuration flag(A): Set
            ..0. .... = Router address flag(R): Not set
            ...0 0000 = Reserved: 0
        Valid Lifetime: 2592000
        Preferred Lifetime: 604800
        Reserved
        Prefix: 2001:db8:cafe::


</syntaxhighlight>003 : 送信元が PD-CL のリンクローカルアドレス、宛先が ff02::1 の全ノード宛マルチキャストアドレスになります


005 : Router Advertisement タイプを示しています


010-016 : Other フラグが On


=== PD-CL [[ファイル:PD-CL Gi4 capture.pcapng|代替文=PD-CL Gi4 capture]] ===
029-041 : 使用可能なプレフィックスを指定
DHCPv6 M / O フラグを両方 On にして、プレフィックスと DNS サーバを DHCPv6 サーバから取得するキャプチャです。


==== 01-DHCPv6 Solicit ====
==== 03-DHCPv6 Information Request ====
<syntaxhighlight lang="diff" line="1">
<syntaxhighlight lang="diff" line="1">
Frame 14: 146 bytes on wire (1168 bits), 146 bytes captured (1168 bits) on interface -, id 0
Frame 15: 132 bytes on wire (1056 bits), 132 bytes captured (1056 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:04:00:03 (50:00:00:04:00:03), Dst: IPv6mcast_01:00:02 (33:33:00:01:00:02)
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_01:00:02 (33:33:00:01:00:02)
Internet Protocol Version 6, Src: fe80::5200:ff:fe04:3, Dst: ff02::1:2
Internet Protocol Version 6, Src: fe80::5200:ff:fe05:3, Dst: ff02::1:2
User Datagram Protocol, Src Port: 546, Dst Port: 547
User Datagram Protocol, Src Port: 546, Dst Port: 547
DHCPv6
DHCPv6
     Message type: Solicit (1)
     Message type: Information-request (11)
     Transaction ID: 0x17cbbf
     Transaction ID: 0xc3b690
     Elapsed time
     Elapsed time
         Option: Elapsed time (8)
         Option: Elapsed time (8)
1,494行目: 1,703行目:
         Option: Client Identifier (1)
         Option: Client Identifier (1)
         Length: 10
         Length: 10
         DUID: 00030001001e14d9fb00
         DUID: 00030001001ebd296800
         DUID Type: link-layer address (3)
         DUID Type: link-layer address (3)
         Hardware type: Ethernet (1)
         Hardware type: Ethernet (1)
         Link-layer address: 00:1e:14:d9:fb:00
         Link-layer address: 00:1e:bd:29:68:00
     User Class
     User Class
         Option: User Class (15)
         Option: User Class (15)
1,508行目: 1,717行目:
     Option Request
     Option Request
         Option: Option Request (6)
         Option: Option Request (6)
         Length: 8
         Length: 10
        Requested Option code: Identity Association for Prefix Delegation (25)
         Requested Option code: DNS recursive name server (23)
         Requested Option code: DNS recursive name server (23)
         Requested Option code: Domain Search List (24)
         Requested Option code: Domain Search List (24)
        Requested Option code: Subscriber Identifier (38)
         Requested Option code: Boot File URL (59)
         Requested Option code: Boot File URL (59)
    Identity Association for Prefix Delegation
         Requested Option code: Vendor-specific Information (17)
         Option: Identity Association for Prefix Delegation (25)
 
        Length: 12
</syntaxhighlight>003 : SLAAC では NS / NA でリンクローカル アドレスを取得したため、送信元が SLAAC のリンクローカルアドレス、宛先が ff02::2 のルータ宛マルチキャストアドレスになります
        IAID: 000a0001
        T1: 0
        T2: 0


</syntaxhighlight>003 : PD-CL ではリンクローカル アドレスしか持っていないため、送信元がリンクローカル、宛先が ff02::1:2 のルータ宛マルチキャストアドレスになります
005 : Information Request メッセージタイプを示しています


006 : Solicit メッセージを示しています
027-034 : DHCPv6 サーバから取得したい情報を示しています  M フラグがないため、アドレスは要求していません


012-018 : DUID は DHCPv6 のクライアント固有識別子を示す  DUID Type が 3 になっており、リンクレイヤーアドレスを元にしてアドレスやプレフィックスを払い出す DUID-LL を意味する ([https://datatracker.ietf.org/doc/html/rfc8415 RFC8415])


018 : DHCPv6-PD クライアントの MAC アドレス
==== 04-DHCPv6 Reply ====
 
027-33 : 取得したい アドレス or プレフィックス、DNS サーバ IP など
 
034-39 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633]  IA-PD (Identity Association for Prefix Delegation) オプション
 
==== 02-DHCPv6 Advertise ====
<syntaxhighlight lang="diff" line="1">
<syntaxhighlight lang="diff" line="1">
Frame 15: 176 bytes on wire (1408 bits), 176 bytes captured (1408 bits) on interface -, id 0
Frame 16: 131 bytes on wire (1048 bits), 131 bytes captured (1048 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:03:00:00 (50:00:00:03:00:00), Dst: 50:00:00:04:00:03 (50:00:00:04:00:03)
Ethernet II, Src: 50:00:00:04:00:00 (50:00:00:04:00:00), Dst: 50:00:00:05:00:03 (50:00:00:05:00:03)
Internet Protocol Version 6, Src: fe80:db8:fd7::1, Dst: fe80::5200:ff:fe04:3
Internet Protocol Version 6, Src: fe80::5200:ff:fe04:0, Dst: fe80::5200:ff:fe05:3
User Datagram Protocol, Src Port: 547, Dst Port: 546
User Datagram Protocol, Src Port: 547, Dst Port: 546
DHCPv6
DHCPv6
     Message type: Advertise (2)
     Message type: Reply (7)
     Transaction ID: 0x17cbbf
     Transaction ID: 0xc3b690
     Server Identifier
     Server Identifier
         Option: Server Identifier (2)
         Option: Server Identifier (2)
         Length: 10
         Length: 10
         DUID: 00030001001e14471b00
         DUID: 00030001001e14d9fb00
         DUID Type: link-layer address (3)
         DUID Type: link-layer address (3)
         Hardware type: Ethernet (1)
         Hardware type: Ethernet (1)
         Link-layer address: 00:1e:14:47:1b:00
         Link-layer address: 00:1e:14:d9:fb:00
     Client Identifier
     Client Identifier
         Option: Client Identifier (1)
         Option: Client Identifier (1)
         Length: 10
         Length: 10
         DUID: 00030001001e14d9fb00
         DUID: 00030001001ebd296800
         DUID Type: link-layer address (3)
         DUID Type: link-layer address (3)
         Hardware type: Ethernet (1)
         Hardware type: Ethernet (1)
         Link-layer address: 00:1e:14:d9:fb:00
         Link-layer address: 00:1e:bd:29:68:00
    Identity Association for Prefix Delegation
        Option: Identity Association for Prefix Delegation (25)
        Length: 41
        IAID: 000a0001
        T1: 302400
        T2: 483840
        IA Prefix
            Option: IA Prefix (26)
            Length: 25
            Preferred lifetime: 604800
            Valid lifetime: 2592000
            Prefix length: 56
            Prefix address: 2001:db8:cafe::
     DNS recursive name server
     DNS recursive name server
         Option: DNS recursive name server (23)
         Option: DNS recursive name server (23)
1,576行目: 1,762行目:
         Length: 13
         Length: 13
         Domain name suffix search list
         Domain name suffix search list
            List entry: example.com.


</syntaxhighlight>003 : PD-CL ではリンクローカル アドレスしか持っていないため、宛先が PD-CL リンクローカル、送信元がルータのリンクローカルになります
</syntaxhighlight>003 : SLAAC では NS / NA でリンクローカル アドレスを取得したため、送信元が PD-CL のリンクローカルアドレス、宛先が SLAAC のリンクローカルアドレスになります


006 : Advertise メッセージを示している
005 : Reply メッセージタイプを示しています


021 : DHCPv6-PD クライアントの MAC アドレス
027-034 : DHCPv6 サーバから取得したい情報を示しています  03 の Information Request に M フラグがないため、アドレスは要求していません  O フラグは On のため、DNS サーバの情報を返しています


022-34 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633] IA-PD オプション 取得したい アドレス or プレフィックス
==== 05-ICMPv6 Neighbor Solicitation (NS) ====
<syntaxhighlight lang="diff" line="1">
Frame 17: 86 bytes on wire (688 bits), 86 bytes captured (688 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_ff:05:00:03 (33:33:ff:05:00:03)
Internet Protocol Version 6, Src: ::, Dst: ff02::1:ff05:3
Internet Control Message Protocol v6
    Type: Neighbor Solicitation (135)
    Code: 0
    Checksum: 0xe74d [correct]
    [Checksum Status: Good]
    Reserved: 00000000
    Target Address: 2001:db8:cafe:0:5200:ff:fe05:3
    ICMPv6 Option (Nonce)
        Type: Nonce (14)
        Length: 1 (8 bytes)
        Nonce: 2b53d5943aa1


035-38 : DNS サーバ
</syntaxhighlight>2001:db8:cafe:0:5200:ff:fe05:3 宛に NS を送信し、使用中のノードがいないか確認します。


039-42 : ドメイン検索リスト
==== 06-ICMPv6 Neighbor Advertisement (NA) ====
 
==== 03-DHCPv6 Request ====
<syntaxhighlight lang="diff" line="1">
<syntaxhighlight lang="diff" line="1">
Frame 16: 189 bytes on wire (1512 bits), 189 bytes captured (1512 bits) on interface -, id 0
Frame 18: 86 bytes on wire (688 bits), 86 bytes captured (688 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:04:00:03 (50:00:00:04:00:03), Dst: IPv6mcast_01:00:02 (33:33:00:01:00:02)
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_01 (33:33:00:00:00:01)
Internet Protocol Version 6, Src: fe80::5200:ff:fe04:3, Dst: ff02::1:2
Internet Protocol Version 6, Src: 2001:db8:cafe:0:5200:ff:fe05:3, Dst: ff02::1
User Datagram Protocol, Src Port: 546, Dst Port: 547
Internet Control Message Protocol v6
DHCPv6
     Type: Neighbor Advertisement (136)
    Message type: Request (3)
     Code: 0
    Transaction ID: 0x1948ce
     Checksum: 0xf316 [correct]
    Elapsed time
     [Checksum Status: Good]
        Option: Elapsed time (8)
     Flags: 0xa0000000, Router, Override
        Length: 2
         1... .... .... .... .... .... .... .... = Router: Set
        Elapsed time: 0ms
         .0.. .... .... .... .... .... .... .... = Solicited: Not set
    Client Identifier
         ..1. .... .... .... .... .... .... .... = Override: Set
        Option: Client Identifier (1)
         ...0 0000 0000 0000 0000 0000 0000 0000 = Reserved: 0
        Length: 10
     Target Address: 2001:db8:cafe:0:5200:ff:fe05:3
        DUID: 00030001001e14d9fb00
     ICMPv6 Option (Target link-layer address : 50:00:00:05:00:03)
        DUID Type: link-layer address (3)
         Type: Target link-layer address (2)
        Hardware type: Ethernet (1)
         Length: 1 (8 bytes)
        Link-layer address: 00:1e:14:d9:fb:00
         Link-layer address: 50:00:00:05:00:03 (50:00:00:05:00:03)
    User Class
 
        Option: User Class (15)
</syntaxhighlight>05 の 1 秒後に、使用中のノードがいないため、2001:db8:cafe:0:5200:ff:fe05:3 を SLAAC で使用します。
        Length: 10
 
    Vendor Class
== リファレンス ==
        Option: Vendor Class (16)
[https://community.cisco.com/t5/%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%82%A4%E3%83%B3%E3%83%95%E3%83%A9%E3%82%B9%E3%83%88%E3%83%A9%E3%82%AF%E3%83%81%E3%83%A3-%E3%83%89%E3%82%AD%E3%83%A5%E3%83%A1%E3%83%B3%E3%83%88/cisco%E6%A9%9F%E5%99%A8%E3%82%92%E7%94%A8%E3%81%84%E3%81%9F-dhcp-%E3%81%AB%E3%82%88%E3%82%8Bip%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E8%87%AA%E5%8B%95%E5%8F%96%E5%BE%97%E5%8B%95%E4%BD%9C%E3%81%AE%E7%A2%BA%E8%AA%8D%E3%81%A8%E8%A7%A3%E8%AA%AC-dhcpv6-pd/ta-p/3136832 Cisco機器を用いた DHCP によるIPアドレス自動取得動作の確認と解説 (DHCPv6-PD)]
        Length: 14
 
        Enterprise ID: ciscoSystems (9)
[https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr_dhcp/configuration/xe-16/dhcp-xe-16-book/ip6-dhcp-prefix-xe.html?referring_site=RE&pos=1&page=https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr_dhcp/configuration/xe-16/dhcp-xe-16-book/ip6-dhcp-stateless-auto.html CSR1000V IPv6 Access Services: DHCPv6 Prefix Delegation]
        vendor-class-data: CSR1000V
 
    Option Request
[https://www.google.com/search?q=Cisco+DHCPv6+configuration+guide&sxsrf=AOaemvI5W66BxSod7YftoNZc4zgIqL8Opg%3A1632009012417&ei=NHtGYZ_2GJef-AaXoYjICg&oq=Cisco+DHCPv6+configuration+guide&gs_lcp=Cgdnd3Mtd2l6EAMyBAgjECdKBAhBGAFQkrQDWIC4A2DVugNoAXAAeACAAboBiAHrBpIBAzAuNZgBAKABAcABAQ&sclient=gws-wiz&ved=0ahUKEwif4NGr24nzAhWXD94KHZcQAqkQ4dUDCA4&uact=5 DHCPv6 using the Prefix Delegation Feature Configuration Example]
        Option: Option Request (6)
 
        Length: 8
[https://www.lambdanote.com/products/ipv6 プロフェッショナルIPv6]
        Requested Option code: Identity Association for Prefix Delegation (25)
 
        Requested Option code: DNS recursive name server (23)
[https://www.cisco.com/c/en/us/products/collateral/switches/catalyst-9300-series-switches/nb-06-cat9300-ser-data-sheet-cte-en.html Cisco Catalyst 9300 Series Switches Data Sheet]
        Requested Option code: Domain Search List (24)
        Requested Option code: Boot File URL (59)
    Server Identifier
        Option: Server Identifier (2)
        Length: 10
        DUID: 00030001001e14471b00
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:14:47:1b:00
    Identity Association for Prefix Delegation
        Option: Identity Association for Prefix Delegation (25)
        Length: 41
        IAID: 000a0001
        T1: 0
        T2: 0
        IA Prefix
            Option: IA Prefix (26)
            Length: 25
            Preferred lifetime: 0
            Valid lifetime: 0
            Prefix length: 56
            Prefix address: 2001:db8:cafe::
 
</syntaxhighlight>01-Solicit と 02-Advertise で交渉した結果、クライアントが要求する内容を示します。
 
 
003 : PD-CL ではリンクローカル アドレスしか持っていないため、送信元がリンクローカル、宛先が ff02::1:2 のルータ宛マルチキャストアドレスになります
 
006 : Request メッセージを示しています
 
013-018 : DUID は DHCPv6 のクライアント固有識別子を示す  DUID Type が 3 になっており、リンクレイヤーアドレスを元にしてアドレスやプレフィックスを払い出す DUID-LL を意味する ([https://datatracker.ietf.org/doc/html/rfc8415 RFC8415])
 
018 : DHCPv6-PD クライアントの MAC アドレス
 
027-33 : 取得したい アドレス or プレフィックス、DNS サーバ IP など
 
041-53 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633] IA-PD オプション 取得したい アドレス or プレフィックス
 
==== 04-DHCPv6 Reply ====
<syntaxhighlight lang="diff" line="1">
Frame 17: 176 bytes on wire (1408 bits), 176 bytes captured (1408 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:03:00:00 (50:00:00:03:00:00), Dst: 50:00:00:04:00:03 (50:00:00:04:00:03)
Internet Protocol Version 6, Src: fe80:db8:fd7::1, Dst: fe80::5200:ff:fe04:3
User Datagram Protocol, Src Port: 547, Dst Port: 546
DHCPv6
    Message type: Reply (7)
    Transaction ID: 0x1948ce
    Server Identifier
        Option: Server Identifier (2)
        Length: 10
        DUID: 00030001001e14471b00
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:14:47:1b:00
    Client Identifier
        Option: Client Identifier (1)
        Length: 10
        DUID: 00030001001e14d9fb00
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:14:d9:fb:00
    Identity Association for Prefix Delegation
        Option: Identity Association for Prefix Delegation (25)
        Length: 41
        IAID: 000a0001
        T1: 302400
        T2: 483840
        IA Prefix
            Option: IA Prefix (26)
            Length: 25
            Preferred lifetime: 604800
            Valid lifetime: 2592000
            Prefix length: 56
            Prefix address: 2001:db8:cafe::
    DNS recursive name server
        Option: DNS recursive name server (23)
        Length: 16
        1 DNS server address: 2001:4860:4860::8888
    Domain Search List
        Option: Domain Search List (24)
        Length: 13
        Domain name suffix search list
 
</syntaxhighlight>03-Request に対し、実際に割り当てられたアドレス・プレフィックスを 04 で受信。
 
 
003 : PD-CL ではリンクローカル アドレスしか持っていないため、宛先が PD-CL リンクローカル、送信元がルータのリンクローカルになります
 
006 : Reply メッセージを示しています
 
021 : DHCPv6-PD クライアントの MAC アドレス
 
022-34 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633] IA-PD オプション 取得したい アドレス or プレフィックス
 
035-38 : DNS サーバ
 
039-42 : ドメイン検索リスト
 
=== SLAAC ICMPv6 NS / NA [[ファイル:SLAAC Gi4 capture.pcapng|代替文=SLAAC Gi4 capture]] ===
IPv6 ND RA で DHCPv6 サーバではなく、PD-CL ルータからアドレスを払い出す SLAAC クライアントのキャプチャです。
 
ここのみ SLAAC を再起動して取得しています。
 
* DHCPv6-PD の払い出しと、別の処理で行われるため
 
==== 01-ICMPv6 Neighbor Solicitation (NS) ====
<syntaxhighlight lang="diff" line="1">
Frame 4: 86 bytes on wire (688 bits), 86 bytes captured (688 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_ff:05:00:03 (33:33:ff:05:00:03)
Internet Protocol Version 6, Src: ::, Dst: ff02::1:ff05:3
Internet Control Message Protocol v6
    Type: Neighbor Solicitation (135)
    Code: 0
    Checksum: 0x821b [correct]
    [Checksum Status: Good]
    Reserved: 00000000
    Target Address: fe80::5200:ff:fe05:3
    ICMPv6 Option (Nonce)
        Type: Nonce (14)
        Length: 1 (8 bytes)
        Nonce: 7dfaf2df2a18
 
</syntaxhighlight>003 : SLAAC ではリンクローカル アドレスが使用できるかまだわからないため、送信元がなし、宛先が ff02::1:2 のルータ宛マルチキャストアドレスになります
 
Duplicate Address Detection (DAD) が終わったあとに、送信元アドレスが使用可能になります
 
005 : Neighbor Solicitation メッセージを示しています
 
 
==== 02-ICMPv6 Neighbor Advertisement (NA) ====
<syntaxhighlight lang="diff" line="1">
Frame 9: 86 bytes on wire (688 bits), 86 bytes captured (688 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_01 (33:33:00:00:00:01)
Internet Protocol Version 6, Src: fe80::5200:ff:fe05:3, Dst: ff02::1
Internet Control Message Protocol v6
     Type: Neighbor Advertisement (136)
     Code: 0
     Checksum: 0xe784 [correct]
     [Checksum Status: Good]
     Flags: 0xa0000000, Router, Override
         1... .... .... .... .... .... .... .... = Router: Set
         .0.. .... .... .... .... .... .... .... = Solicited: Not set
         ..1. .... .... .... .... .... .... .... = Override: Set
         ...0 0000 0000 0000 0000 0000 0000 0000 = Reserved: 0
     Target Address: fe80::5200:ff:fe05:3
     ICMPv6 Option (Target link-layer address : 50:00:00:05:00:03)
         Type: Target link-layer address (2)
         Length: 1 (8 bytes)
         Link-layer address: 50:00:00:05:00:03 (50:00:00:05:00:03)
 
</syntaxhighlight>003 : SLAAC ではリンクローカル アドレスが使用できるかまだわからないため、送信元がルータのリンクローカルアドレス、宛先が ff02::1 の全ノード宛マルチキャストアドレスになります
 
005 : Neighbor Advertisement を示しています
 
009-013 : ルータ + 上書きフラグをセット
 
 
=== SLAAC ICMPv6 RS / RA ===
 
==== 01-ICMPv6 Router Solicitation (RS) ====
<syntaxhighlight lang="diff" line="1">
Frame 13: 70 bytes on wire (560 bits), 70 bytes captured (560 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_02 (33:33:00:00:00:02)
Internet Protocol Version 6, Src: fe80::5200:ff:fe05:3, Dst: ff02::2
Internet Control Message Protocol v6
    Type: Router Solicitation (133)
    Code: 0
    Checksum: 0xdb1d [correct]
    [Checksum Status: Good]
    Reserved: 00000000
    ICMPv6 Option (Source link-layer address : 50:00:00:05:00:03)
        Type: Source link-layer address (1)
        Length: 1 (8 bytes)
        Link-layer address: 50:00:00:05:00:03 (50:00:00:05:00:03)
 
</syntaxhighlight>003 : SLAAC では NS / NA でリンクローカル アドレスを取得したため、送信元が SLAAC のリンクローカルアドレス、宛先が ff02::2 のルータ宛マルチキャストアドレスになります
 
005 : Router Solicitation タイプを示しています
 
==== 01-ICMPv6 Router Advertisement (RA) ====
<syntaxhighlight lang="diff" line="1">
Frame 14: 118 bytes on wire (944 bits), 118 bytes captured (944 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:04:00:00 (50:00:00:04:00:00), Dst: IPv6mcast_01 (33:33:00:00:00:01)
Internet Protocol Version 6, Src: fe80::5200:ff:fe04:0, Dst: ff02::1
Internet Control Message Protocol v6
    Type: Router Advertisement (134)
    Code: 0
    Checksum: 0x83a4 [correct]
    [Checksum Status: Good]
    Cur hop limit: 64
    Flags: 0x40, Other configuration, Prf (Default Router Preference): Medium
        0... .... = Managed address configuration: Not set
        .1.. .... = Other configuration: Set
        ..0. .... = Home Agent: Not set
        ...0 0... = Prf (Default Router Preference): Medium (0)
        .... .0.. = Proxy: Not set
        .... ..0. = Reserved: 0
    Router lifetime (s): 1800
    Reachable time (ms): 0
    Retrans timer (ms): 0
    ICMPv6 Option (Source link-layer address : 50:00:00:04:00:00)
        Type: Source link-layer address (1)
        Length: 1 (8 bytes)
        Link-layer address: 50:00:00:04:00:00 (50:00:00:04:00:00)
    ICMPv6 Option (MTU : 1500)
        Type: MTU (5)
        Length: 1 (8 bytes)
        Reserved
        MTU: 1500
    ICMPv6 Option (Prefix information : 2001:db8:cafe::/64)
        Type: Prefix information (3)
        Length: 4 (32 bytes)
        Prefix Length: 64
        Flag: 0xc0, On-link flag(L), Autonomous address-configuration flag(A)
            1... .... = On-link flag(L): Set
            .1.. .... = Autonomous address-configuration flag(A): Set
            ..0. .... = Router address flag(R): Not set
            ...0 0000 = Reserved: 0
        Valid Lifetime: 2592000
        Preferred Lifetime: 604800
        Reserved
        Prefix: 2001:db8:cafe::
 
</syntaxhighlight>003 : 送信元が PD-CL のリンクローカルアドレス、宛先が ff02::1 の全ノード宛マルチキャストアドレスになります
 
005 : Router Advertisement タイプを示しています
 
010-016 : Other フラグが On
 
029-041 : 使用可能なプレフィックスを指定
 
==== 03-DHCPv6 Information Request ====
<syntaxhighlight lang="diff" line="1">
Frame 15: 132 bytes on wire (1056 bits), 132 bytes captured (1056 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_01:00:02 (33:33:00:01:00:02)
Internet Protocol Version 6, Src: fe80::5200:ff:fe05:3, Dst: ff02::1:2
User Datagram Protocol, Src Port: 546, Dst Port: 547
DHCPv6
    Message type: Information-request (11)
    Transaction ID: 0xc3b690
    Elapsed time
        Option: Elapsed time (8)
        Length: 2
        Elapsed time: 0ms
    Client Identifier
        Option: Client Identifier (1)
        Length: 10
        DUID: 00030001001ebd296800
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:bd:29:68:00
    User Class
        Option: User Class (15)
        Length: 10
    Vendor Class
        Option: Vendor Class (16)
        Length: 14
        Enterprise ID: ciscoSystems (9)
        vendor-class-data: CSR1000V
    Option Request
        Option: Option Request (6)
        Length: 10
        Requested Option code: DNS recursive name server (23)
        Requested Option code: Domain Search List (24)
        Requested Option code: Subscriber Identifier (38)
        Requested Option code: Boot File URL (59)
        Requested Option code: Vendor-specific Information (17)


</syntaxhighlight>003 : SLAAC では NS / NA でリンクローカル アドレスを取得したため、送信元が SLAAC のリンクローカルアドレス、宛先が ff02::2 のルータ宛マルチキャストアドレスになります
[https://www.geekpage.jp/blog/?id=2018-11-27-1 DHCPv6の基本仕様が改定 - RFC 8415]


005 : Information Request メッセージタイプを示しています
[https://datatracker.ietf.org/doc/html/rfc8415 RFC8415 - Dynamic Host Configuration Protocol for IPv6 (DHCPv6)]


027-034 : DHCPv6 サーバから取得したい情報を示しています  M フラグがないため、アドレスは要求していません
* 廃止 : [https://datatracker.ietf.org/doc/html/rfc8415 RFC3315 Standards Track - Dynamic Host Configuration Protocol for IPv6 (DHCPv6)]


* 廃止 : [https://datatracker.ietf.org/doc/html/rfc3633 RFC3633 Standards Track -  IPv6 Prefix Options for Dynamic Host Configuration Protocol (DHCP) version 6]


==== 04-DHCPv6 Reply ====
[https://datatracker.ietf.org/doc/html/rfc6355 RFC6355 Standards Track - Definition of the UUID-Based DHCPv6 Unique Identifier (DUID-UUID)]
<syntaxhighlight lang="diff" line="1">
 
Frame 16: 131 bytes on wire (1048 bits), 131 bytes captured (1048 bits) on interface -, id 0
[https://www.soumu.go.jp/main_content/000517039.pdf ケーブル業界のIPv6対応状況]
Ethernet II, Src: 50:00:00:04:00:00 (50:00:00:04:00:00), Dst: 50:00:00:05:00:03 (50:00:00:05:00:03)
Internet Protocol Version 6, Src: fe80::5200:ff:fe04:0, Dst: fe80::5200:ff:fe05:3
User Datagram Protocol, Src Port: 547, Dst Port: 546
DHCPv6
    Message type: Reply (7)
    Transaction ID: 0xc3b690
    Server Identifier
        Option: Server Identifier (2)
        Length: 10
        DUID: 00030001001e14d9fb00
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:14:d9:fb:00
    Client Identifier
        Option: Client Identifier (1)
        Length: 10
        DUID: 00030001001ebd296800
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:bd:29:68:00
    DNS recursive name server
        Option: DNS recursive name server (23)
        Length: 16
        1 DNS server address: 2001:4860:4860::8888
    Domain Search List
        Option: Domain Search List (24)
        Length: 13
        Domain name suffix search list
            List entry: example.com.


</syntaxhighlight>003 : SLAAC では NS / NA でリンクローカル アドレスを取得したため、送信元が PD-CL のリンクローカルアドレス、宛先が SLAAC のリンクローカルアドレスになります
[https://www.jlabs.or.jp/tst/wp-content/uploads/2020/03/DOC-009_3.0.pdf IPv6対応ケーブルインターネットアクセス技術仕様ガイドライン]


005 : Reply メッセージタイプを示しています
[https://www.infraexpert.com/study/study35.html ネットワークエンジニアとして]


027-034 : DHCPv6 サーバから取得したい情報を示しています  03 の Information Request に M フラグがないため、アドレスは要求していません  O フラグは On のため、DNS サーバの情報を返しています
[https://ja.wikipedia.org/wiki/DHCPv6 DHCPv6 - ウィキペディア]


==== 05-ICMPv6 Neighbor Solicitation (NS) ====
[https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr_dhcp/configuration/15-sy/dhcp-15-sy-book/ip6-dhcp-rel-agent.pdf DHCPv6 Relay Agent Notification for Prefix Delegation]<ref>IPv6 routes are added when the relay agent relays a RELAY-REPLY packet, and IPv6 routes are deleted when the prefix delegation lease time expires or the relay agent receives a release message.</ref>
<syntaxhighlight lang="diff" line="1">
 
Frame 17: 86 bytes on wire (688 bits), 86 bytes captured (688 bits) on interface -, id 0
* PD スタティックルート インジェクションのトリガーについて記載あり
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_ff:05:00:03 (33:33:ff:05:00:03)
[https://tex2e.github.io/rfc-translater/html/rfc6939.html RFC 6939 - Client Link-Layer Address Option in DHCPv6 日本語訳]
Internet Protocol Version 6, Src: ::, Dst: ff02::1:ff05:3
Internet Control Message Protocol v6
    Type: Neighbor Solicitation (135)
    Code: 0
    Checksum: 0xe74d [correct]
    [Checksum Status: Good]
    Reserved: 00000000
    Target Address: 2001:db8:cafe:0:5200:ff:fe05:3
    ICMPv6 Option (Nonce)
        Type: Nonce (14)
        Length: 1 (8 bytes)
        Nonce: 2b53d5943aa1


</syntaxhighlight>2001:db8:cafe:0:5200:ff:fe05:3 宛に NS を送信し、使用中のノードがいないか確認します。


==== 06-ICMPv6 Neighbor Advertisement (NA) ====
[[カテゴリ:IPv6]]
<syntaxhighlight lang="diff" line="1">
[[カテゴリ:ラボ]]
Frame 18: 86 bytes on wire (688 bits), 86 bytes captured (688 bits) on interface -, id 0
<span></span><ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-1930311742297749" data-ad-slot="5409634032"></ins><span></span><span></span>
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_01 (33:33:00:00:00:01)
Internet Protocol Version 6, Src: 2001:db8:cafe:0:5200:ff:fe05:3, Dst: ff02::1
Internet Control Message Protocol v6
    Type: Neighbor Advertisement (136)
    Code: 0
    Checksum: 0xf316 [correct]
    [Checksum Status: Good]
    Flags: 0xa0000000, Router, Override
        1... .... .... .... .... .... .... .... = Router: Set
        .0.. .... .... .... .... .... .... .... = Solicited: Not set
        ..1. .... .... .... .... .... .... .... = Override: Set
        ...0 0000 0000 0000 0000 0000 0000 0000 = Reserved: 0
    Target Address: 2001:db8:cafe:0:5200:ff:fe05:3
    ICMPv6 Option (Target link-layer address : 50:00:00:05:00:03)
        Type: Target link-layer address (2)
        Length: 1 (8 bytes)
        Link-layer address: 50:00:00:05:00:03 (50:00:00:05:00:03)
 
</syntaxhighlight>05 の 1 秒後に、使用中のノードがいないため、2001:db8:cafe:0:5200:ff:fe05:3 を SLAAC で使用します。
 
== リファレンス ==
[https://community.cisco.com/t5/%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%82%A4%E3%83%B3%E3%83%95%E3%83%A9%E3%82%B9%E3%83%88%E3%83%A9%E3%82%AF%E3%83%81%E3%83%A3-%E3%83%89%E3%82%AD%E3%83%A5%E3%83%A1%E3%83%B3%E3%83%88/cisco%E6%A9%9F%E5%99%A8%E3%82%92%E7%94%A8%E3%81%84%E3%81%9F-dhcp-%E3%81%AB%E3%82%88%E3%82%8Bip%E3%82%A2%E3%83%89%E3%83%AC%E3%82%B9%E8%87%AA%E5%8B%95%E5%8F%96%E5%BE%97%E5%8B%95%E4%BD%9C%E3%81%AE%E7%A2%BA%E8%AA%8D%E3%81%A8%E8%A7%A3%E8%AA%AC-dhcpv6-pd/ta-p/3136832 Cisco機器を用いた DHCP によるIPアドレス自動取得動作の確認と解説 (DHCPv6-PD)]


[https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr_dhcp/configuration/xe-16/dhcp-xe-16-book/ip6-dhcp-prefix-xe.html?referring_site=RE&pos=1&page=https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ipaddr_dhcp/configuration/xe-16/dhcp-xe-16-book/ip6-dhcp-stateless-auto.html CSR1000V IPv6 Access Services: DHCPv6 Prefix Delegation]
{{#seo:
|title={{#if: {{{page_title|}}} | {{{page_title}}} | 2021-09-19 DHCPv6-PD 機能検証}}
|titlemode={{{title_mode|}}}
|keywords={{{keywords|}}}
|description={{{description|}}}
}}


[https://www.google.com/search?q=Cisco+DHCPv6+configuration+guide&sxsrf=AOaemvI5W66BxSod7YftoNZc4zgIqL8Opg%3A1632009012417&ei=NHtGYZ_2GJef-AaXoYjICg&oq=Cisco+DHCPv6+configuration+guide&gs_lcp=Cgdnd3Mtd2l6EAMyBAgjECdKBAhBGAFQkrQDWIC4A2DVugNoAXAAeACAAboBiAHrBpIBAzAuNZgBAKABAcABAQ&sclient=gws-wiz&ved=0ahUKEwif4NGr24nzAhWXD94KHZcQAqkQ4dUDCA4&uact=5 DHCPv6 using the Prefix Delegation Feature Configuration Example]
== 脚注 ==
 
[https://www.lambdanote.com/products/ipv6 プロフェッショナルIPv6]
 
[https://www.cisco.com/c/en/us/products/collateral/switches/catalyst-9300-series-switches/nb-06-cat9300-ser-data-sheet-cte-en.html Cisco Catalyst 9300 Series Switches Data Sheet]
 
[https://datatracker.ietf.org/doc/html/rfc8415 RFC3315 Standards Track - Dynamic Host Configuration Protocol for IPv6 (DHCPv6)]
 
[https://datatracker.ietf.org/doc/html/rfc3633 RFC3633 Standards Track -  IPv6 Prefix Options for Dynamic Host Configuration Protocol (DHCP) version 6]
 
[https://datatracker.ietf.org/doc/html/rfc6355 RFC6355 Standards Track -  Definition of the UUID-Based DHCPv6 Unique Identifier (DUID-UUID)]
 
[https://www.soumu.go.jp/main_content/000517039.pdf ケーブル業界のIPv6対応状況]
 
[https://www.jlabs.or.jp/tst/wp-content/uploads/2020/03/DOC-009_3.0.pdf IPv6対応ケーブルインターネットアクセス技術仕様ガイドライン]
 
[[カテゴリ:IPv6]]
[[カテゴリ:ラボ]]

2024年6月20日 (木) 14:36時点における最新版

普及期・移行期を迎えている、IPv6 の DHCPv6-PD について検証を実施しました。

このページにラボシナリオとして、コンフィグや確認コマンド、疎通確認のポイントなどをまとめています。

目的

初心者向けに DHCPv6-PD と IPv6 の基礎を学習するための、検証の基本情報を提供します。

無料で入手できるソフトウェアを使用し、金銭の負担を減らします。

DHCPv6-PD のメリット

IPv6 で増大するグローバル ユニキャストアドレスを、DHCPv6-PD ルートに集約できます。

以下に直接接続した場合と、DHCPv6-PD クライアント経由で接続した例を記載します。

L3SW 直接接続
例1. L3SW 直接接続
  • 例 1. は L3SW で PC やサーバ、IP 電話などを /64 で直接収容するケースです
  • PC 1 台はグローバル ユニキャストアドレスとリンクローカルアドレスを持つため、IPv6 ND エントリを最低 2 つ消費します
    • 実際には IPv6 一時使用アドレスも存在するため、2 つでは済みません
  • 上記の例では 4 台存在するため、最低 8 エントリを消費します
PD クライアントによるルート集約
例2. PD クライアントによるルート集約
  • 例 2. は L3SW が PD クライアントに集約ルートとして /56 を割り当てた例です
  • PD ルート + PD-Client のリンクローカルアドレスの 2 つのエントリで済みます
    • ただし、実運用としては PD クライアントにも疎通確認用として /64 でグローバル ユニキャストを持たせたほうが運用しやすいケースも考えられます
  • PD-Client 配下では /56 をサブネット分割し、/64 のネットワークを 16 個作成できます
    • /64 1 つでも、分割して複数持たせても良いです
  • PC などの数が増えても、L3SW のリソースには影響しません
表1. IPv6 ND エントリ数の増加率
台数
2 4 8 16
L3SW 直接収容 4 8 16 32
DHCPv6-PD クライアント経由 1 1 1 1

実際の L3SW の例として Catalyst 9300 の IPv4 ARP エントリは 32,000 ですが、IPv6 ND の場合は半分の 16,000 となります。

机上では 1 台につきグローバル ユニキャスト + リンクローカルで最低 2 つのエントリを消費するため、Catalyst 9300 1 台あたり 8,000 台が最大収容数と考えられ、IPv4 よりもかなり見劣りします。

DHCPv6-PD のデメリット

  • FTTH を想定した場合、ブロードバンドルータの対応機種が限られます
  • ARP / IPv6 ND よりも静的よりのプロトコルとなるため、冗長構成はよく検討する必要があります
  • IPv6 リナンバリングはまだまだノウハウがありません 移行設計はよく検討する必要があります

検証環境

いずれも無料で提供されているソフトウェアです。

ESXi7.0 無償評価版

  • VMware Workstaion でも可能ですが、CPU とメモリの要件が厳しいため、少なくとも 2021 年のノート PC では厳しいでしょう
  • hkatou Lab では Supermicro のコンパクトサーバ、E300-9a Atom C3858 12 Core 12 Thread + 64GB メモリを使用しています


EVE-NG Community Edition

  • 8 vCPU / 30GB のメモリを割り当てました


Cisco CSR1000V 16.12.04a

  • EVE-NG のテンプレートにある CPU 1 コアだと起動が遅かったため、2 コアに変更
    • この場合は合計 10 vCPU になります
  • 要求される EVE-NG 上の CSR1000V VM のリソースは以下です
    • 1 vCPU x 5 台 = 5 vCPU
    • 4GB メモリ x 5 台 = 20GB
      • IOS-XE 上では 1.8GB ほどフリーに見えるため、2.5GB / VM = 12.5GB 程度の割当でもいけそうです

構成図

以下の機器をすべて CSR1000V で構築します。

  • DHCPv6 サーバ : DHCPv6-SV
  • Core ルータ : Core
  • Distribution ルータ : Dist
  • DHCPv6-PD クライアント : PD-CL
  • SLAAC クライアント : SLAAC
Diagram
Diagram


IPv6 アドレッシング表

検証に使用するための IPv6 アドレスを、文書用例示アドレスの 2001:DB8::/32 から、サブネット分割して各ホストへ割り当てます。

表2. IPv6 アドレッシング表
文書用例示アドレス 2001:DB8::/32
サブネット 2001:DB8:CAFE::/48

DHCPv6-PD 払い出しプール

2001:DB8:AE86::/48

機器間収容セグメント

2001:DB8:FD7::/48

DHCPv6-PD 払い出し用

送信元セグメント

2001:DB8:4860::

インターネット模擬

セグメント

サブネット ::/56

/48 プールから分割して

/56 払い出し

::100:/64

DHCPv6

サーバ

収容

セグメント

::200:/64

OSPFv3 P2P リンク

::/64

Dist 用

::8888/128

Core 用
DHCPv6-SV ローカルプールを設定

/48 DHCPv6-PD Pool を持ち、

/56 で払い出し

Gi4

::128

- リンクアドレスである Dist ::1/64 から払い出し依頼があれば、2001:DB8::CAFE::/48 プールから/56 を払い出す -
Core - Gi3

::1 GW

Gi1

::1 OSPFv3

- Lo0

::8888/128

Dist /48 OSPF Null0 宛

集約ルート

PD-CL 宛 /56 サブネットの

スタティックルートを持つ

- Gi4

::2 OSPFv3

Gi4

::1/64 DHCPv6-PD が払い出す基準となる、

リンクアドレス

-
PD-CL /56 を PD ルートとして持つ

SLAAC-CL へ /64 サブネットを提供

- - - -
SLAAC-CL PC のステートレス DHCPv6 を模擬 - - - -

ホストリスト・役割

DHCPv6-SV

  • DHCPv6 サーバを動作させ、PD クライアントである PD-CL にプレフィックスを払い出します

Core

サーバ収容

  • DHCPv6 サーバを収容します

インターネット模擬

  • インターネット模擬となる、宛先 IP アドレスを Loopback アドレスとして持ちます

ダウンリンク

  • OSPFv3 で Dist とルーティングを行います

Dist

アップリンク

  • OSPFv3 で Core とルーティングを行います

ダウンリンク

  • PD-CL の DHCPv6 Router Solicitation に対して、リレーエージェントで DHCPv6 サーバに転送します
  • リレーエージェントが動作すると、対応するスタティックルートがインジェクション (挿入) されます

PD-CL

アップリンク

  • Dist に Router Solicitation で PD ルートを要求します

ダウンリンク

  • Dist から受信した /56 PD ルートを、/64 にサブネット分割して GW を提供します

SLAAC

  • /64 サブネット分割されたグローバル ユニキャストアドレスと、PD-CL 宛デフォルトルートを持ちます

プロトコル別コンフィギュレーション

ここではプロトコル・ホスト別にコンフィギュレーションを簡単に解説します。

自分でコンフィグを組んでみたい人向けに、デフォルトでは表示しません。

このページのリファレンスに記載した、Cisco のサイトを参考に設定してみると良いでしょう。

DHCPv6 サーバ

DHCPv6-SV

DHCPv6-SV コンフィグ
プロトコル コンフィグ 解説
DHCPv6 サーバ
DHCPv6-SV#show run | s ipv6 uni|ipv6 dhcp|Gi.*4|ipv6 local
ipv6 unicast-routing

ipv6 dhcp pool DHCPv6-PD01
 prefix-delegation pool PD-POOL01
 link-address 2001:DB8:FD7::1/64
 dns-server 2001:DB8:4860::8888
 domain-name example.com

interface GigabitEthernet4
 no ip address
 negotiation auto
 ipv6 address 2001:DB8:AE86:100::128/64
 ipv6 nd ra suppress all
 ipv6 dhcp server
 no mop enabled
 no mop sysid

ipv6 route ::/0 GigabitEthernet4 FE80::AE86:100:1
ipv6 local pool PD-POOL01 2001:DB8:CAFE::/48 56
ipv6 dhcp pool
  • 払い出すプール全体を設定

prefix-delegation pool

  • 払い出すプレフィックス プールを呼び出す

ink-address

  • 払い出し先の問い合わせ元アドレス
  • 通常は DHCPv6 リレーエージェントの送信元を指定

dns-server

  • 払い出す DNS サーバのアドレス

domain-name

  • 払い出すドメイン名

ipv6 local pool

  • 払い出すプールを IOS 内部で持たせる

IPv6 スタティックルーティング

IPv6_Static_Routing
IPv6_Static_Routing

DHCPv6-SV

DHCPv6-SV コンフィグ
プロトコル コンフィグ 解説
IPv6 スタティックルーティング
DHCPv6-SV#show run | s ipv6 uni|ipv6 route|Gi.*4
ipv6 unicast-routing

interface GigabitEthernet4
 no ip address
 negotiation auto
 ipv6 address 2001:DB8:AE86:100::128/64
 ipv6 nd ra suppress all
 ipv6 dhcp server
 no mop enabled
 no mop sysid

ipv6 route ::/0 GigabitEthernet4 FE80::AE86:100:1
ipv6 route
  • DHCPv6-SV は Core 宛にデフォルトルートを設定
  • OS を統一するため CSR1000V で DHCPv6 サーバを実装していますが、本来はルーティングプロトコルの動作しないサーバ OS が想定されるため、スタティックルーティングとしています

ipv6 address

  • DHCPv6 サーバは DHCPv6 リレーエージェントで指定されるため、固定 IPv6 アドレスを使用します
  • IPv4 DHCP サーバはプライベート アドレスであることが多いですが、IPv6 DHCPv6 サーバはグローバル ユニキャスト アドレスを使用するため、実際にはファイアウォール アプライアンスやサーバ OS の firewalld や iptables などで適切に防御します

Core

Core コンフィグ
プロトコル コンフィグ 解説
IPv6 スタティックルーティング
Core#show run | s ipv6 uni|Gi.*3
ipv6 unicast-routing

interface GigabitEthernet3
 no ip address
 negotiation auto
 ipv6 address FE80::AE86:100:1 link-local
 ipv6 address 2001:DB8:AE86:100::1/64
 ipv6 nd ra suppress all
 ipv6 ospf 1 area 0.0.0.0
 no mop enabled
 no mop sysid
ipv6 address <address> link-local
  • Core は DHCPv6-SV を収容する、ゲートウェイ用インターフェースを設定
  • IPv6 では通常 link-local アドレスをルーティングのネクストホップとして指定

ipv6 nd ra suppress all

  • IPv6 ND ルータ アドバタイズメントを抑制
  • all オプションを付けることで、RS の問い合わせにも応答しなくなる

ipv6 ospf 1 area 0.0.0.0

  • OSPFv3 にこのインターフェースのネットワークを広報するため、エリアを設定

OSPFv3

隣接関係

OSPFv3 Neighbor
OSPFv3 Neighbor

Core

Core コンフィグ
プロトコル コンフィグ 解説
OSPFv3
Core#show run | s Gi.*1|ipv6 uni|ipv6 router|Lo.*0
ipv6 unicast-routing

interface Loopback0
 ip address 1.1.1.1 255.255.255.255
 ipv6 address 2001:DB8:4860::8888/128
 ipv6 enable
 ipv6 ospf 1 area 0.0.0.0

interface GigabitEthernet1
 no ip address
 negotiation auto
 ipv6 address FE80::AE86:200:1 link-local
 ipv6 address 2001:DB8:AE86:200::1/64
 ipv6 ospf 1 area 0.0.0.0
 no mop enabled
 no mop sysid

ipv6 router ospf 1
 router-id 1.1.1.1
 passive-interface default
 no passive-interface GigabitEthernet1
ipv6 ospf 1 area 0.0.0.0 / no passive-interface GigabitEthernet1
  • Core は Gi1 で Dist と接続、OSPFv3 隣接関係を確立する

passive-interface default

  • Gi3 の DHCPv6-SV とは隣接関係を確立しないために、OSPFv3 で passive-interface default を設定する

Dist

Dist コンフィグ
プロトコル コンフィグ 解説
OSPFv3
Dist#show run | s Gi.*4|ipv6 uni|ipv6 router|Lo.*0
ipv6 unicast-routing

interface Loopback0
 ip address 1.1.1.11 255.255.255.255
 ipv6 enable
 ipv6 ospf 1 area 0.0.0.0

interface GigabitEthernet4
 no ip address
 negotiation auto
 ipv6 address FE80::AE86:200:2 link-local
 ipv6 address 2001:DB8:AE86:200::2/64
 ipv6 ospf 1 area 0.0.0.0
 no mop enabled
 no mop sysid

ipv6 router ospf 1
 summary-prefix 2001:DB8:CAFE::/48
 router-id 1.1.1.11
 passive-interface default
 no passive-interface GigabitEthernet4
 redistribute static
ipv6 ospf 1 area 0.0.0.0 / no passive-interface GigabitEthernet4
  • Dist は Gi4 で Core と接続、OSPFv3 隣接関係を確立する

passive-interface default

  • Gi1 の PD-CL と隣接関係を確立しないために、OSPFv3 で passive-interface default を設定する

ルート集約

Dist

Dist コンフィグ
プロトコル コンフィグ 解説
OSPFv3

ルート集約

Dist#show run | s Gi.*1|ipv6 uni|ipv6 router|Lo.*0
ipv6 unicast-routing

interface Loopback0
 ip address 1.1.1.11 255.255.255.255
 ipv6 enable
 ipv6 ospf 1 area 0.0.0.0

interface GigabitEthernet1
 no ip address
 negotiation auto
 ipv6 address FE80:DB8:FD7::1 link-local
 ipv6 address 2001:DB8:FD7::1/64
 ipv6 enable
 ipv6 nd prefix default no-advertise
 ipv6 nd managed-config-flag
 ipv6 nd other-config-flag
 ipv6 dhcp relay destination 2001:DB8:AE86:100::128
 ipv6 dhcp relay source-interface GigabitEthernet1
 ipv6 ospf 1 area 0.0.0.0
 no mop enabled
 no mop sysid

ipv6 router ospf 1
 summary-prefix 2001:DB8:CAFE::/48
 router-id 1.1.1.11
 passive-interface default
 no passive-interface GigabitEthernet4
 redistribute static
ipv6 ospf 1 area 0.0.0.0
  • OSPFv3 にこのインターフェースのネットワークを広報するため、エリアを設定

summary-prefix

  • Dist は Core に OSPFv3 ルートを広報する際、/56 サブネットルートを集約して、/48 集約ルートで広報

redistribute static

  • PD ルートは Cisco の場合スタティックルートとして登録されるため、再配布を設定することで別の OSPFv3 ルータへルートを配布

DHCPv6-PD リレーエージェント

Dist

Dist コンフィグ
プロトコル コンフィグ 解説
DHCPv6

リレーエージェント

Dist#show run int gi 1
Building configuration...
Current configuration?: 406 bytes
!
 interface GigabitEthernet1
  no ip address
  negotiation auto
  ipv6 address FE80:DB8:FD7::1 link-local
  ipv6 address 2001:DB8:FD7::1/64
  ipv6 enable
  ipv6 nd prefix default no-advertise
  ipv6 nd managed-config-flag
  ipv6 nd other-config-flag
  ipv6 dhcp relay destination 2001:DB8:AE86:100::128
  ipv6 dhcp relay source-interface GigabitEthernet1
  ipv6 ospf 1 area 0.0.0.0
  no mop enabled
  no mop sysid
 end
ipv6 address 2001:DB8:FD7::1/64
  • DHCPv6 リレーエージェント link-address に使用す
  • DHCPv6-SV で該当する link-address の Pool からプレフィックスが払い出される
  • 複数の DHCPv6 リレーエージェント機器 (Dist) が存在した場合、DHCPv6 サーバでプールも複数必要なため、リレーエージェントを見分けるための情報として必要

ipv6 nd managed-config-flag

  • ipv6 のアドレス割当を Dist の ND RA (Neighbor Discovery Router Advertisement) から、DHCPv6 サーバへ変更する

ipv6 nd other-config-flag

  • DNS サーバの情報を DHCPv6 サーバに問い合わせる

ipv6 dhcp relay destination

  • DHCPv6-SV のグローバル ユニキャスト アドレスを指定する

ipv6 dhcp relay source-interface

  • DHCPv6-SV にリレーする際の送信元アドレスのインターフェースを指定する
DHCPv6-PD

ルートインジェクション

Dist#show run all | s ipv6 dhcp iapd-route-add
ipv6 dhcp iapd-route-add
ipv6 dhcp iapd-route-add
  • PD が払い出されると、自動でスタティックルートを挿入します
  • デフォルトで有効です

DHCPv6-PD クライアント

PD-CL

PD-CL コンフィグ
プロトコル コンフィグ 解説
DHCPv6-PD

クライアント

PD-CL#show run | s ipv6 uni|Gi.*4
ipv6 unicast-routing

interface GigabitEthernet4
 no ip address
 negotiation auto
 ipv6 address autoconfig default
 ipv6 nd ra suppress all
 ipv6 dhcp client pd PD-PREFIX
 ipv6 dhcp client request vendor
 no mop enabled
 no mop sysid
ipv6 address autoconfig default
  • ipv6 アドレスを自動設定
  • default オプションを付けるとデフォルトルートとして使用

ipv6 dhcp client pd PD-PREFIX

  • DHCPv6 PD クライアントとして設定
  • PD-PREFIX という名前で、サブネット分割する際の集約プレフィックスを登録

DHCPv6-PD SLAAC ゲートウェイ

PD-CL

PD-CL コンフィグ
プロトコル コンフィグ 解説
DHCPv6-PD

クライアント

PD-CL#show run | s ipv6 uni|ipv6 dhcp pool|Gi.*1
ipv6 unicast-routing

ipv6 dhcp pool SLAAC
 import dns-server
 import domain-name

interface GigabitEthernet1
 no ip address
 negotiation auto
 ipv6 address PD-PREFIX?::1/64
 ipv6 nd other-config-flag
 ipv6 dhcp server SLAAC
 no mop enabled
 no mop sysid
ipv6 dhcp pool
  • DHCPv6-PD で受信した DNS サーバとドメイン名を SLAAC プールで使用

ipv6 address PD-PREFIX ::1/64

  • Gi1 で /56 集約ルートである PD-PREFIX から /64 にサブネット分割し、::1/64 アドレスを割当

IPv6 SLAAC クライアント

SLAAC

SLAAC コンフィグ
プロトコル コンフィグ 解説
IPv6 クライアント
SLAAC#show run | s ipv6 uni|Gi.*4
ipv6 unicast-routing

interface GigabitEthernet4
 no ip address
 negotiation auto
 ipv6 address autoconfig default
 no mop enabled
 no mop sysid
ipv6 address autoconfig default
  • ipv6 アドレスを自動設定
  • default オプションを付けるとデフォルトルートとして使用

IPv6 SLAAC クライアントのバッドプラクティス

RA に M フラグの存在しない PD-CL に対し、ipv6 address dhcp を設定しないこと

  • M フラグ = アドレス or プレフィックスをルータ RA -> DHCPv6 サーバからの払い出しに変更する機能

動作確認 - ホスト別 show コマンドリスト

DHCPv6-SV

  • show ipv6 dhcp binding
  • show ipv6 dhcp pool

Core

  • show ipv6 route

Dist

  • show ipv6 ospf summary-prefix
  • show ipv6 dhcp relay binding
  • show ipv6 route static

PD-CL

  • show ipv6 dhcp interface GigabitEthernet 4
  • show ipv6 interface GigabitEthernet 1 prefix
  • show ipv6 dhcp interface GigabitEthernet 1
  • show ipv6 dhcp pool

SLAAC

  • show ipv6 route
  • show ip name-servers

動作確認 - show コマンド

DHCPv6-SV

show ipv6 dhcp binding

DHCPv6-SV 確認コマンド
プロトコル show コマンド 確認ポイント
DHCPv6

サーバ

DHCPv6-SV#show ipv6 dhcp binding
Client: FE80::5200:FF:FE04:3
 DUID: 00030001001E14D9FB00
 Username: unassigned
 VRF: default
 Interface: relayed
 IA PD: IA ID 0x000A0001, T1 302400, T2 483840
  Prefix: 2001:DB8:CAFE::/56
      preferred lifetime 604800, valid lifetime 2592000
      expires at Oct 19 2021 12:07 AM (2587060 seconds)
/56 がバインディングテーブルに存在すること
DHCPv6-SV#show ipv6 dhcp pool
DHCPv6 pool: DHCPv6-PD01
 Prefix pool: PD-POOL01
 Link-address prefix: 2001:DB8:FD7::1/64
       preferred lifetime 604800, valid lifetime 2592000
 DNS server: 2001:DB8:4860::8888
 Domain name: example.com
 Active clients: 1
link-address が PD ルートを払い出す Dist のインターフェースアドレスと一致していること

Core

show ipv6 route

Core 確認コマンド
プロトコル show コマンド 確認ポイント
OSPFv3 Core#show ipv6 route ospf

IPv6 Routing Table - default - 7 entries

Codes: C - Connected, L - Local, S - Static, U - Per-user Static route

       B - BGP, R - RIP, H - NHRP, I1 - ISIS L1

       I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP

       EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination

       NDr - Redirect, RL - RPL, O - OSPF Intra, OI - OSPF Inter

       OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1

       ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations

       ld - LISP dyn-eid, lA - LISP away, le - LISP extranet-policy

       lp - LISP publications, a - Application, m - OMP

O   2001:DB8:FD7::/64 [110/2]

     via FE80::AE86:200:2, GigabitEthernet1

OE2 2001:DB8:CAFE::/48 [110/20]

     via FE80::AE86:200:2, GigabitEthernet1

dist から以下のルートを OSPFv3 で学習していること
  • /64 link-address
  • /48 DHCPv6-PD 集約ルート

/56 の DHCPv6-PD サブネットルートを受信している場合、Dist で集約ルートに失敗しています

Dist

OSPFv3

show ipv6 ospf summary-prefix
Dist 確認コマンド
プロトコル show コマンド 確認ポイント
OSPFv3
Dist#show ipv6 ospf summary-prefix

            OSPFv3 Router with ID (1.1.1.11) (Process ID 1)

2001:DB8:CAFE::/48  Metric 20, External metric type 2, Tag 0
/56 スタティックルートが、集約して /48 で再配布されていること
Dist#show ipv6 route ospf
IPv6 Routing Table - default - 9 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, R - RIP, H - NHRP, I1 - ISIS L1
       I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP
       EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination
       NDr - Redirect, RL - RPL, O - OSPF Intra, OI - OSPF Inter
       OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
       ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations
       ld - LISP dyn-eid, lA - LISP away, le - LISP extranet-policy
       lp - LISP publications, a - Application, m - OMP
O   2001:DB8:4860::8888/128 [110/1]
     via FE80::AE86:200:1, GigabitEthernet4
O   2001:DB8:AE86:100::/64 [110/2]
     via FE80::AE86:200:1, GigabitEthernet4
O   2001:DB8:CAFE::/48 [254/20]
     via Null0, directly connected
以下を Core から受信していること
  • /64 サーバ収容セグメント
  • /128 インターネット模擬 DNS サーバ IP

以下が Null0 ルートとして登録されていること

  • /48 DHCPv6-PD 集約ルート


/48 DHCPv6-PD 集約ルートは、以下の条件で自動登録されます。

  • /56 で PD ルートを払い出し
  • OSPFv3 で summary-prefix を設定


これは以下の効果があります。

  • OSPFv3 で集約ルートを広報することで、ルーティングテーブルの消費量を削減
  • 存在しない /56 ルート宛のトラフィックを受信した際、ASIC などハードウェア レベルでパケットをドロップ
    • Null0 が存在しない + 該当するトラフィックを受信した場合、デフォルトルートで ping/pong ルーティングによるルーティング ループが発生し、CPU 使用率が高騰します
DHCPv6-PD

リレーエージェント

Dist#show ipv6 dhcp relay binding
Relay Bindings associated with default vrf:
Prefix: 2001:DB8:CAFE::/56 (GigabitEthernet1)
  DUID: 00030001001E14D9FB00
  IAID: 655361
  lifetime: 2592000
  expiration: 01:34:35 UTC Oct 19 2021
Summary:
  Total number of Relay bindings = 1
  Total number of IAPD bindings = 1
  Total number of IANA bindings = 0
  Total number of Relay bindings added by Bulk lease = 0
/56 PD ルートと同じプレフィックスを払い出していること
Dist#show ipv6 route static
IPv6 Routing Table - default - 8 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, R - RIP, H - NHRP, I1 - ISIS L1
       I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP
       EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination
       NDr - Redirect, RL - RPL, O - OSPF Intra, OI - OSPF Inter
       OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
       ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations
       ld - LISP dyn-eid, lA - LISP away, le - LISP extranet-policy
       lp - LISP publications, a - Application, m - OMP
S   2001:DB8:CAFE::/56 [1/0]
     via FE80::5200:FF:FE04:3, GigabitEthernet1
DHCPv6 Relay された際、スタティックルートが登録されます

PD クライアント宛 /56 スタティックルートが登録されていること

PD-CL

DHCPv6-PD クライアント

PD-CL 確認コマンド
プロトコル show コマンド 確認ポイント
DHCPv6-PD

クライアント

PD-CL#show ipv6 dhcp interface GigabitEthernet 4
GigabitEthernet4 is in client mode
  Prefix State is OPEN (0)
  Information refresh timer expires in 21:20:06
  Renew will be sent in 3d09h
  Address State is IDLE
  List of known servers:
    Reachable via address: FE80:DB8:FD7::1
    DUID: 00030001001E14471B00
    Preference: 0
    Configuration parameters:
      IA PD: IA ID 0x000A0001, T1 302400, T2 483840
        Prefix: 2001:DB8:CAFE::/56
                preferred lifetime 604800, valid lifetime 2592000
                expires at Oct 19 2021 04:09 AM (2582406 seconds)
      DNS server: 2001:4860:4860::8888
      Domain name: example.com
      Information refresh time: 0
  Prefix name: PD-PREFIX
  Prefix Rapid-Commit: disabled
  Address Rapid-Commit: disabled
/56 プレフィックスを受信していること

DNS サーバアドレスが DHCPv6 サーバで設定したものと同一であること

ドメイン名が DHCPv6 サーバで設定したものと同一であること

下位にサブネット分割するための、プレフィックス名があること

PD-CL#show ipv6 interface GigabitEthernet 1 prefix
IPv6 Prefix Advertisements GigabitEthernet1
Codes for 1st column:
       A - Address, P - Prefix-Advertisement, O - Pool
       U - Per-user prefix
Codes for 2nd column and above:
       D - Default
       N - Not advertised, C - Calendar
PD default [LA] Valid lifetime 2592000, preferred lifetime 604800
A 2001:DB8:CAFE::/64 [LA] Valid lifetime 2592000, preferred lifetime 604800
下位側インターフェースに PRE-PREFIX /56 を上位に使用した、/64 プレフィックスを割り当てていること
DHCPv6 サーバ
PD-CL#show ipv6 dhcp interface GigabitEthernet 1
GigabitEthernet1 is in server mode
  Using pool: SLAAC
  Preference value: 0
  Hint from client: ignored
  Rapid-Commit: disabled
Gi1 に pool 名を指定した場合、pool 名が出力されます

Automatic で Pool 名を指定しない場合もあります

PD-CL#show ipv6 dhcp pool
DHCPv6 pool: SLAAC
  Imported DNS server: 2001:DB8:4860::8888
  Imported Domain name: example.com
  Active clients: 0
Pool に DHCPv6 サーバから受信した
  • DNS サーバ
  • ドメイン名

が設定されていること

SLAAC

SLAAC 確認コマンド
プロトコル show コマンド 確認ポイント
IPv6 クライアント
SLAAC#show ipv6 route
IPv6 Routing Table - default - 4 entries
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route
       B - BGP, R - RIP, H - NHRP, I1 - ISIS L1
       I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP
       EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination
       NDr - Redirect, RL - RPL, O - OSPF Intra, OI - OSPF Inter
       OE1 - OSPF ext 1, OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1
       ON2 - OSPF NSSA ext 2, la - LISP alt, lr - LISP site-registrations
       ld - LISP dyn-eid, lA - LISP away, le - LISP extranet-policy
       lp - LISP publications, a - Application, m - OMP
ND  ::/0 [2/0]
     via FE80::5200:FF:FE04:0, GigabitEthernet4
NDp 2001:DB8:CAFE::/64 [2/0]
     via GigabitEthernet4, directly connected
L   2001:DB8:CAFE:0:5200:FF:FE05:3/128 [0/0]
     via GigabitEthernet4, receive
L   FF00::/8 [0/0]
     via Null0, receive
IPv6 デフォルトルートを持っていること

PD-CL でサブネット分割されたグローバルユニキャストネットワークアドレスを持っていること

SLAAC#show ip name-servers
2001:DB8:4860::8888
DHCPV6-PD -> PD-CL 経由で DNS サーバを受信できていること

疎通確認

疎通不可の場合、traceroute で不通となっている箇所を特定し、該当するプロトコルを切り分けて障害箇所を特定します。

Dist プロビジョニング用疎通確認

DHCPv6 プロビジョニングに必要な疎通確認は、以下になります。

Dist Gi4 -> DHCPv6-SV : ping 2001:DB8:AE86:100::128

  • 失敗する場合、Core と接続する OSPFv3 P2P アドレスで、OSPFv3 の広報に失敗していないか確認します

Dist Gi1 -> DHCPv6-SV : ping 2001:DB8:AE86:100::128 source Gi1

  • 失敗する場合、PD-CL 収容インターフェースのアドレスで、OSPFv3 の広報に失敗していないか確認します
  • DHCPv6 の払い出しの前提条件となります

PD-CL / SLAAC プロビジョニング疎通確認

DHCPv6 プロビジョニング確認に必要な疎通確認は、以下になります。

PD-CL / SLAAC Gi4 -> DHCPv6-SV : ping 2001:DB8:AE86:100::128

  • 失敗する場合、以下を確認します
    • PD-CL 収容インターフェースのアドレスで、OSPFv3 の広報に失敗していないか
    • PD-CL でデフォルトルートを持っているか

PD-CL / SLAAC サービス疎通確認

サービス確認に必要な疎通確認は、以下になります。

PD-CL / SLAAC Gi4 -> Core Lo0 : ping 2001:DB8:AE86:100::128

  • 失敗する場合、以下を確認します
    • PD-CL 収容インターフェースのアドレスで、OSPFv3 の広報に失敗していないか
    • PD-CL でデフォルトルートを持っているか
    • Core で ::8888 のアドレスを OSPFv3 で広報しているか


パケットキャプチャ

以下の手順で採取しました。

  1. PD-CL Gi4 を shutdown
  2. write memory
  3. reload
  4. 各所でキャプチャ開始
  5. PD-CL Gi4 no shutdown

再起動しない場合、以前取得していたプレフィックスを再度要求する、rebind メッセージがキャプチャできます。

DHCPv6-SV Gi4 ファイル:DHCPv6-SV Gi4.pcapng

01-DHCPv6 Relay Forward

Frame 1: 231 bytes on wire (1848 bits), 231 bytes captured (1848 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:02:00:02 (50:00:00:02:00:02), Dst: 50:00:00:01:00:03 (50:00:00:01:00:03)
Internet Protocol Version 6, Src: 2001:db8:fd7::1, Dst: 2001:db8:ae86:100::128
User Datagram Protocol, Src Port: 547, Dst Port: 547
DHCPv6
    Message type: Relay-forw (12)
    Hopcount: 0
    Link address: 2001:db8:fd7::1
    Peer address: fe80::5200:ff:fe04:3
    Relay Message
        Option: Relay Message (9)
        Length: 84
        DHCPv6
            Message type: Solicit (1)
            Transaction ID: 0x17cbbf
            Elapsed time
                Option: Elapsed time (8)
                Length: 2
                Elapsed time: 0ms
            Client Identifier
                Option: Client Identifier (1)
                Length: 10
                DUID: 00030001001e14d9fb00
                DUID Type: link-layer address (3)
                Hardware type: Ethernet (1)
                Link-layer address: 00:1e:14:d9:fb:00
            User Class
                Option: User Class (15)
                Length: 10
            Vendor Class
                Option: Vendor Class (16)
                Length: 14
                Enterprise ID: ciscoSystems (9)
                vendor-class-data: CSR1000V
            Option Request
                Option: Option Request (6)
                Length: 8
                Requested Option code: Identity Association for Prefix Delegation (25)
                Requested Option code: DNS recursive name server (23)
                Requested Option code: Domain Search List (24)
                Requested Option code: Boot File URL (59)
            Identity Association for Prefix Delegation
                Option: Identity Association for Prefix Delegation (25)
                Length: 12
                IAID: 000a0001
                T1: 0
                T2: 0
    Client Link-Layer Address
        Option: Client Link-Layer Address (79)
        Length: 8
    Interface-Id
        Option: Interface-Id (18)
        Length: 5
        Interface-ID: 0103476931
    Remote Identifier
        Option: Remote Identifier (37)
        Length: 22
        Enterprise ID: ciscoSystems (9)
        Remote-ID: 020000000000000a00030001001ee5c71700

003 : Dist の Gi1 2001:db8:fd7::1 を送信元 IPv6 , DHCPv6-SV の Gi4 2001:db8:ae86:100::128 を宛先 IPv6 に指定しています

006 : Relay Forward メッセージを示しています

009 : PD-CL Gi4 Link-local アドレス

020-026 : DUID は DHCPv6 のクライアント固有識別子を示す DUID Type が 3 になっており、リンクレイヤーアドレスを元にしてアドレスやプレフィックスを払い出す DUID-LL を意味する (RFC8415)

026 : DHCPv6-PD クライアントの MAC アドレス

035-41 : 取得したい アドレス or プレフィックス、DNS サーバ IP など

042-47 : RFC3633 IA-PD (Identity Association for Prefix Delegation) オプション

02-DHCPv6 Relay Reply

Frame 2: 223 bytes on wire (1784 bits), 223 bytes captured (1784 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:01:00:03 (50:00:00:01:00:03), Dst: 50:00:00:02:00:02 (50:00:00:02:00:02)
Internet Protocol Version 6, Src: 2001:db8:ae86:100::128, Dst: 2001:db8:fd7::1
User Datagram Protocol, Src Port: 547, Dst Port: 547
DHCPv6
    Message type: Relay-reply (13)
    Hopcount: 0
    Link address: 2001:db8:fd7::1
    Peer address: fe80::5200:ff:fe04:3
    Relay Message
        Option: Relay Message (9)
        Length: 114
        DHCPv6
            Message type: Advertise (2)
            Transaction ID: 0x17cbbf
            Server Identifier
                Option: Server Identifier (2)
                Length: 10
                DUID: 00030001001e14471b00
                DUID Type: link-layer address (3)
                Hardware type: Ethernet (1)
                Link-layer address: 00:1e:14:47:1b:00
            Client Identifier
                Option: Client Identifier (1)
                Length: 10
                DUID: 00030001001e14d9fb00
                DUID Type: link-layer address (3)
                Hardware type: Ethernet (1)
                Link-layer address: 00:1e:14:d9:fb:00
            Identity Association for Prefix Delegation
                Option: Identity Association for Prefix Delegation (25)
                Length: 41
                IAID: 000a0001
                T1: 302400
                T2: 483840
                IA Prefix
                    Option: IA Prefix (26)
                    Length: 25
                    Preferred lifetime: 604800
                    Valid lifetime: 2592000
                    Prefix length: 56
                    Prefix address: 2001:db8:cafe::
            DNS recursive name server
                Option: DNS recursive name server (23)
                Length: 16
                 1 DNS server address: 2001:4860:4860::8888
            Domain Search List
                Option: Domain Search List (24)
                Length: 13
                Domain name suffix search list
    Interface-Id
        Option: Interface-Id (18)
        Length: 5
        Interface-ID: 0103476931

003 : DHCPv6-SV の Gi4 2001:db8:ae86:100::128 を送信元 IPv6 , Dist の Gi1 2001:db8:fd7::1 を宛先 IPv6 に指定しています

006 : Relay-Reply メッセージを示しています

009 : PD-CL Gi4 Link-local アドレス

029 : DHCPv6-PD クライアントの MAC アドレス

030-42 : RFC3633 IA-PD オプション 取得したい アドレス or プレフィックス、DNS サーバ IP など

043-46 : DNS サーバ

047-50 : ドメイン検索リスト

03-DHCPv6 Relay Forward

Frame 3: 274 bytes on wire (2192 bits), 274 bytes captured (2192 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:02:00:02 (50:00:00:02:00:02), Dst: 50:00:00:01:00:03 (50:00:00:01:00:03)
Internet Protocol Version 6, Src: 2001:db8:fd7::1, Dst: 2001:db8:ae86:100::128
User Datagram Protocol, Src Port: 547, Dst Port: 547
DHCPv6
    Message type: Relay-forw (12)
    Hopcount: 0
    Link address: 2001:db8:fd7::1
    Peer address: fe80::5200:ff:fe04:3
    Relay Message
        Option: Relay Message (9)
        Length: 127
        DHCPv6
            Message type: Request (3)
            Transaction ID: 0x1948ce
            Elapsed time
                Option: Elapsed time (8)
                Length: 2
                Elapsed time: 0ms
            Client Identifier
                Option: Client Identifier (1)
                Length: 10
                DUID: 00030001001e14d9fb00
                DUID Type: link-layer address (3)
                Hardware type: Ethernet (1)
                Link-layer address: 00:1e:14:d9:fb:00
            User Class
                Option: User Class (15)
                Length: 10
            Vendor Class
                Option: Vendor Class (16)
                Length: 14
                Enterprise ID: ciscoSystems (9)
                vendor-class-data: CSR1000V
            Option Request
                Option: Option Request (6)
                Length: 8
                Requested Option code: Identity Association for Prefix Delegation (25)
                Requested Option code: DNS recursive name server (23)
                Requested Option code: Domain Search List (24)
                Requested Option code: Boot File URL (59)
            Server Identifier
                Option: Server Identifier (2)
                Length: 10
                DUID: 00030001001e14471b00
                DUID Type: link-layer address (3)
                Hardware type: Ethernet (1)
                Link-layer address: 00:1e:14:47:1b:00
            Identity Association for Prefix Delegation
                Option: Identity Association for Prefix Delegation (25)
                Length: 41
                IAID: 000a0001
                T1: 0
                T2: 0
                IA Prefix
                    Option: IA Prefix (26)
                    Length: 25
                    Preferred lifetime: 0
                    Valid lifetime: 0
                    Prefix length: 56
                    Prefix address: 2001:db8:cafe::
    Client Link-Layer Address
        Option: Client Link-Layer Address (79)
        Length: 8
    Interface-Id
        Option: Interface-Id (18)
        Length: 5
        Interface-ID: 0103476931
    Remote Identifier
        Option: Remote Identifier (37)
        Length: 22
        Enterprise ID: ciscoSystems (9)
        Remote-ID: 020000000000000a00030001001ee5c71700

01-Relay Forward と 02-Relay Reply で交渉した結果、クライアントが要求した内容を示します。


003 : Dist の Gi1 2001:db8:fd7::1 を送信元 IPv6 , DHCPv6-SV の Gi4 2001:db8:ae86:100::128 を宛先 IPv6 に指定しています

006 : Relay Forward メッセージを示しています

009 : PD-CL Gi4 Link-local アドレス

020-026 : DUID は DHCPv6 のクライアント固有識別子を示す DUID Type が 3 になっており、リンクレイヤーアドレスを元にしてアドレスやプレフィックスを払い出す DUID-LL を意味する (RFC8415)

026 : DHCPv6-PD クライアントの MAC アドレス

035-41 : 取得したい アドレス or プレフィックス、DNS サーバ IP など

049-61 : RFC3633 IA-PD オプション 取得したい アドレス or プレフィックス

04-DHCPv6 Relay Reply

Frame 4: 223 bytes on wire (1784 bits), 223 bytes captured (1784 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:01:00:03 (50:00:00:01:00:03), Dst: 50:00:00:02:00:02 (50:00:00:02:00:02)
Internet Protocol Version 6, Src: 2001:db8:ae86:100::128, Dst: 2001:db8:fd7::1
User Datagram Protocol, Src Port: 547, Dst Port: 547
DHCPv6
    Message type: Relay-reply (13)
    Hopcount: 0
    Link address: 2001:db8:fd7::1
    Peer address: fe80::5200:ff:fe04:3
    Relay Message
        Option: Relay Message (9)
        Length: 114
        DHCPv6
            Message type: Reply (7)
            Transaction ID: 0x1948ce
            Server Identifier
                Option: Server Identifier (2)
                Length: 10
                DUID: 00030001001e14471b00
                DUID Type: link-layer address (3)
                Hardware type: Ethernet (1)
                Link-layer address: 00:1e:14:47:1b:00
            Client Identifier
                Option: Client Identifier (1)
                Length: 10
                DUID: 00030001001e14d9fb00
                DUID Type: link-layer address (3)
                Hardware type: Ethernet (1)
                Link-layer address: 00:1e:14:d9:fb:00
            Identity Association for Prefix Delegation
                Option: Identity Association for Prefix Delegation (25)
                Length: 41
                IAID: 000a0001
                T1: 302400
                T2: 483840
                IA Prefix
                    Option: IA Prefix (26)
                    Length: 25
                    Preferred lifetime: 604800
                    Valid lifetime: 2592000
                    Prefix length: 56
                    Prefix address: 2001:db8:cafe::
            DNS recursive name server
                Option: DNS recursive name server (23)
                Length: 16
                 1 DNS server address: 2001:4860:4860::8888
            Domain Search List
                Option: Domain Search List (24)
                Length: 13
                Domain name suffix search list
    Interface-Id
        Option: Interface-Id (18)
        Length: 5
        Interface-ID: 0103476931

03-Relay Forward に対し、実際に割り当てるアドレス・プレフィックスを 04 で返信します。


003 : DHCPv6-SV の Gi4 2001:db8:ae86:100::128 を送信元 IPv6 , Dist の Gi1 2001:db8:fd7::1 を宛先 IPv6 に指定しています

006 : Relay-Reply メッセージを示しています

009 : PD-CL Gi4 Link-local アドレス

029 : DHCPv6-PD クライアントの MAC アドレス

030-42 : RFC3633 IA-PD オプション 取得したい アドレス or プレフィックス

043-46 : DNS サーバ

047-50 : ドメイン検索リスト





PD-CL ファイル:PD-CL Gi4 capture.pcapng

DHCPv6 M / O フラグを両方 On にして、プレフィックスと DNS サーバを DHCPv6 サーバから取得するキャプチャです。

01-DHCPv6 Solicit

Frame 14: 146 bytes on wire (1168 bits), 146 bytes captured (1168 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:04:00:03 (50:00:00:04:00:03), Dst: IPv6mcast_01:00:02 (33:33:00:01:00:02)
Internet Protocol Version 6, Src: fe80::5200:ff:fe04:3, Dst: ff02::1:2
User Datagram Protocol, Src Port: 546, Dst Port: 547
DHCPv6
    Message type: Solicit (1)
    Transaction ID: 0x17cbbf
    Elapsed time
        Option: Elapsed time (8)
        Length: 2
        Elapsed time: 0ms
    Client Identifier
        Option: Client Identifier (1)
        Length: 10
        DUID: 00030001001e14d9fb00
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:14:d9:fb:00
    User Class
        Option: User Class (15)
        Length: 10
    Vendor Class
        Option: Vendor Class (16)
        Length: 14
        Enterprise ID: ciscoSystems (9)
        vendor-class-data: CSR1000V
    Option Request
        Option: Option Request (6)
        Length: 8
        Requested Option code: Identity Association for Prefix Delegation (25)
        Requested Option code: DNS recursive name server (23)
        Requested Option code: Domain Search List (24)
        Requested Option code: Boot File URL (59)
    Identity Association for Prefix Delegation
        Option: Identity Association for Prefix Delegation (25)
        Length: 12
        IAID: 000a0001
        T1: 0
        T2: 0

003 : PD-CL ではリンクローカル アドレスしか持っていないため、送信元がリンクローカル、宛先が ff02::1:2 のルータ宛マルチキャストアドレスになります

006 : Solicit メッセージを示しています

012-018 : DUID は DHCPv6 のクライアント固有識別子を示す DUID Type が 3 になっており、リンクレイヤーアドレスを元にしてアドレスやプレフィックスを払い出す DUID-LL を意味する (RFC8415)

018 : DHCPv6-PD クライアントの MAC アドレス

027-33 : 取得したい アドレス or プレフィックス、DNS サーバ IP など

034-39 : RFC3633 IA-PD (Identity Association for Prefix Delegation) オプション

02-DHCPv6 Advertise

Frame 15: 176 bytes on wire (1408 bits), 176 bytes captured (1408 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:03:00:00 (50:00:00:03:00:00), Dst: 50:00:00:04:00:03 (50:00:00:04:00:03)
Internet Protocol Version 6, Src: fe80:db8:fd7::1, Dst: fe80::5200:ff:fe04:3
User Datagram Protocol, Src Port: 547, Dst Port: 546
DHCPv6
    Message type: Advertise (2)
    Transaction ID: 0x17cbbf
    Server Identifier
        Option: Server Identifier (2)
        Length: 10
        DUID: 00030001001e14471b00
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:14:47:1b:00
    Client Identifier
        Option: Client Identifier (1)
        Length: 10
        DUID: 00030001001e14d9fb00
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:14:d9:fb:00
    Identity Association for Prefix Delegation
        Option: Identity Association for Prefix Delegation (25)
        Length: 41
        IAID: 000a0001
        T1: 302400
        T2: 483840
        IA Prefix
            Option: IA Prefix (26)
            Length: 25
            Preferred lifetime: 604800
            Valid lifetime: 2592000
            Prefix length: 56
            Prefix address: 2001:db8:cafe::
    DNS recursive name server
        Option: DNS recursive name server (23)
        Length: 16
         1 DNS server address: 2001:4860:4860::8888
    Domain Search List
        Option: Domain Search List (24)
        Length: 13
        Domain name suffix search list

003 : PD-CL ではリンクローカル アドレスしか持っていないため、宛先が PD-CL リンクローカル、送信元がルータのリンクローカルになります

006 : Advertise メッセージを示している

021 : DHCPv6-PD クライアントの MAC アドレス

022-34 : RFC3633 IA-PD オプション 取得したい アドレス or プレフィックス

035-38 : DNS サーバ

039-42 : ドメイン検索リスト

03-DHCPv6 Request

Frame 16: 189 bytes on wire (1512 bits), 189 bytes captured (1512 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:04:00:03 (50:00:00:04:00:03), Dst: IPv6mcast_01:00:02 (33:33:00:01:00:02)
Internet Protocol Version 6, Src: fe80::5200:ff:fe04:3, Dst: ff02::1:2
User Datagram Protocol, Src Port: 546, Dst Port: 547
DHCPv6
    Message type: Request (3)
    Transaction ID: 0x1948ce
    Elapsed time
        Option: Elapsed time (8)
        Length: 2
        Elapsed time: 0ms
    Client Identifier
        Option: Client Identifier (1)
        Length: 10
        DUID: 00030001001e14d9fb00
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:14:d9:fb:00
    User Class
        Option: User Class (15)
        Length: 10
    Vendor Class
        Option: Vendor Class (16)
        Length: 14
        Enterprise ID: ciscoSystems (9)
        vendor-class-data: CSR1000V
    Option Request
        Option: Option Request (6)
        Length: 8
        Requested Option code: Identity Association for Prefix Delegation (25)
        Requested Option code: DNS recursive name server (23)
        Requested Option code: Domain Search List (24)
        Requested Option code: Boot File URL (59)
    Server Identifier
        Option: Server Identifier (2)
        Length: 10
        DUID: 00030001001e14471b00
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:14:47:1b:00
    Identity Association for Prefix Delegation
        Option: Identity Association for Prefix Delegation (25)
        Length: 41
        IAID: 000a0001
        T1: 0
        T2: 0
        IA Prefix
            Option: IA Prefix (26)
            Length: 25
            Preferred lifetime: 0
            Valid lifetime: 0
            Prefix length: 56
            Prefix address: 2001:db8:cafe::

01-Solicit と 02-Advertise で交渉した結果、クライアントが要求する内容を示します。


003 : PD-CL ではリンクローカル アドレスしか持っていないため、送信元がリンクローカル、宛先が ff02::1:2 のルータ宛マルチキャストアドレスになります

006 : Request メッセージを示しています

013-018 : DUID は DHCPv6 のクライアント固有識別子を示す DUID Type が 3 になっており、リンクレイヤーアドレスを元にしてアドレスやプレフィックスを払い出す DUID-LL を意味する (RFC8415)

018 : DHCPv6-PD クライアントの MAC アドレス

027-33 : 取得したい アドレス or プレフィックス、DNS サーバ IP など

041-53 : RFC3633 IA-PD オプション 取得したい アドレス or プレフィックス

04-DHCPv6 Reply

Frame 17: 176 bytes on wire (1408 bits), 176 bytes captured (1408 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:03:00:00 (50:00:00:03:00:00), Dst: 50:00:00:04:00:03 (50:00:00:04:00:03)
Internet Protocol Version 6, Src: fe80:db8:fd7::1, Dst: fe80::5200:ff:fe04:3
User Datagram Protocol, Src Port: 547, Dst Port: 546
DHCPv6
    Message type: Reply (7)
    Transaction ID: 0x1948ce
    Server Identifier
        Option: Server Identifier (2)
        Length: 10
        DUID: 00030001001e14471b00
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:14:47:1b:00
    Client Identifier
        Option: Client Identifier (1)
        Length: 10
        DUID: 00030001001e14d9fb00
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:14:d9:fb:00
    Identity Association for Prefix Delegation
        Option: Identity Association for Prefix Delegation (25)
        Length: 41
        IAID: 000a0001
        T1: 302400
        T2: 483840
        IA Prefix
            Option: IA Prefix (26)
            Length: 25
            Preferred lifetime: 604800
            Valid lifetime: 2592000
            Prefix length: 56
            Prefix address: 2001:db8:cafe::
    DNS recursive name server
        Option: DNS recursive name server (23)
        Length: 16
         1 DNS server address: 2001:4860:4860::8888
    Domain Search List
        Option: Domain Search List (24)
        Length: 13
        Domain name suffix search list

03-Request に対し、実際に割り当てられたアドレス・プレフィックスを 04 で受信。


003 : PD-CL ではリンクローカル アドレスしか持っていないため、宛先が PD-CL リンクローカル、送信元がルータのリンクローカルになります

006 : Reply メッセージを示しています

021 : DHCPv6-PD クライアントの MAC アドレス

022-34 : RFC3633 IA-PD オプション 取得したい アドレス or プレフィックス

035-38 : DNS サーバ

039-42 : ドメイン検索リスト

SLAAC ICMPv6 NS / NA ファイル:SLAAC Gi4 capture.pcapng

IPv6 ND RA で DHCPv6 サーバではなく、PD-CL ルータからアドレスを払い出す SLAAC クライアントのキャプチャです。

ここのみ SLAAC を再起動して取得しています。

  • DHCPv6-PD の払い出しと、別の処理で行われるため

01-ICMPv6 Neighbor Solicitation (NS)

Frame 4: 86 bytes on wire (688 bits), 86 bytes captured (688 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_ff:05:00:03 (33:33:ff:05:00:03)
Internet Protocol Version 6, Src: ::, Dst: ff02::1:ff05:3
Internet Control Message Protocol v6
    Type: Neighbor Solicitation (135)
    Code: 0
    Checksum: 0x821b [correct]
    [Checksum Status: Good]
    Reserved: 00000000
    Target Address: fe80::5200:ff:fe05:3
    ICMPv6 Option (Nonce)
        Type: Nonce (14)
        Length: 1 (8 bytes)
        Nonce: 7dfaf2df2a18

003 : SLAAC ではリンクローカル アドレスが使用できるかまだわからないため、送信元がなし、宛先が ff02::1:2 のルータ宛マルチキャストアドレスになります

Duplicate Address Detection (DAD) が終わったあとに、送信元アドレスが使用可能になります

005 : Neighbor Solicitation メッセージを示しています


02-ICMPv6 Neighbor Advertisement (NA)

Frame 9: 86 bytes on wire (688 bits), 86 bytes captured (688 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_01 (33:33:00:00:00:01)
Internet Protocol Version 6, Src: fe80::5200:ff:fe05:3, Dst: ff02::1
Internet Control Message Protocol v6
    Type: Neighbor Advertisement (136)
    Code: 0
    Checksum: 0xe784 [correct]
    [Checksum Status: Good]
    Flags: 0xa0000000, Router, Override
        1... .... .... .... .... .... .... .... = Router: Set
        .0.. .... .... .... .... .... .... .... = Solicited: Not set
        ..1. .... .... .... .... .... .... .... = Override: Set
        ...0 0000 0000 0000 0000 0000 0000 0000 = Reserved: 0
    Target Address: fe80::5200:ff:fe05:3
    ICMPv6 Option (Target link-layer address : 50:00:00:05:00:03)
        Type: Target link-layer address (2)
        Length: 1 (8 bytes)
        Link-layer address: 50:00:00:05:00:03 (50:00:00:05:00:03)

003 : SLAAC ではリンクローカル アドレスが使用できるかまだわからないため、送信元がルータのリンクローカルアドレス、宛先が ff02::1 の全ノード宛マルチキャストアドレスになります

005 : Neighbor Advertisement を示しています

009-013 : ルータ + 上書きフラグをセット


SLAAC ICMPv6 RS / RA

01-ICMPv6 Router Solicitation (RS)

Frame 13: 70 bytes on wire (560 bits), 70 bytes captured (560 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_02 (33:33:00:00:00:02)
Internet Protocol Version 6, Src: fe80::5200:ff:fe05:3, Dst: ff02::2
Internet Control Message Protocol v6
    Type: Router Solicitation (133)
    Code: 0
    Checksum: 0xdb1d [correct]
    [Checksum Status: Good]
    Reserved: 00000000
    ICMPv6 Option (Source link-layer address : 50:00:00:05:00:03)
        Type: Source link-layer address (1)
        Length: 1 (8 bytes)
        Link-layer address: 50:00:00:05:00:03 (50:00:00:05:00:03)

003 : SLAAC では NS / NA でリンクローカル アドレスを取得したため、送信元が SLAAC のリンクローカルアドレス、宛先が ff02::2 のルータ宛マルチキャストアドレスになります

005 : Router Solicitation タイプを示しています

01-ICMPv6 Router Advertisement (RA)

Frame 14: 118 bytes on wire (944 bits), 118 bytes captured (944 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:04:00:00 (50:00:00:04:00:00), Dst: IPv6mcast_01 (33:33:00:00:00:01)
Internet Protocol Version 6, Src: fe80::5200:ff:fe04:0, Dst: ff02::1
Internet Control Message Protocol v6
    Type: Router Advertisement (134)
    Code: 0
    Checksum: 0x83a4 [correct]
    [Checksum Status: Good]
    Cur hop limit: 64
    Flags: 0x40, Other configuration, Prf (Default Router Preference): Medium
        0... .... = Managed address configuration: Not set
        .1.. .... = Other configuration: Set
        ..0. .... = Home Agent: Not set
        ...0 0... = Prf (Default Router Preference): Medium (0)
        .... .0.. = Proxy: Not set
        .... ..0. = Reserved: 0
    Router lifetime (s): 1800
    Reachable time (ms): 0
    Retrans timer (ms): 0
    ICMPv6 Option (Source link-layer address : 50:00:00:04:00:00)
        Type: Source link-layer address (1)
        Length: 1 (8 bytes)
        Link-layer address: 50:00:00:04:00:00 (50:00:00:04:00:00)
    ICMPv6 Option (MTU : 1500)
        Type: MTU (5)
        Length: 1 (8 bytes)
        Reserved
        MTU: 1500
    ICMPv6 Option (Prefix information : 2001:db8:cafe::/64)
        Type: Prefix information (3)
        Length: 4 (32 bytes)
        Prefix Length: 64
        Flag: 0xc0, On-link flag(L), Autonomous address-configuration flag(A)
            1... .... = On-link flag(L): Set
            .1.. .... = Autonomous address-configuration flag(A): Set
            ..0. .... = Router address flag(R): Not set
            ...0 0000 = Reserved: 0
        Valid Lifetime: 2592000
        Preferred Lifetime: 604800
        Reserved
        Prefix: 2001:db8:cafe::

003 : 送信元が PD-CL のリンクローカルアドレス、宛先が ff02::1 の全ノード宛マルチキャストアドレスになります

005 : Router Advertisement タイプを示しています

010-016 : Other フラグが On

029-041 : 使用可能なプレフィックスを指定

03-DHCPv6 Information Request

Frame 15: 132 bytes on wire (1056 bits), 132 bytes captured (1056 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_01:00:02 (33:33:00:01:00:02)
Internet Protocol Version 6, Src: fe80::5200:ff:fe05:3, Dst: ff02::1:2
User Datagram Protocol, Src Port: 546, Dst Port: 547
DHCPv6
    Message type: Information-request (11)
    Transaction ID: 0xc3b690
    Elapsed time
        Option: Elapsed time (8)
        Length: 2
        Elapsed time: 0ms
    Client Identifier
        Option: Client Identifier (1)
        Length: 10
        DUID: 00030001001ebd296800
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:bd:29:68:00
    User Class
        Option: User Class (15)
        Length: 10
    Vendor Class
        Option: Vendor Class (16)
        Length: 14
        Enterprise ID: ciscoSystems (9)
        vendor-class-data: CSR1000V
    Option Request
        Option: Option Request (6)
        Length: 10
        Requested Option code: DNS recursive name server (23)
        Requested Option code: Domain Search List (24)
        Requested Option code: Subscriber Identifier (38)
        Requested Option code: Boot File URL (59)
        Requested Option code: Vendor-specific Information (17)

003 : SLAAC では NS / NA でリンクローカル アドレスを取得したため、送信元が SLAAC のリンクローカルアドレス、宛先が ff02::2 のルータ宛マルチキャストアドレスになります

005 : Information Request メッセージタイプを示しています

027-034 : DHCPv6 サーバから取得したい情報を示しています M フラグがないため、アドレスは要求していません


04-DHCPv6 Reply

Frame 16: 131 bytes on wire (1048 bits), 131 bytes captured (1048 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:04:00:00 (50:00:00:04:00:00), Dst: 50:00:00:05:00:03 (50:00:00:05:00:03)
Internet Protocol Version 6, Src: fe80::5200:ff:fe04:0, Dst: fe80::5200:ff:fe05:3
User Datagram Protocol, Src Port: 547, Dst Port: 546
DHCPv6
    Message type: Reply (7)
    Transaction ID: 0xc3b690
    Server Identifier
        Option: Server Identifier (2)
        Length: 10
        DUID: 00030001001e14d9fb00
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:14:d9:fb:00
    Client Identifier
        Option: Client Identifier (1)
        Length: 10
        DUID: 00030001001ebd296800
        DUID Type: link-layer address (3)
        Hardware type: Ethernet (1)
        Link-layer address: 00:1e:bd:29:68:00
    DNS recursive name server
        Option: DNS recursive name server (23)
        Length: 16
         1 DNS server address: 2001:4860:4860::8888
    Domain Search List
        Option: Domain Search List (24)
        Length: 13
        Domain name suffix search list
            List entry: example.com.

003 : SLAAC では NS / NA でリンクローカル アドレスを取得したため、送信元が PD-CL のリンクローカルアドレス、宛先が SLAAC のリンクローカルアドレスになります

005 : Reply メッセージタイプを示しています

027-034 : DHCPv6 サーバから取得したい情報を示しています 03 の Information Request に M フラグがないため、アドレスは要求していません O フラグは On のため、DNS サーバの情報を返しています

05-ICMPv6 Neighbor Solicitation (NS)

Frame 17: 86 bytes on wire (688 bits), 86 bytes captured (688 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_ff:05:00:03 (33:33:ff:05:00:03)
Internet Protocol Version 6, Src: ::, Dst: ff02::1:ff05:3
Internet Control Message Protocol v6
    Type: Neighbor Solicitation (135)
    Code: 0
    Checksum: 0xe74d [correct]
    [Checksum Status: Good]
    Reserved: 00000000
    Target Address: 2001:db8:cafe:0:5200:ff:fe05:3
    ICMPv6 Option (Nonce)
        Type: Nonce (14)
        Length: 1 (8 bytes)
        Nonce: 2b53d5943aa1

2001:db8:cafe:0:5200:ff:fe05:3 宛に NS を送信し、使用中のノードがいないか確認します。

06-ICMPv6 Neighbor Advertisement (NA)

Frame 18: 86 bytes on wire (688 bits), 86 bytes captured (688 bits) on interface -, id 0
Ethernet II, Src: 50:00:00:05:00:03 (50:00:00:05:00:03), Dst: IPv6mcast_01 (33:33:00:00:00:01)
Internet Protocol Version 6, Src: 2001:db8:cafe:0:5200:ff:fe05:3, Dst: ff02::1
Internet Control Message Protocol v6
    Type: Neighbor Advertisement (136)
    Code: 0
    Checksum: 0xf316 [correct]
    [Checksum Status: Good]
    Flags: 0xa0000000, Router, Override
        1... .... .... .... .... .... .... .... = Router: Set
        .0.. .... .... .... .... .... .... .... = Solicited: Not set
        ..1. .... .... .... .... .... .... .... = Override: Set
        ...0 0000 0000 0000 0000 0000 0000 0000 = Reserved: 0
    Target Address: 2001:db8:cafe:0:5200:ff:fe05:3
    ICMPv6 Option (Target link-layer address : 50:00:00:05:00:03)
        Type: Target link-layer address (2)
        Length: 1 (8 bytes)
        Link-layer address: 50:00:00:05:00:03 (50:00:00:05:00:03)

05 の 1 秒後に、使用中のノードがいないため、2001:db8:cafe:0:5200:ff:fe05:3 を SLAAC で使用します。

リファレンス

Cisco機器を用いた DHCP によるIPアドレス自動取得動作の確認と解説 (DHCPv6-PD)

CSR1000V IPv6 Access Services: DHCPv6 Prefix Delegation

DHCPv6 using the Prefix Delegation Feature Configuration Example

プロフェッショナルIPv6

Cisco Catalyst 9300 Series Switches Data Sheet

DHCPv6の基本仕様が改定 - RFC 8415

RFC8415 - Dynamic Host Configuration Protocol for IPv6 (DHCPv6)

RFC6355 Standards Track - Definition of the UUID-Based DHCPv6 Unique Identifier (DUID-UUID)

ケーブル業界のIPv6対応状況

IPv6対応ケーブルインターネットアクセス技術仕様ガイドライン

ネットワークエンジニアとして

DHCPv6 - ウィキペディア

DHCPv6 Relay Agent Notification for Prefix Delegation[1]

  • PD スタティックルート インジェクションのトリガーについて記載あり

RFC 6939 - Client Link-Layer Address Option in DHCPv6 日本語訳


脚注

  1. IPv6 routes are added when the relay agent relays a RELAY-REPLY packet, and IPv6 routes are deleted when the prefix delegation lease time expires or the relay agent receives a release message.