DHCPv6 リレー エージェント
DHCPv6リレーエージェントは、IPv6ネットワークでサポートを提供することでDHCPリレーエージェントを強化します。DHCPv6リレーエージェントは、DHCPv6クライアントとDHCPv6サーバーの間でメッセージを渡します。DHCPリレーエージェントがIPv4ネットワークをサポートする方法と同様にです。DHCPv6 リレー エージェントにより、各物理ネットワークに DHCPv6 サーバーを設置する必要がなくなります。DHCPv6 パケットへの DHCPv6 インターフェイス ID(オプション 18)、リモート ID(オプション 37)、またはクライアント MAC アドレス(オプション 79)の挿入、および DHCPv6 設定の検証の詳細については、このトピックをお読みください。
DHCPv6リレーエージェントの概要
DHCPv6クライアントがログインすると、DHCPv6リレーエージェントはAAAサービスフレームワークを使用してRADIUSサーバーと対話し、認証とアカウンティングを提供します。DHCP とは独立して構成された RADIUS サーバーは、クライアントを認証し、IPv6 プレフィックスと、セッション タイムアウトやインターフェイスごとに許可されるクライアントの最大数などのクライアント設定パラメーターを提供します。
PTXシリーズパケットトランスポートルーターは、DHCPv6リレーエージェントの認証をサポートしていません。
以下のDHCPv6機能は、ACXシリーズルーターではサポートされていません。
DHCPv6リレーエージェントの加入者認証
DHCP スヌーピング
DHCPv6 クライアント
ライブネス検出
動的プロファイル
リモートID挿入のオプション37サポート
DHCPv6リレー用のBFD(双方向フォワーディング検出)
DHCPv6リレーエージェントは、DHCPローカルサーバーおよびDHCPリレーエージェントと互換性があり、DHCPローカルサーバーまたはDHCPリレーエージェントと同じインターフェイスで有効にすることができます。
ルーター(またはスイッチ)でDHCPv6リレーエージェントを設定するには、[edit forwarding-options dhcp-relay]階層レベルでdhcpv6ステートメントを含めます。
以下の階層レベルに dhcpv6 ステートメントを含めることもできます。
[edit logical-systems logical-system-name forwarding-options dhcp-relay][edit logical-systems logical-system-name routing-instances routing-instance-name forwarding-options dhcp-relay][edit routing-instances routing-instance-name forwarding-options dhcp-relay]
DHCPv6バインディングと統計情報の表示とクリアに固有のコマンドについては、 DHCPv6監視と管理 を参照してください。
DHCPv6リレーエージェントの設定
DHCPv6リレーエージェントは、異なるIPネットワーク上のDHCPv6クライアントとDHCPv6サーバー間でメッセージをリレーするためのインターフェイスとして機能します。
この例では、SRXシリーズファイアウォールでDHCPv6リレーエージェントを設定する方法について説明します。DHCPv6リレーエージェントとして機能するSRXシリーズファイアウォールは、異なるルーティングインスタンスの一部であるDHCPv6クライアントとサーバー間の要求と応答の転送を担当します。
要件
DHCPv6リレーエージェント設定例は、以下のハードウェアおよびソフトウェアコンポーネントでテストされています。
-
Junos OS 22.3R1以降を搭載したSRXシリーズファイアウォール。
概要
異なる仮想ルーティングインスタンスにあるDHCPv6サーバーとDHCPv6クライアントとの間でDHCPv6メッセージを交換する際に、DHCPv6リレーエージェントを設定することで、セキュリティを追加することができます。このタイプの設定は、DHCPv6サーバーがクライアントネットワークから分離されたネットワークに存在する場合、DHCPv6サーバーとDHCPv6クライアント間のDHCPv6リレー接続用です。
トポロジー
異なるルーティングインスタンス間でDHCPv6メッセージを交換するには、DHCPv6リレーエージェントのサーバー向けインターフェイスとクライアント向けインターフェイスの両方を有効にして、DHCPv6パケットを認識して転送できるようにする必要があります。
以下の 図1 は、DHCPv6ローカルサーバー、DHCPv6クライアント、DHCPv6リレーエージェントとしてのDHCPv6のパフォーマンスを示しています
におけるDHCPv6サービスについて
以下のリストは、異なるルーティング インスタンス間で DHCPv6 メッセージ交換を作成するために必要なタスクの概要を示しています。
-
DHCPv6リレーエージェントのクライアント側を設定します。
-
DHCPv6リレーエージェントのサーバー側を設定します。
-
DHCPv6プロトコルを許可するようにセキュリティゾーンを設定します。
表1:DHCPv6リレーパラメータ:
パラメータ
クライアント側の詳細
サーバー側の詳細
インターフェース
ge-0/0/3.0
ge-0/0/4.0
ルーティング インターフェイス
trust-vr
untrust-vr
IPアドレス
2001:db8:12::1/64
2001:db8:23::1/64
注:この設定を機能させるには、DHCPv6サーバー接続ルートとリレーエージェントインターフェイスルートが両方のルーティングインスタンスにある必要があります。例えば、上記のトポロジーでは、サーバールート2001:db8:34::/64をdhcp-relay VRと共有する必要があり、dhcp-relayインターフェイスルート2001:db8:12::/64exact をデフォルトのルーティングインスタンスと共有する必要があります。
また、DHCPv6サーバーのルーティングインスタンスにダミーのdhcp-relay設定を追加する必要があります。これが設定されていない場合、dhcp-relayはDHCPv6サーバーからパケットを受信できません。
設定
CLIクイックコンフィグレーション
以下の手順では、異なるルーティングインスタンスのDHCPv6サーバーとクライアント間でDHCPv6メッセージ交換を作成するための設定タスクについて説明します。この例をすばやく設定するには、以下のコマンドをコピーしてテキストファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを [edit] 階層レベルでCLIにコピーアンドペーストして、設定モードから commit を入力します。
クライアント向けサポートの迅速な設定:
set routing-instances trust-vr instance-type virtual-router set routing-instances trust-vr interface ge-0/0/3.0 set interfaces ge-0/0/3 unit 0 family inet6 address 2001:db8:12::1/64
サーバーフェーシングサポートの迅速な設定:
set routing-instances untrust-vr instance-type virtual-router set routing-instances untrust-vr interface ge-0/0/4.0 set routing-instances untrust-vr forwarding-options dhcp-relay dhcpv6 forward-only-replies set interfaces ge-0/0/4 unit 0 family inet6 address 2001:db8:23::1/64
DHCPv6 リレー サポートのクイック設定:
set routing-instances untrust-vr forwarding-options dhcp-relay dhcpv6 server-group dummy-config set routing-instances untrust-vr routing-options instance-import import_relay_route_to_server_vr set routing-instances untrust-vr routing-options static route 2001:db8:34::/64 next-hop 2001:db8:23::2 set routing-instances trust-vr forwarding-options dhcp-relay dhcpv6 server-group server-1 2001:db8:34::2 set routing-instances trust-vr forwarding-options dhcp-relay dhcpv6 active-server-group server-1 set routing-instances trust-vr forwarding-options dhcp-relay dhcpv6 group relay-in-vr interface ge-0/0/3.0 set routing-instances trust-vr routing-options instance-import export_dhcp_server_route set policy-options policy-statement export_dhcp_server_route term 1 from instance untrust-vr set policy-options policy-statement export_dhcp_server_route term 1 from route-filter 2001:db8:34::/64 exact set policy-options policy-statement export_dhcp_server_route term 1 then accept set policy-options policy-statement export_dhcp_server_route term 2 then reject set policy-options policy-statement import_relay_route_to_server_vr term 1 from instance trust-vr set policy-options policy-statement import_relay_route_to_server_vr term 1 from route-filter 2001:db8:12::/64 exact set policy-options policy-statement import_relay_route_to_server_vr term 1 then accept set policy-options policy-statement import_relay_route_to_server_vr term 2 then reject set routing-options static route 2001:db8:34::2/64 next-table untrust-vr.inet.0
DHCPv6プロトコルを許可するためのセキュリティゾーンのクイック設定:
set security policies default-policy permit-all set security zones security-zone untrust interfaces ge-0/0/4.0 host-inbound-traffic system-services all set security zones security-zone untrust interfaces ge-0/0/4.0 host-inbound-traffic protocols all set security zones security-zone trust interfaces ge-0/0/3.0 host-inbound-traffic system-services all set security zones security-zone trust interfaces ge-0/0/3.0 host-inbound-traffic protocols all
手順
ステップバイステップの手順
次の例では、設定階層のさまざまなレベルに移動する必要があります。その方法の詳細については、『CLIユーザーガイド』の「構成モードでのCLIエディターの使用」を参照してください。
DHCPv6リレーエージェントのクライアント側でサポートを設定するには:
-
ルーティングインスタンスタイプを仮想ルーターとして設定します。
[edit] user@host# set routing-instances trust-vr instance-type virtual-router
-
仮想ルーターへのインターフェイスの設定
[edit] user@host# set routing-instances trust-vr interface ge-0/0/3.0
-
インターフェイスにIPアドレスを設定します。
[edit] user@host# set interfaces ge-0/0/3 unit 0 family inet6 address 2001:db8:12::1/64
手順
ステップバイステップの手順
DHCPv6リレーエージェントのサーバー側でサポートを設定するには:
-
仮想ルーターを設定します。
[edit] user@host# set routing-instances untrust-vr instance-type virtual-router
-
インターフェイスを仮想ルーターに設定します。
[edit] user@host# set routing-instances untrust-vr interface ge-0/0/4.0
-
forward-only-replies オプションを設定します。
[edit] user@host# set routing-instances untrust-vr forwarding-options dhcp-relay dhcpv6 forward-only-replies
-
インターフェイスにIPアドレスを設定します。
[edit] user@host# set interfaces ge-0/0/4 unit 0 family inet6 address 2001:db8:23::1/64
手順
ステップバイステップの手順
DHCPv6ローカルサーバーが以下をサポートするように設定するには:
-
untrust-vrルーティングインスタンスのdhcp-relayで設定を設定します
[edit ] user@host# set routing-instances untrust-vr forwarding-options dhcp-relay dhcpv6 server-group dummy-config user@host# set routing-instances untrust-vr routing-options instance-import import_relay_route_to_server_vr user@host# set routing-instances untrust-vr routing-options static route 2001:db8:34::/64 next-hop 2001:db8:23::2
-
trust-vrルーティングインスタンスのdhcp-relayで設定を設定します
[edit ] user@host# set routing-instances trust-vr forwarding-options dhcp-relay dhcpv6 server-group server-1 2001:db8:34::2 user@host# set routing-instances trust-vr forwarding-options dhcp-relay dhcpv6 active-server-group server-1 user@host# set routing-instances trust-vr forwarding-options dhcp-relay dhcpv6 group relay-in-vr interface ge-0/0/3.0 user@host# set routing-instances trust-vr routing-options instance-import export_dhcp_server_route
-
ルーティングインスタンス間でルートを共有するための設定を設定します。
[edit ] user@host# set policy-options policy-statement export_dhcp_server_route term 1 from instance untrust-vr user@host# set policy-options policy-statement export_dhcp_server_route term 1 from route-filter 2001:db8:34::/64 exact user@host# set policy-options policy-statement export_dhcp_server_route term 1 then accept user@host# set policy-options policy-statement export_dhcp_server_route term 2 then reject user@host# set policy-options policy-statement import_relay_route_to_server_vr term 1 from instance trust-vr user@host# set policy-options policy-statement import_relay_route_to_server_vr term 1 from route-filter 2001:db8:12::/64 exact user@host# set policy-options policy-statement import_relay_route_to_server_vr term 1 then accept user@host# set policy-options policy-statement import_relay_route_to_server_vr term 2 then reject user@host# set routing-options static route 2001:db8:34::2/64 next-table untrust-vr.inet.0
注:SRXシリーズファイアウォールをDHCPv6ローカルサーバーとして機能させることができます。DHCPv6ローカルサーバーは、クライアントの要求に応答してIPアドレスとその他の設定情報を提供します。
手順
ステップバイステップの手順
DHCPv6プロトコルを許可するようにセキュリティゾーンを設定するには:
-
すべてのトラフィックを許可するようにデフォルトのセキュリティポリシーを設定します。
[edit ] user@host# set security policies default-policy permit-all
-
インターフェイスge-0/0/4.0上にすべてのシステムサービスとプロトコルを設定します。
[edit ] user@host# set security zones security-zone untrust interfaces ge-0/0/4.0 host-inbound-traffic system-services all user@host# set security zones security-zone untrust interfaces ge-0/0/4.0 host-inbound-traffic protocols all
-
インターフェイスge-0/0/3.0上にすべてのシステムサービスとプロトコルを設定します。
[edit ] user@host# set security zones security-zone trust interfaces ge-0/0/3.0 host-inbound-traffic system-services all user@host# set security zones security-zone trust interfaces ge-0/0/3.0 host-inbound-traffic protocols all
結果
-
クライアント向けサポートの結果:
設定モードから、 show routing-instances コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の設定手順を繰り返して修正します。
[edit]
user@host# show routing-instances
trust-vr {
instance-type virtual-router;
interface ge-0/0/3.0;
}
-
サーバー面サポートの結果:
設定モードから、
show routing-instancesコマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の設定手順を繰り返して修正します。
[edit]
user@host# show routing-instances
untrust-vr {
instance-type virtual-router;
interface ge-0/0/4.0;
forwarding-options {
dhcp-relay {
forward-only-replies;
}
}
}
-
DHCPv6ローカルサーバーサポートの結果:
設定モードから、
show routing-instances、show policy-options、show routing-optionsコマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の設定手順を繰り返して修正します。
[edit]
user@host# show routing-instances
trust-vr {
routing-options {
instance-import export_dhcp_server_route;
}
forwarding-options {
dhcp-relay {
server-group {
server-1 {
2001:db8:34::2;
}
}
active-server-group server-1;
group relay-in-vr {
interface ge-0/0/3.0;
}
}
}
}
untrust-vr {
routing-options {
static {
route 2001:db8:34::/64 next-hop 2001:db8:23::2;
}
instance-import import_relay_route_to_server_vr;
}
forwarding-options {
dhcp-relay {
server-group {
dummy-config;
}
}
}
}
[edit]
user@host# show policy-options
policy-statement export_dhcp_server_route {
term 1 {
from {
instance untrust-vr;
route-filter 2001:db8:34::/64 exact;
}
then accept;
}
term 2 {
then reject;
}
}
policy-statement import_relay_route_to_server_vr {
term 1 {
from {
instance trust-vr;
route-filter 2001:db8:12::/64 exact;
}
then accept;
}
term 2 {
then reject;
}
}
[edit]
user@host# show routing-options
static {
route 2001:db8:34::2/64 next-table untrust-vr.inet.0;
}
-
DHCPv6プロトコルを許可するためのセキュリティゾーンの結果:
設定モードから、
show security policiesおよびshow security zonesコマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の設定手順を繰り返して修正します。
[edit]
user@host# show security policies
default-policy {
permit-all;
}
[edit]
user@host# show security zones
security-zone HOST {
interfaces {
all;
}
}
security-zone untrust {
interfaces {
ge-0/0/4.0 {
host-inbound-traffic {
system-services {
all;
}
protocols {
all;
}
}
}
}
}
security-zone trust {
interfaces {
ge-0/0/3.0 {
host-inbound-traffic {
system-services {
all;
}
protocols {
all;
}
}
}
}
}
デバイスの設定が完了したら、設定モードから commit を入力します。
DHCPv6パケットへのDHCPv6インターフェイスIDオプション(オプション18)の挿入
DHCPv6 リレー エージェントを設定して、リレーが DHCPv6 サーバーに送信するパケットに DHCPv6 インターフェイス ID(オプション 18)を挿入できます。オプション18のサポートは、DHCPv6グローバルまたはグループレベルで設定できます。
オプション18のサポートを設定する場合、オプションで以下の追加情報を含めることができます。
Prefix—インターフェイス識別子にプレフィックスを追加するための
prefixオプションを指定します。プレフィックスは、ホスト名、論理システム名、ルーティングインスタンス名の任意の組み合わせです。インターフェイスの説明—インターフェイス識別子ではなく、テキストによるインターフェイスの説明を含めるように
use-interface-descriptionオプションを指定します。デバイスインターフェイスの説明または論理インターフェイスの説明のいずれかを含めることができます。オプション 82 エージェント サーキット ID サブオプション(サブオプション 1)—DHCPv4 オプション 82 エージェント サーキット ID サブオプション(サブオプション 1)を含む
use-option-82オプションを指定します。この設定は、DHCPv4とDHCPv6の両方の加入者が同じ基盤となる論理インターフェイス上に存在するデュアルスタック環境で有効です。ルーターは、オプション 82 サブオプション 1 の値を確認し、それを発信パケットに挿入します。DHCPv4バインディングが存在しない場合、またはバインディングにオプション82サブオプション1の値がない場合、ルーターはオプション18を追加せずにパケットを送信します。
オプションの設定の1つを指定し、指定された情報が存在しない場合(例えば、インターフェイスの説明がない場合)、DHCPv6リレーはオプションの設定を無視し、デフォルトのインターフェイス識別子をパケットに挿入します。
DHCPv6 パケットに DHCPv6 インターフェイス ID オプション(オプション 18)を挿入するには:
関連項目
DHCPv6 パケットへの DHCPv6 リモート ID オプション(オプション 37)の挿入
Junos OSリリース14.1以降、リレーがDHCPv6サーバーに送信するパケットにDHCPv6リモートID(オプション37)を挿入するようにDHCPv6リレーエージェントを設定できます。オプション 37 のサポートは、DHCPv6 グローバル レベルまたはグループ レベルで設定できます。
オプション37のサポートを設定する場合、オプションで以下の情報を含めることができます。
Prefix—インターフェイス識別子にプレフィックスを追加するための
prefixオプションを指定します。プレフィックスは、ホスト名、論理システム名、ルーティングインスタンス名の任意の組み合わせです。インターフェイスの説明—インターフェイス識別子ではなく、テキストによるインターフェイスの説明を含めるように
use-interface-descriptionオプションを指定します。デバイスインターフェイスの説明または論理インターフェイスの説明のいずれかを含めることができます。オプション 82 エージェント リモート ID サブオプション(サブオプション 2)—DHCPv4 オプション 82 リモート ID サブオプション(サブオプション 2)の値を使用する
use-option-82オプションを指定します。この設定は、DHCPv4とDHCPv6の両方の加入者が同じ基盤となる論理インターフェイス上に存在するデュアルスタック環境で有効です。ルーターは、オプション 82 サブオプション 2 の値を確認し、それを発信パケットに挿入します。
オプションの設定の1つを指定し、指定された情報が存在しない場合(例えば、インターフェイスの説明がない場合)、DHCPv6リレーはオプションの設定を無視し、デフォルトのインターフェイス識別子をパケットに挿入します。
DHCPv6 パケットに DHCPv6 リモート ID オプション(オプション 37)を挿入するには:
関連項目
DHCPv6 パケットへの DHCPv6 クライアント MAC アドレス オプション(オプション 79)の挿入
既存のIPv4ネットワークにIPv6を段階的に導入することで、デバイスがDHCPv4とDHCPv6の両方のクライアントとして機能するデュアルスタックネットワーク環境を実現できます。デュアルスタックのシナリオでは、オペレーターは、インターフェイスに共通の識別子に基づいて、DHCPv4およびDHCPv6メッセージを同じクライアントインターフェイスに関連付けることができる必要があります。
DHCPv6 リレー エージェントを設定して、リレーが DHCPv6 サーバーに送信するパケットに DHCPv6 クライアント MACアドレスを挿入できます。クライアントMACアドレスは、DHCPv4およびDHCPv6メッセージを同じクライアントインターフェイスに関連付けるために使用されます。
デュアルスタッククライアントからのDHCPv4およびDHCPv6メッセージを関連付けることに加えて、DHCPv6パケットにクライアントMACアドレスを含めることで、リレーエージェントとサーバーでのクライアントに関連するイベントのデバッグとログ記録のための追加情報が得られます。
DHCPv6オプション79が有効になっている場合、DHCPv6リレーエージェントは、クライアントから受信したDHCPv6 SolicitおよびDHCPv6 Requestメッセージの送信元MACアドレスを読み取ります。リレーエージェントは、DHCPv6リレーフォワードメッセージ内にSolicitとRequestメッセージをカプセル化し、メッセージをサーバーにリレーする前に、Relay-Forwardヘッダーにオプション79としてクライアントMACアドレスを挿入します。
DHCPv6パケットにすでにRelay-Forwardヘッダーがある場合、パケットが次の条件を満たしている場合、DHCPv6リレーエージェントはクライアントMACアドレスを追加します:パケットにRelay-Forwardヘッダーが1つしかなく、Relay-ForwardヘッダーがLDRAによって追加された場合、Relay-Forwardヘッダーにオプション79の情報が含まれていません。
また、軽量のDHCPv6リレーエージェント(LDRA)用にDHCPv6オプション79を設定することもできます。LDRA は、DHCPv6 クライアントおよびリレー エージェントまたはサーバーとして同じ IPv6 リンク上に存在し、レイヤー 2 リレー エージェントとして機能しますが、異なる IPv6 リンク上に存在するサーバーまたはリレー エージェントにメッセージを転送するために必要なルーティング機能は実行されません。
[edit] user@host# set forwarding-options dhcp-relay dhcpv6 relay-agent-option-79
LDRA(レイヤー 2)の DHCPv6 オプション 79 を設定するには、次のようにします。
[edit] user@host# set vlans vlan-name forwarding-options dhcp-security dhcpv6-options option-79
関連項目
DHCPv6リレー設定の検証と管理
目的
拡張DHCPv6リレーエージェントクライアントのアドレスバインディングまたは統計を表示またはクリアします。
アクション
拡張DHCPv6リレーエージェントクライアントのアドレスバインディングを表示するには:
user@host> show dhcpv6 relay binding
拡張DHCPv6リレーエージェントの統計情報を表示するには:
user@host> show dhcpv6 relay statistics
DHCPv6リレーエージェントクライアントのバインディング状態をクリアするには:
user@host> clear dhcpv6 relay binding
拡張DHCPv6リレーエージェントの統計情報をすべてクリアするには:
user@host> clear dhcpv6 relay statistics
変更履歴テーブル
サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がお使いのプラットフォームでサポートされているかどうかを確認します。