セキュリティ コンフィギュレーション ガイド:ゾーンベース ポリシー ファイアウォール、Cisco IOS XE Release 3S(ASR 1000)
GPRS トンネリング プロトコル サポートの設定
GPRS トンネリング プロトコル サポートの設定
発行日;2013/09/03   |   ドキュメントご利用ガイド   |   ダウンロード ;   この章 pdf   ,   ドキュメント全体 pdf    |   フィードバック

GPRS トンネリング プロトコル サポートの設定

GPRS トンネリング プロトコル サポート機能は、General Packet Radio Switching(GPRS)トンネリング プロトコル(GTP)にファイアウォール サポートを提供します。 GPRS は、既存の Global System for Mobile Communication(GSM)ネットワークと統合し、企業ネットワークおよびインターネットへの常時接続パケット交換データ サービスを提供するデータ ネットワーク アーキテクチャです。 欧州通信規格協会(ETSI)の第 3 世代パートナーシップ プロジェクト(3GPP)は、GPRS トンネリング プロトコル(GTP)を作成しました。これにより、ゲートウェイ GPRS サポート ノード(GGSN)、サービング GPRS サポート ノード(SGSN)、および UMTS Terrestrial Radio Access Network(UTRAN)間の UMTS(Universal Mobile Telecommunications System)または GPRS バックボーンでマルチプロトコル パケットをトンネリングできます。

GSM への GPRS の統合により、加入ユーザに携帯電話、モバイル インターネット、および VPN サービスを提供します。 これにより、新たなセキュリティ リスクがネットワークにもたらされます。 GTP は本質的にユーザ データのセキュリティや暗号化を提供しないため、ルータ ファイアウォールは、GTP に対するセキュリティをサポートする必要があります。 GPRS トンネリング プロトコルのサポート機能では、GTP に対してファイアウォール サポートを設定します。

機能情報の確認

ご使用のソフトウェア リリースでは、このモジュールで説明されるすべての機能がサポートされているとは限りません。 最新の注意事項と機能情報については、Bug Search Tool およびご使用のプラットフォームとソフトウェア リリースに対応したリリース ノートを参照してください。 このモジュールに記載されている機能の詳細を検索し、各機能がサポートされているリリースのリストを確認する場合は、このモジュールの最後にある機能情報の表を参照してください。

プラットフォームのサポートおよびシスコ ソフトウェア イメージのサポートに関する情報を検索するには、Cisco Feature Navigator を使用します。 Cisco Feature Navigator にアクセスするには、www.cisco.com/​go/​cfn に移動します。 Cisco.com のアカウントは必要ありません。

GPRS トンネリング サポートの設定の制約事項

  • レイヤ 7 クラス マップの match ステートメントの数の制限は 64 です。
  • レイヤ 7 ポリシー マップのクラス(デフォルト クラスを含む)の数の制限は 255 です。
  • 正規表現パラメータ マップのパターン ストリングの文字数の制限は 245 です。
  • データ パスは、最大 512 の正規表現(regex)をサポートします。
  • 統計情報は、クラスのパケットおよびバイトでだけ使用可能です。 match コマンドで統計情報は使用できません。

GPRS トンネリング プロトコル サポートの設定について

GPRS の概要

General Packet Radio Service(GPRS)は、モバイル通信用グローバル システム(GSM)ネットワークと企業ネットワークやインターネットとの間の中断のない接続をモバイル加入者に提供します。 ゲートウェイ GPRS サポート ノード(GGSN)は、GPRS 無線データ ネットワークと他のネットワーク間のインターフェイスです。 サービング GPRS サポート ノード(SGSN)は、モビリティ、データ セッション管理、およびデータ圧縮を実行します。

GPRS コア ネットワーク アーキテクチャには、SGSN に論理的に接続されたモバイル ステーション(MS)が含まれます。 SGSN の主な機能は、MS にデータ サポート サービスを提供することです。 SGSN は、GTP を使用して GGSN に論理的に接続されます。 接続が同じオペレータのパブリック ランド モバイル ネットワーク(PLMN)内にある場合、その接続は Gn インターフェイスと呼ばれます。 接続が 2 つの異なる PLMN 間である場合、その接続は Gp インターフェイスと呼ばれます。 GGSN は、Gi インターフェイスと呼ばれるインターフェイスを介して、インターネットや企業ネットワークなどの外部ネットワークにデータ ゲートウェイを提供します。 GTP は、MS のデータをカプセル化するために使用されます。 GTP には、ローミング シナリオで SGSN と GGSN 間のトンネルを確立、移動、および削除する機能が含まれます。

図 1. GPRS コア ネットワーク コア

Universal Mobile Telecommunications System(UMTS)は、固定回線テレフォニー、モバイル、インターネット、コンピュータ テクノロジーの商用コンバージェンスです。 UMTS Terrestrial Radio Access Network(UTRAN)は、システムにワイヤレス ネットワークを実装するために使用されるネットワーキング プロトコルです。 GTP を使用すると、GGSN、SGSN、および UTRAN 間の UMTS/GPRS バックボーンで、マルチプロトコル パケットをトンネリングできます。

Gp インターフェイスと Gi インターフェイスは、オペレータのネットワークと信頼できない外部ネットワークとの間の相互接続のプライマリ ポイントです。 オペレータは、これらの外部ネットワークから発信された攻撃から自分のネットワークを保護するために注力する必要があります。

Gp インターフェイスは、PLMN 間のモバイル(ローミング)データ ユーザをサポートする論理接続です。 GTP は、ローカル SGSN とユーザのホーム GGSN との間の接続を確立します。

MS から発信されたデータは、Gi インターフェイスに送信されます。 これは、公衆データ網および企業顧客のネットワークに公開されるインターフェイスでもあります。

GGSN から送信される、または Gi インターフェイスで MS に到達するトラフィックは、MS で使用されるアプリケーションが未知であるため、実質的にあらゆる種類のインターフェイスになる可能性があります。

GTP を使用すると、GPRS サポート ノード(GSN)間の GPRS バックボーンで、マルチプロトコル パケットをトンネリングできます。 GTP は、トンネル制御および管理プロトコルを提供します。このプロトコルによって、SGSN は、トンネルの作成、変更、および削除を行い、MS に GPRS ネットワーク アクセスを提供できます。 GTP は、トンネリング メカニズムを使用して、ユーザ データ パケットを伝送するためのサービスを提供します。


(注)  


GTP をフェールオーバーと同時に使用しているとき、GTP 接続が確立され、データがトンネルを超えて伝送される前にアクティブ装置に障害が発生した場合、GTP データ接続(「j」フラグが設定されています)は、スタンバイ装置に複製されません。 これは、アクティブ装置が初期接続をスタンバイ装置に複製しないためです。


GTP の概要

General Packet Radio Service(GPRS)トンネリング プロトコル(GTP)を使用すると、GPRS サポート ノード(GSN)間の GPRS バックボーンで、マルチプロトコル パケットをトンネリングできます。 3 つの GTP バージョンを使用できます。 GPRS トンネリング サポート機能は、GTP バージョン 0(GTPv0)および GTP バージョン 1(GTPv1)という 2 つの GTP バージョンをサポートします。

GTPv0 では、GPRS モバイル ステーション(MS)は、プロトコルを認識せずにサービング GPRS サポート ノード(SGSN)に接続されます。 パケット データ プロトコル(PDP)コンテキストは、International Mobile Subscriber Identity(IMSI)およびネットワーク サービス アクセス ポイント識別子(NSAPI)との組み合わせであるトンネル識別子(TID)によって識別されます。 各 MS には最大 15 の NSAPI を設定できます。 これにより、MS は、さまざまな Quality of Service(QoS)レベルのアプリケーション要件に基づいて、異なる NSAPI を使用して複数の PDP コンテキストを作成できます。 TID は GTPv0 ヘッダーで伝送されます。

IMSI には次の 3 つの部分があります。

  • 3 桁の数字で構成されるモバイル国番号(MCC)。 MCC は、モバイル加入者の居住地の国を一意に識別します。
  • GSM アプリケーション用の 2 桁または 3 桁の数字で構成されるモバイル ネットワーク コード(MNC)。 MNC はモバイル加入者のホーム GSM パブリック ランド モバイル ネットワーク(PLMN)を識別します。 MNC の長さは、MCC の値によって異なります。

    (注)  


    単一 MCC エリア内での 2 桁と 3 桁の MNC コードの組み合わせは推奨されません。


  • GSM PLMN 内のモバイル加入者を識別する Mobile Subscriber Identification Number(MSIN)。 National Mobile Subscriber Identity(NMSI)は、MNC と MSIN で構成されます。

GTPv1 は、MS のプライマリ コンテキストとセカンダリ コンテキストの概念を導入します。 プライマリ コンテキストは、IP アドレスに関連付けられ、受信 GSN に付加されるアクセス ポイント名(APN)などの他のパラメータを示します。 このプライマリ PDP コンテキスト用に作成されたセカンダリ コンテキストは、プライマリ コンテキストにすでに関連付けられている IP アドレスやその他のパラメータを共有します。 これにより、MS は、異なる Quality of Service(QoS)要件の別のコンテキストを開始することができ、プライマリ コンテキストですでに取得されている IP アドレスを共有することもできます。 プライマリ コンテキストとセカンダリ コンテキストは、コントロール プレーンでトンネル エンドポイント ID(TEID)を共有し、データ プレーンでは異なる TEID 値を持ちます。 すべてのプライマリ コンテキストとセカンダリ コンテキストが IP アドレスを共有しているため、MS へのダウンリンク方向のトラフィックを分類するために、トラフィック フロー テンプレート(TFT)が使用されます。 TFT は、コンテキストの作成中に交換されます。

プライマリ PDP への PDP コンテキスト作成要求だけに IMSI が含まれます。 IMSI および NSAPI は連携して PDP コンテキストを一意に識別します。 セカンダリ PDP コンテキストのアクティブ化には、この PDP アドレスおよび APN ですでにアクティブ化されている PDP コンテキストのいずれかに割り当てられた NSAPI を示す、Linked NSAPI(LNSAPI)が含まれます。


(注)  


UDP は、GTPv0 および GTPv1 のシグナリング メッセージ用の唯一サポートされた定義済みのパス プロトコルです。


ファイアウォールを通過する GTP トラフィック

デバイスが検査するメイン General Packet Radio Service(GPRS)トンネリング プロトコル(GTP)トラフィックは、ローミング トラフィックです。 ローミング トラフィックは、モバイル ステーション(MS)がそのホーム パブリック ランド モバイル ネットワーク(HPLMN)から Visited PLMN(VPLMN)に移動すると発生します。

ファイアウォールを通過する GTP トラフィックには次のメッセージが含まれます。
  • サービング GPRS サポート ノード(SGSN)からゲートウェイ GPRS サポート ノード(GGSN)への GTP メッセージ
  • GGSN-to-SGSN GTP メッセージ
  • SGSN-to-SGSN GTP メッセージ

GPRS トンネリング プロトコル サポートの設定方法

General Packet Radio Service(GPRS)トンネリング プロトコル(GTP)コマンドは、レイヤ 7 ポリシー マップで生成される必要なアクションが含まれたフィルタを含む Cisco Common Classification Policy Language(C3PL)レイヤ 7 クラス マップを使用して設定されます。 レイヤ 7 ポリシー マップは、GTP プロトコルと一致するレイヤ 4 クラスで service-policy (policy-map) コマンドを使用して、レイヤ 4 ポリシー マップの子ポリシーとして検査アクションで設定されます。 レイヤ 4 ポリシーは、複数のプロトコルに対して複数のクラスを持つことができ、ファイアウォール ゾーン ペアに付加されます。

GPRS トンネリング プロトコル サポートの設定

GPRS トンネリング プロトコル(GTP)サポートを設定するには、次を実行します。

手順の概要

    1.    enable

    2.    configure terminal

    3.    parameter-map type regex parameter-map-name

    4.    pattern expression

    5.    exit

    6.    parameter-map type inspect {parameter-map-name | global}

    7.    gtp {request-queue elements | timeout {{gsn | pdp-context | signaling | tunnel} minutes | request-queue seconds} | tunnel-limit number}

    8.    exit

    9.    class-map type inspect protocol-name {match-any | match-all} class-map-name

    10.    match {apn regex parameter-name | mcc country-code mnc network-code | message-id id | message-length min min-length max max-length | version number}

    11.    exit

    12.    policy-map type inspect protocol-name policy-map-name

    13.    class type inspect protocol-name class-map-name

    14.    log

    15.    exit

    16.    exit

    17.    class-map type inspect {match-any | match-all} class-map-name

    18.    match protocol protocol-name parameter-map signature

    19.    exit

    20.    policy-map type inspect policy-map-name

    21.    class type inspect class-map-name

    22.    inspect [parameter-map-name]

    23.    service-policy protocol-name policy-map

    24.    end


手順の詳細
     コマンドまたはアクション目的
    ステップ 1 enable


    例:
    Router> enable
     
    特権 EXEC モードをイネーブルにします。
    • パスワードを入力します(要求された場合)。
     
    ステップ 2configure terminal


    例:
    Router# configure terminal
              
     

    グローバル コンフィギュレーション モードを開始します。

     
    ステップ 3parameter-map type regex parameter-map-name


    例:
    Router# parameter-map type regex PARAM_REG
              
     

    特定のトラフィック パターンに一致させるためのパラメータ マップ タイプを設定し、パラメータ マップ コンフィギュレーション モードを開始します。

     
    ステップ 4pattern expression


    例:
    Router(config-profile)# pattern apn.cisco.com 
              
     

    ローカル URL フィルタリングで許可またはブロックされるドメイン、URL キーワード、または URL メタ文字のリストを指定する一致パターンを設定します。

     
    ステップ 5exit


    例:
    Router(config-profile)# exit 
              
     

    パラメータ マップ コンフィギュレーション モードを終了し、グローバル コンフィギュレーション モードに戻ります。

     
    ステップ 6parameter-map type inspect {parameter-map-name | global}

    例:
    Router(config)# parameter-map type inspect global 
              
     

    接続しきい値、タイムアウト、および inspect アクションに関連するその他のパラメータの検査タイプ パラメータ マップを設定し、パラメータ マップ タイプ検査モードを開始します。

     
    ステップ 7gtp {request-queue elements | timeout {{gsn | pdp-context | signaling | tunnel} minutes | request-queue seconds} | tunnel-limit number}


    例:
    Router(config-profile)# gtp tunnel-limit 100 
              
     

    GTP のインスペクション パラメータを設定します。

     
    ステップ 8exit


    例:
    Router(config-profile)# exit 
              
     

    パラメータ マップ タイプ検査モードを終了し、グローバル コンフィギュレーション モードに戻ります。

     
    ステップ 9class-map type inspect protocol-name {match-any | match-all} class-map-name

    例:
    Router(config)# class-map type inspect gtpv0 LAYER7_CLASS_MAP 
              
     

    レイヤ 7(アプリケーション固有)検査タイプ クラス マップを作成し、クラス マップ コンフィギュレーション モードを開始します。

     
    ステップ 10match {apn regex parameter-name | mcc country-code mnc network-code | message-id id | message-length min min-length max max-length | version number}


    例:
    Router(config-cmap)# match mcc 100 mnc 91
              
     

    GTP の検査タイプ クラス マップ用の分類基準を設定します。

     
    ステップ 11exit


    例:
    Router(config-cmap)# exit
              
     

    クラスマップ コンフィギュレーション モードを終了し、グローバル コンフィギュレーション モードに戻ります。

     
    ステップ 12 policy-map type inspect protocol-name policy-map-name


    例:
    Router(config)# policy-map type inspect gtpv0 LAYER7_POLICY_MAP   
              
     

    レイヤ 7(プロトコル固有)検査タイプ ポリシー マップを作成し、ポリシーマップ コンフィギュレーションを開始します。

     
    ステップ 13 class type inspect protocol-name class-map-name


    例:
    Router(config-pmap)# class type inspect gtpv0 LAYER7_CLASS_MAP   
              
     

    アクションを実行する対象のトラフィック(クラス)を指定し、ポリシー マップ クラス コンフィギュレーションを開始します。

     
    ステップ 14log


    例:
    Router(config-pmap-c)# log   
              
     

    メッセージのログを生成します。

     
    ステップ 15exit


    例:
    Router(config-pmap-c)# exit   
              
     

    ポリシーマップ クラス コンフィギュレーションを終了し、ポリシーマップ コンフィギュレーション モードに戻ります。

     
    ステップ 16exit


    例:
    Router(config-pmap)# exit   
              
     

    ポリシー マップ コンフィギュレーション モードを終了し、グローバル コンフィギュレーション モードに戻ります。

     
    ステップ 17class-map type inspect {match-any | match-all} class-map-name

    例:
    Router(config)# class-map type inspect LAYER4_CLASS_MAP   
              
     

    レイヤ 3 およびレイヤ 4 検査タイプ クラス マップを作成し、クラスマップ コンフィギュレーション モードを開始します。

     
    ステップ 18match protocol protocol-name parameter-map signature


    例:
    Router(config-cmap)# match protocol gtpv0   
              
     

    指定したプロトコルに基づいてクラス マップの一致基準を設定します。

     
    ステップ 19exit


    例:
    Router(config-cmap)# exit   
              
     

    クラスマップ コンフィギュレーションを終了し、グローバル コンフィギュレーション モードに戻ります。

     
    ステップ 20policy-map type inspect policy-map-name


    例:
    Router(config)# policy-map type inspect LAYER4_POLICY_MAP   
              
     

    レイヤ 3 とレイヤ 4 の検査タイプ ポリシー マップを作成し、ポリシーマップ コンフィギュレーション モードを開始します。

     
    ステップ 21class type inspect class-map-name


    例:
    Router(config-pmap)# class type inspect LAYER4_CLASS_MAP   
              
     

    アクションを実行する対象のトラフィック(クラス)を指定し、ポリシーマップ クラス コンフィギュレーション モードを開始します。

     
    ステップ 22inspect [parameter-map-name]


    例:
    Router(config-pmap-c)# inspect   
              
     

    Cisco IOS ステートフル パケット インスペクションをイネーブルにします。

     
    ステップ 23service-policy protocol-name policy-map


    例:
    Router(config-pmap-c)# service-policy gtpv0 LAYER7_POLICY_MAP   
              
     

    レイヤ 7 ポリシー マップをトップレベルのレイヤ 3 またはレイヤ 4 ポリシー マップに付加します。

     
    ステップ 24 end


    例:
    Router(config-pmap-c)# end   
              
     

    ポリシー マップ クラス コンフィギュレーション モードを終了し、特権 EXEC モードに戻ります。

     

    GPRS トンネリング プロトコル サポートの設定例

    例:GPRS トンネリング プロトコル サポートの設定

    次に、GTP トンネリング プロトコル サポートを設定する例を示します。

    Router> enable
    Router# configure terminal
    Router# parameter-map type regex PARAM_REG
    Router(config-profile)# pattern apn.cisco.com
    Router(config-profile)# exit
    Router(config)# parameter-map type inspect global
    Router(config-profile)# gtp tunnel-limit 100
    Router(config-profile)# exit
    Router(config)# class-map type inspect gtpv0 LAYER7_CLASS_MAP
    Router(config-cmap)# match mcc 100 mnc 91
    Router(config-cmap)# exit
    Router(config)# policy-map type inspect gtpv0 LAYER7_POLICY_MAP
    Router(config-pmap)# class type inspect gtpv0 LAYER7_CLASS_MAP
    Router(config-pmap-c)# log
    Router(config-pmap-c)# exit
    Router(config-pmap)# exit
    Router(config)# class-map type inspect LAYER4_CLASS_MAP
    Router(config-cmap)# match protocol gtpv0
    Router(config-cmap)# exit
    Router(config)# policy-map type inspect LAYER4_POLICY_MAP
    Router(config-pmap)# class type inspect LAYER4_CLASS_MAP
    Router(config-pmap-c)# inspect
    Router(config-pmap-c)# service-policy gtpv0 LAYER7_POLICY_MAP
    Router(config-pmap-c)# end

    GPRS トンネリング プロトコル サポートの追加情報

    シスコのテクニカル サポート

    説明

    リンク

    シスコのサポートおよびドキュメンテーション Web サイトでは、ダウンロード可能なマニュアル、ソフトウェア、ツールなどのオンライン リソースを提供しています。 これらのリソースは、ソフトウェアをインストールして設定したり、シスコの製品やテクノロジーに関する技術的問題を解決したりするために使用してください。 この Web サイト上のツールにアクセスする際は、Cisco.com のログイン ID およびパスワードが必要です。

    http:/​/​www.cisco.com/​cisco/​web/​support/​index.html

    GPRS トンネリング プロトコル サポートの設定の機能情報

    次の表に、このモジュールで説明した機能に関するリリース情報を示します。 この表は、ソフトウェア リリース トレインで各機能のサポートが導入されたときのソフトウェア リリースだけを示しています。 その機能は、特に断りがない限り、それ以降の一連のソフトウェア リリースでもサポートされます。

    プラットフォームのサポートおよびシスコ ソフトウェア イメージのサポートに関する情報を検索するには、Cisco Feature Navigator を使用します。 Cisco Feature Navigator にアクセスするには、www.cisco.com/​go/​cfn に移動します。 Cisco.com のアカウントは必要ありません。

    表 1 GPRS トンネリング サポートの設定の機能情報

    機能名

    リリース

    機能情報

    GPRS トンネリング プロトコル サポートの設定

    Cisco IOS XE Release 3.4S

    GPRS トンネリング プロトコル サポート機能は、General Packet Radio Switching(GPRS)トンネリング プロトコル(GTP)にファイアウォール サポートを提供します。

    次のコマンドが導入または変更されました。 class type inspect class-map type inspect gtp match (gtp) match protocol(zone) inspect parameter-map type inspect parameter-map type regex policy-map type inspect service-policy (policy-map) show parameter-map type inspect show parameter-map type regex show policy-map type inspect zone-pair