加入者アクセス向けL2TPの概要
加入者アクセス向けL2TPの概要
レイヤー 2 トンネリング プロトコル(L2TP)は、ポイントツーポイントプロトコル(PPP)をネットワーク上でトンネリングできるようにするクライアントサーバープロトコルです。L2TP は、ネットワーク経由で送信するために、PPP などのレイヤー 2 パケットをカプセル化します。アクセスデバイスに設定されたL2TPアクセスコンセントレータ(LAC)は、リモートクライアントからパケットを受信し、リモートネットワーク上のL2TPネットワークサーバー(LNS)に転送します。LNSは、リモートクライアントからLACによってトンネリングされたPPPセッションの論理終端ポイントとして機能します。 図 1 に、単純な L2TP トポロジを示します。
L2TP は、ケーブルや xDSL などのアクセス技術の終端を、PPP の終端やその後のネットワークへのアクセスから分離します。この分離により、パブリックISPは、アクセス技術を競合するローカルエクスチェンジキャリア(CLEC)にアウトソーシングすることができます。L2TPは、ISPにVPNサービスを提供する機能を提供します。民間企業は、リモートワーカーのアクセス技術への投資を削減または回避できます。
ルーターを PPP パススルー モードで LAC として動作するように設定できます。このモードでは、LAC はリモート クライアントからパケットを受信し、レイヤ 2 で直接 LNS に転送します。PPP セッションは LNS で終了します。この LAC 実装は、動的または静的論理インターフェイスを介した PPPoE(Point-to-Point Protocol over Ethernet)加入者のみをサポートします。 図2 は、L2TPパススルー接続のプロトコル層スタッキングを示しています。
MX シリーズ ルーターでは、LAC および LNS 機能は MPC でのみサポートされています。PICまたはMS-DPCのサービスではサポートされません。L2TP の MPC サポートの詳細については、 MX シリーズのインターフェイス モジュール リファレンスを参照してください
特定のMシリーズルーターは、サービスPICでLNS機能をサポートしています。M シリーズ ルーターでの L2TP 実装の詳細については、「 L2TP サービス設定の概要」を参照してください。
LAC は、AAA 認証パラメータに基づいて動的にトンネルを作成し、IP/ユーザ データグラム プロトコル(UDP)を使用して L2TP パケットを LNS に送信します。トラフィックは L2TP sessionで伝送されます。トンネルは 1 つ以上のセッションの集合体です。また、AAA が使用するドメイン マップをプロビジョニングして、LAC で PPPoE 加入者をトンネリングするか終端するかを決定することもできます。LNS にトンネリングされた各 PPP 加入者と L2TP セッションの間には、1 対 1 のマッピングが存在します。
LNS が MX シリーズルーターの場合、MPC の LAC 向けピアインターフェイスは、トンネルエンドポイント間で IP パケットを交換するための IP アドレスを提供します。ルーティング エンジンは L2TP トンネルを維持します。パケット転送エンジンは、1つ以上のインラインサービス(si
)インターフェイスをホストします。これらのインターフェイスは仮想物理インターフェイスのように機能し、LNS上のL2TPセッションを 固定 します。このインターフェイスは si
、特別なサービスPICを必要とせずにL2TPサービスを可能にします。最後に、別のインターフェイスを使用して、加入者データをインターネットとの間で送受信します。
トンネルの特性は、設定したトンネルプロファイル、またはLACでアクセス可能なAAAサーバーのRADIUSトンネル属性およびベンダー固有属性(VSA)から取得できます。RADIUS 認証が行われる前にトンネル プロファイルを適用するトンネル プロファイルをドメイン マップに含めることができます。RADIUS 標準属性と VSA を使用して、ドメイン マップ内のトンネル プロファイルによって設定された一部またはすべての特性を上書きできます。または、RADIUS ログインで RADIUS トンネルグループ VSA [26-64] が指定されている場合、RADIUS 自体がトンネル プロファイルを適用できます。
L2TP は GRE トンネル上ではサポートされていません。
サービスプロバイダAAAサーバ(LNSからアクセス可能)の加入者プロファイルの仮想ルーターVSA [26-1]は、LNSでL2TPセッションが起動されるルーティングインスタンスを決定します。このVSAが存在しない場合、AAAサーバーにはトンネルが終端するルーティングインスタンスからしかアクセスできないため、加入者セッションはトンネルと同じルーティングインスタンスで起動します。
この動作は、DHCP および非トンネリング PPPoE 加入者の場合とは異なります。サブスクリプション パケットは、仮想ルーター VSA が存在しない場合にデフォルトのルーティング インスタンスで起動します。L2TP加入者の場合、トンネルルーティングインスタンスとは異なるルーティングインスタンスで加入者セッションを立ち上げるには、このVSAを加入者プロファイルに含める必要があります。
Junos OSリリース17.4R1以降、LNSがアクセスリクエストメッセージをRADIUSサーバに送信するときに、次のRADIUS属性が含まれます。
トンネルタイプ (64)
トンネル-中タイプ (65)
トンネルクライアントエンドポイント (66)
トンネルサーバエンドポイント (67)
トンネル接続 (68)
トンネル割り当て ID (82)
トンネルクライアント認証ID(90)
トンネルサーバー認証ID (91)
以前のリリースでは、LNS は RADIUS サーバに送信するアカウンティングレコードにのみこれらの属性を含めます。Access-Requestメッセージでは、RADIUSサーバー上でLACからLNSへのセッションを関連付けるために使用できます。
LACは、特定のRADIUS VSAに基づいてセキュアなポリシーを作成するRADIUS開始ミラーリングをサポートし、RADIUS属性を使用して、トラフィックをミラーリングする加入者を識別します。(この機能は、MX シリーズ ルーターで設定された LNS ではサポートされていません。)
LAC と LNS は統合型 ISSU をサポートしています。アップグレードが開始されると、LAC は進行中の L2TP ネゴシエーションを完了しますが、アップグレードが完了するまで新しいネゴシエーションを拒否します。アップグレード中に、新しいトンネルやセッションは確立されません。サブスクライバーのログアウトはアップグレード中に記録され、アップグレードの完了後に完了します。
L2TP の用語
表1 に、L2TPの基本的な用語を示します。
用語 |
説明 |
---|---|
Avp |
AVP(属性値ペア)- 整数で表される一意の属性と、属性によって識別される実際の値を含む値の組み合わせ。 |
呼び出し |
リモート・システムと LAC 間の接続 (または試行された接続)。 |
ラック |
L2TPアクセスコンセントレータ(LAC)—L2TPトンネルエンドポイントの片側として機能し、LNSのピアであるノード。LACはLNSとリモートシステムの間に位置し、それぞれとの間でパケットを転送します。 |
Lns |
L2TPネットワークサーバー(LNS)—L2TPトンネルエンドポイントの片側として機能し、LACのピアであるノード。LNS は、LAC によってリモート システムからトンネリングされる PPP 接続の論理終端ポイントです。 |
ピア |
L2TP のコンテキストでは、LAC または LNS.LACのピアはLNSであり、その逆も同様です。 |
プロキシ認証 |
LNSに代わってLACによって実行されるPPP事前認証。プロキシデータは、認証タイプ、認証名、認証チャレンジなどの属性を含む LAC から LNS に送信されます。LNS は認証結果を返します。 |
プロキシ LCP |
LNSに代わってLACによって実行されるリンク制御プロトコル(LCP)ネゴシエーション。プロキシは、LAC から LNS に送信され、クライアントとの間で送受信された最後の構成属性などの属性が含まれます。 |
リモートシステム |
リモート アクセス ネットワークに接続されたエンド システムまたはルーターで、コールのイニシエーターまたは受信者のいずれかである。 |
セッション |
リモートシステムとLNSの間にエンドツーエンドPPP接続が確立されたときに、LACとLNSの間に作成される論理接続。
メモ:
確立された L2TP セッションとそれに関連する PPP 接続の間には、1 対 1 の関係があります。 |
トンネル |
制御接続と 0 つ以上の L2TP セッションで構成される LAC-LNS ペア間の接続。 |
L2TPの実装
L2TPは4つのレベルで実装されます。
送信元—LACとして機能するローカルルーター。
宛先 - LNS として機能するリモート ルーター。
トンネル - LAC と LNS 間の直接パス。
セッション:トンネル内の PPP 接続。
ルーターが宛先、トンネル、およびセッションを確立したら、L2TPトラフィックを制御できます。宛先を変更すると、その宛先へのすべてのトンネルとセッションに影響します。トンネルを変更すると、そのトンネル内のすべてのセッションに影響します。例えば、宛先を閉じると、その宛先へのすべてのトンネルとセッションが閉じられます。
LAC でのイベントのシーケンス
LACとして機能するルーターは、次のように宛先、トンネル、セッションを動的に作成します。
クライアントは、ルーターとの PPP 接続を開始します。
ルーターとクライアントは、LCP(Link Control Protocol)パケットを交換します。LACはLNSに代わって交渉します。これは プロキシ LCP と呼ばれます。
LAC は、LNS に代わってクライアントを認証します。これは プロキシ認証と呼ばれます。ドメイン名またはRADIUS認証に関連するローカルデータベースを使用して、ルーターはPPP接続を終了するかトンネリングするかを決定します。
ルーターがセッションをトンネリングする必要があることを検出すると、次のことを行います。
新しい宛先を設定するか、既存の宛先を選択します。
新しいトンネルを設定するか、既存のトンネルを選択します。
トンネルプロファイルまたは RADIUS 属性の Tunnel-Password [69] のいずれかで共有シークレットが設定されている場合、トンネルの設定に使用される方法に応じて、確立フェーズ中に秘密がトンネルの認証に使用されます。LAC では、LNS に送信される SCCRQ メッセージにチャレンジ AVP が含まれています。LNS は、SCCRP メッセージでチャレンジ応答 AVP を返します。LNSからの応答がLACが期待する値と一致しない場合、トンネル認証は失敗し、トンネルは確立されません。
新しいセッションを開きます。
ルーターは、LCP ネゴシエーションと認証の結果を LNS に転送します。
これで、クライアントと LNS の間に PPP 接続が存在します。
L2TPヘッダーの可変長オプションのオフセットパッドフィールドのサイズが大きすぎる場合、ルーターは受信したパケットを破棄します。ルーターは、最大 16 バイトのオフセット パッド フィールドを持つパケットを常にサポートし、ヘッダー内の他の情報によっては、より大きなオフセット パッド フィールドをサポートする場合があります。この制限は、可能性は低いですが、L2TP パケットを過剰に破棄する原因となる可能性があります。
LAC が PPP セッションを終了すると、PPP 切断原因が生成され、LNS に CDN(Call-Disconnect-Notify)メッセージを送信するときに、この情報が PPP 切断原因コード(AVP 46)に含まれます。コード値は 0 で、利用可能な情報がないグローバル エラーを示します。
LNSでの一連のイベント
LNSとして機能するルーターは、次のように設定できます。
LAC は、ルーターが LNS として機能する状態でトンネルを開始します。
LNSは、このLACとのトンネルが有効であり、宛先が設定されていること、ホスト名とトンネルパスワードが正しいことを確認します。
LNS は、LAC とのトンネル設定を完了します。
LAC はセッションを設定し、LNS へのセッション要求を開始します。
LNS は、静的インタフェースを使用するか、PPP セッションを固定する動的インタフェースを作成します。
それらが有効で存在する場合、LNSはプロキシLCPとプロキシ認証データを受け入れ、PPPに渡します。
PPP は、プロキシ LCP が存在する場合はそれを処理します。プロキシ LCP が許容できる場合は、LCP を再ネゴシエーションせずに、開いた状態で LNS に LCP を配置します。
プロキシ認証データがあれば、PPP は処理し、検証のためにデータを AAA に渡します。(データが存在しない場合、PPP はピアからデータを要求します。
メモ:プロキシ LCP が存在しないか、受け入れられない場合、LNS はピアと LCP をネゴシエートします。LNS で LCP 再ネゴシエーションが有効になっている場合、LNS は事前にネゴシエートされた LCP パラメータを無視し、LCP パラメータと PPP クライアントとの PPP 認証の両方を再ネゴシエートします。
LNS は認証結果をピアに渡します。
L2TP 制御メッセージの再送信
L2TP ピアは、ピア デバイスに送信する必要がある制御メッセージのキューを維持します。ローカルピア(LACまたはLNS)は、メッセージを送信した後、リモートピアからの応答を待ちます。応答が受信されない場合、ローカルピアはメッセージを再送信します。この動作により、リモート ピアがメッセージに応答する時間が増えます。
再送信の動作は、次の 2 つの方法で制御できます。
再送信回数 - 未確認メッセージがローカル ピアによって再送信される回数を設定できます。カウントを増やすと、リモートピアが応答する機会が増えますが、制御トラフィックの量も増加します。確立済みのトンネルについては、 階層レベルに ステートメントを含め
retransmission-count-established
ます[edit services l2tp tunnel]
。まだ確立されていないトンネルの場合は、 ステートメントを含めますretransmission-count-not-established
。再送信間隔—ローカルピアが制御メッセージへの最初の応答を待つ時間を設定できます。最初のタイムアウト間隔内に応答が受信されない場合、再送信タイマーは、連続する各再送信の間隔を最大 16 秒まで倍増します。間隔を長くすると、リモート ピアの応答時間が長くなりますが、利用できない可能性のあるピアにより多くのリソースが費やされます。
minimum-retransmission-interval
階層レベルで ステートメントを含めます[edit services l2tp tunnel]
。
ローカル ピアは、次のいずれかが発生するまで、制御メッセージの再送信を続けます。
現在の待機期間内に応答が受信されます。
最大再送信カウントに達しました。
最大カウントに達し、応答を受信しなかった場合、トンネルとそのすべてのセッションがクリアされます。
最大間隔の 16 秒に達しても、再送信は停止しません。ローカルピアは、その後の再送信のたびに 16 秒間待機し続けます。
次の例では、さまざまな状況での再送信動作について説明します。
例 1:再送信カウントは 3 で、最小再送信間隔は 1 秒です。
ローカル ピアが制御メッセージを送信します。
ローカル ピアは 1 秒間待機しますが、応答を受信しません。
ローカルピアが制御メッセージを再送します。これは最初の再送信です。
ローカルピアは2秒間待機しますが、間隔が切れる前に応答を受信します。
間隔内に応答が受信されたため、再送信が停止します。
例 2:再送信カウントは 2 で、最小再送信間隔は 8 秒です。
ローカル ピアが制御メッセージを送信します。
ローカル ピアは 8 秒間待機しますが、応答を受信しません。
ローカルピアが制御メッセージを再送します。これは最初の再送信です。
ローカルピアは16秒待ちますが、応答を受信しません。
ローカルピアが制御メッセージを再送します。これは2回目の再送信です。
この間隔は 16 を超えて長くすることはできないため、ローカル ピアは再び 16 秒待機しますが、応答を受信しません。
最大再送信カウントの 2 に達したため、再送信が停止します。
トンネルとそのすべてのセッションがクリアされます。
L2TP 制御メッセージの再送信属性の設定
ローカル ピアがメッセージを再送信する回数と、再送信までの応答を待つ時間を設定することで、未確認の L2TP 制御メッセージの再送信を制御できます。
L2TP ピアは、ピア デバイスに送信する必要がある制御メッセージのキューを維持します。ローカルピア(LACまたはLNS)は、メッセージを送信した後、リモートピアからの応答を待ちます。最小再送信間隔内に応答が受信されない場合、ローカルピアはメッセージを再送信し、再送信間隔の 2 倍だけ待機します。メッセージを再送信するたびに、ピアは待機時間を 2 倍にして最大 16 秒にします。
応答を受信しない場合、ローカルピアは、再送信の数が再送信回数と一致するまでメッセージの送信を続けます。この場合、再送信は停止し、トンネルとそのすべてのセッションはクリアされます。
これらのステートメントをサポートしていない Junos OS リリースにダウングレードする前に、 階層レベルで ステートメントと no retransmission-count-non-established
ステートメント[edit services l2tp tunnel]
を含めてno retransmission-count-established
、機能の設定を明示的に解除することをお勧めします。
LACとして設定されたMXシリーズルーターでの統合型インサービスソフトウェアアップグレード(統合型ISSU)中、LACはLNSからの制御メッセージに応答しません。これにより、LAC L2TP セッションがドロップされる可能性があります。LNS の最大再送信回数を 16 以上に設定することで、この状況を回避できます。
確立されたトンネルの最大再送信回数を設定するには:
カウントを設定します。
[edit services l2tp tunnel] user@host# set retransmission-count-established count
確立されていないトンネルの最大再送信回数を設定するには:
カウントを設定します。
[edit services l2tp tunnel] user@host# set retransmission-count-not-established count
再送信の最小間隔を設定するには:
間隔を設定します。
[edit services l2tp tunnel] user@host# set minimum-retransmission-timeout seconds
例えば、以下の設定では、確立されたトンネルの最大再送信カウントを 3 に、最小再送信間隔を 2 秒に指定しています。
[edit services l2tp tunnel] user@host# set retransmission-count-established 3 user@host# set minimum-retransmission-timeout 2
この設定例では、LAC または LNS によって送信される各制御メッセージに次のシーケンスが適用されます。
- ローカルピアは制御メッセージを送信し、リモートピアからの応答を待ちます。
- 2 秒という最小間隔内に応答が受信されない場合、ローカル ピアはメッセージを再送信します。これは最初の再送信です。
- 4 秒以内に応答が受信されない場合、ローカル ピアはメッセージを再送信します。これは2回目の再送信です。
- 応答が 8 秒以内に受信されない場合、ローカル ピアはメッセージを再送信します。最大カウントに達したため、これは 3 回目で最後の再送信です。
- 16 秒以内に応答を受信しない場合、トンネルとそのすべてのセッションはクリアされます。
SNMP 統計収集のトンネルおよびグローバル カウンターの有効化
デフォルトでは、L2TP統計のSNMPポーリングは無効になっています。このため、 表 2 に示す L2TP トンネルとグローバル カウンタのデフォルト値は 0 になります。
カウンター名 |
型 |
---|---|
jnxL2tpTunnelStatsDataTxPkts |
トンネル |
jnxL2tpTunnelStatsDataRxPkts |
トンネル |
jnxL2tpTunnelStatsDataTxBytes |
トンネル |
jnxL2tpTunnelStatsDataRxBytes |
トンネル |
jnxL2tpStatsPayloadRxOctets |
グローバル |
jnxL2tpStatsPayloadRxPkts |
グローバル |
jnxL2tpStatsPayloadTxOctets |
グローバル |
jnxL2tpStatsPayloadTxPkts |
グローバル |
階層レベルで ステートメント[edit services l2tp]
を含めるenable-snmp-tunnel-statistics
ことで、これらの統計の収集を有効にすることができます。有効にすると、L2TPプロセスは1000セッションで30秒ごとにこれらの統計をポーリングします。統計の潜在的な経過時間は、加入者セッションの数とともに増加します。セッションの数が減少すると、データはより迅速に更新されます。たとえば、セッション数が 60,000 の場合、これらの統計はいずれも 30 分以上経過したものではありません。
これらのカウンタを有効にし、RADIUS 中間アカウンティング更新を使用すると、システム負荷が増加する可能性があります。SNMP 統計のみを使用している場合は、これらのカウンターを有効にすることをお勧めします。
SNMP の L2TP 統計収集を有効にするには:
統計情報の収集を有効にします。
[edit services l2tp] user@host1# set enable-snmp-tunnel-statistics
加入者アクセスのL2TPの検証と管理
目的
L2TPトンネルとセッションに関する情報を表示またはクリアします。
このオプションはall
、L2TPサブスクライバの一括ログアウトを実行する手段として使用するためのものではありません。運用環境では、 、 、clear services l2tp session
または clear services l2tp tunnel
ステートメントと一緒に clear services l2tp destination
オプションを使用しないall
ことをお勧めします。すべてのサブスクライバを一度にクリアするのではなく、インターフェイス、トンネル、または宛先エンドポイントに基づいて、より小さなグループでサブスクライバをクリアすることを検討してください。
アクション
L2TPトンネル、セッション、エラー、制御およびデータパケットの概要を表示するには:
user@host> show services l2tp summary
L2TP 宛先を表示するには:
user@host> show services l2tp destination
すべての L2TP 宛先をクリアするには:
user@host> clear services l2tp destination all
宛先に属するすべての L2TP トンネル、指定されたローカルゲートウェイアドレスに属するトンネル、および指定されたピアゲートウェイアドレスに属するトンネルの統計をクリアするには:
user@host>clear services l2tp destination statistics all user@host>clear services l2tp destination local-gateway 203.0.113.2
L2TPセッションを表示するには:
user@host> show services l2tp session
すべての L2TP セッション、指定されたローカルセッション ID を持つセッション、または IP アドレスまたは名前で指定されたローカルゲートウェイに関連付けられたセッションをクリアするには:
user@host>clear services l2tp session all user@host>clear services l2tp session local-session-id 40553 user@host>clear services l2tp session local-gateway 203.0.113.2 user@host>clear services l2tp session local-gateway-name lns-mx960
すべての L2TP セッション、指定されたローカルセッション ID を持つセッション、または IP アドレスまたは名前で指定されたローカルゲートウェイに関連付けられたセッションの統計をクリアするには:
user@host>clear services l2tp session statistics all user@host>clear services l2tp session statistics local-session-id 17967 user@host>clear services l2tp session statistics local-gateway 203.0.113.2 user@host>clear services l2tp session statistics local-gateway-name lns-mx960
L2TPトンネルを表示するには:
user@host> show services l2tp tunnel
すべての L2TP トンネル、指定されたローカルトンネル ID を持つトンネル、または IP アドレスまたは名前で指定されたローカルゲートウェイに関連付けられたトンネルをクリアするには:
user@host> clear services l2tp tunnel all user@host>clear services l2tp tunnel local-tunnel-id 40553 user@host>clear services l2tp tunnel local-gateway 203.0.113.2 user@host>clear services l2tp tunnel local-gateway-name lns-mx960
すべての L2TP トンネル、指定されたローカルトンネル ID を持つトンネル、または IP アドレスまたは名前で指定されたローカルゲートウェイに関連付けられたトンネルの統計情報をクリアするには:
user@host> clear services l2tp tunnel statistics all user@host>clear services l2tp tunnel statistics local-tunnel-id 40553 user@host>clear services l2tp tunnel statistics local-gateway 203.0.113.2 user@host>clear services l2tp tunnel statistics local-gateway-name lns-mx960