Citrix ADC

ロケーションファイルを追加して静的近接データベースを作成する

静的近接データベースは UNIX ベースの ASCII ファイルです。ロケーションファイルからこのデータベースに追加されたエントリは、静的エントリと呼ばれます。Citrix ADCアプライアンスにロードできるロケーションファイルは1つだけです。新しい位置情報ファイルを追加すると、既存のファイルが上書きされます。静的近接データベースのエントリ数は、Citrix ADCアプライアンスに構成されているメモリによって制限されます。

静的近接データベースは、既定の形式、または市販のサードパーティデータベース (www.maxmind.com や www.ip2location.com など) から派生した形式で作成できます。

Citrix ADCアプライアンスには、次の2つのIPジオロケーションデータベースファイルが含まれています。これらは、MaxMind によって公開された GeoLite2 ファイルです。

  • Citrix_netscaler_inbuilt_geoip_db_IPv4
  • Citrix_netscaler_inbuilt_geoip_db_ipv6

これらのデータベースファイルは、Citrix ADCアプライアンスがサポートする形式の /var/netscaler/inbuilt_db ディレクトリにあります。

これらの IP ジオロケーションデータベースは、静的近接ベースの GSLB 方式のロケーションファイルとして、またはロケーションベースのポリシーで使用できます。

これらのデータベースは、提供する詳細が異なります。デフォルトのファイルには書式タグがある場合を除き、データベースファイル形式の厳密な適用はありません。データベースファイルは、フィールド区切り文字としてカンマを使用する ASCII ファイルです。フィールドの構造と、ロケーションの IP アドレスの表現には違いがあります。

formatパラメータは、Citrix ADCアプライアンスに対するファイルの構造を記述します。format オプションに不正な値を指定すると、内部データが破損する可能性があります。

  • アップグレード後、/var/netscaler/inbuilt_db/ ディレクトリに以前のCitrix ADCソフトウェアバージョンのデータベースファイル(Citrix_Netscaler_InBuilt_GeoIP_DB.csv)が含まれている場合、そのファイルは保持されます。
  • データベースファイルのデフォルトの場所は/var/netscaler/locdbです。高可用性(HA)セットアップでは、ファイルの同一のコピーが両方のCitrix ADCアプライアンスの同じ場所に存在する必要があります。
  • ロケーションファイルが既定の場所以外の場所に保存されている場合は、ロケーションファイルのパスを指定します。
  • 管理パーティションの場合、デフォルトのパスは /var/partitions/<partitionName>/netscaler/locdb です。
  • 一部のデータベースでは、ISO-3166 に準拠した短い国名や長い国名も提供されています。Citrix ADCは、修飾子を格納および照合するときに短縮名を使用します。
  • 静的近接データベースを作成するには、Citrix ADCアプライアンスのUNIXシェルにログオンし、エディターを使用して、Citrix ADCがサポートする形式のいずれかで場所の詳細を含むファイルを作成します。
  • Citrix ADC アプライアンスは GeoLite2 データベース(IPv4 および IPv6)に同梱されていますが、Citrix は MaxMind GeoLite2 データベースを定期的に保守または更新しません。必要に応じて、 www.maxmind.com から GeoLite2 データベースを取得し、Citrix ADC データベース形式に変換できます。詳しくは、 MaxMind GeoLite2 データベース形式を Citrix ADC データベース形式に変換するスクリプトを参照してください

CLI を使用して静的ロケーションファイルを追加するには

コマンドプロンプトで入力します。

add locationFile <locationFile> [-format <format>]
-  show locationFile
<!--NeedCopy-->

例:

add locationFile /var/netscaler/locdb/nsgeo1.0 -format netscaler
Done

show locationFile
Location File: /var/netscaler/locdb/nsgeo1.0
Format: netscaler
 Done
>
<!--NeedCopy-->

例:

add locationFile /var/netscaler/inbuilt_db/Citrix_Netscaler_InBuilt_GeoIP_DB_IPv4 -format netscaler

add locationFile6 /var/netscaler/inbuilt_db/Citrix_Netscaler_InBuilt_GeoIP_DB_IPv6 -format netscaler
<!--NeedCopy-->

GUI を使用して静的ロケーションファイルを追加するには、次の手順を実行します。

  1. [ AppExpert ] > [ 場所] に移動し、[ 静的データベース ] タブをクリックします。
  2. [ 追加 ] をクリックして、静的位置情報ファイルを追加します。

インポートしたロケーションファイルデータベースは、構成ユーティリティの [ データベースの表示 ] ダイアログボックスを使用して表示できます。同等の CLI はありません。

GUI を使用して静的ロケーションファイルを表示するには、次の手順を実行します。

  1. [ AppExpert ] > [ 場所] に移動し、[ 静的データベース ] タブをクリックします。
  2. 静的ロケーションファイルを選択し、[ アクション ] リストから [ データベースの表示] をクリックします。

ロケーションファイルをCitrix ADC形式に変換するには:

デフォルトでは、位置情報ファイルを追加すると、Citrix ADC 形式で保存されます。他の形式のロケーションファイルをCitrix ADC形式に変換できます。

: nsmapオプションには、コマンドラインインターフェイスからのみアクセスできます。この変換は、Citrix ADC 形式にのみ可能です。

静的データベース形式を変換するには、CLI プロンプトで次のコマンドを入力します。

nsmap -f <inputFileFormat> -o <outputFileName> <inputFileName>
<!--NeedCopy-->

例:

 nsmap -f ip-country-region-city -o nsfile.ns ip-country-region-city.csv
<!--NeedCopy-->

MaxMind GeoLite2 データベース形式を Citrix ADC データベース形式に変換するスクリプト

MaxMind GeoIP データベースは、Citrix ADC で直接使用することはできません。MaxMind GeoIP データベースは、Citrix ADC 形式に変換し、GSLB 静的近接方式やポリシーなどの他の機能で IP ロケーションを検出するためにロードする必要があります。 スクリプトを使用して、GeoLite2 データベース形式を Citrix ADC データベース形式に変換できます。このスクリプトは、IPv4 ファイルと IPv6 ファイルの両方を変換するために使用できます。 スクリプトは次の場所にあります。 https://github.com/citrix/MaxMind-GeoIP-Database-Conversion-Citrix-ADC-Format

GeoIP2データベースをCitrix ADC形式に変換する手順

  1. GeoLite2 City または GeoLite2 国データベースを.csv形式でhttps://dev.maxmind.com/geoip/geoip2/geolite2/からダウンロードします。

  2. Citrix ADC ディレクトリ(/var など)にファイルをコピーします。次のシェルコマンドを使用してファイルを解凍すると、同じ名前のディレクトリが作成されます。

    tar -xf <filename>

  3. スクリプト convert_geoipdb_to_netscaler_format.plをhttps://github.com/citrix/MaxMind-GeoIP-Database-Conversion-Citrix-ADC-Formatからダウンロードし、ステップ #2 で作成したディレクトリにコピーします。

  4. スクリプトの実行に使用できるオプションを確認するには、以下のコマンドを実行します。

    perl Convert_GeoIPDB_To_Netscaler_Format.pl –help

    以下のようなさまざまなオプションを利用できます。

    • <filename> IPv4 出力ファイル。既定の出力ファイル名:Netscaler_Maxmind_GeoIP_DB_IPv4.csv

    • -p <filename> IPv6 出力ファイル。既定の出力ファイル名:Netscaler_Maxmind_GeoIP_DB_IPv6.csv

    • -logfile <filename> イベント/メッセージのリストを含むファイル

    • -debug すべてのメッセージを STDOUT に出力します。

  5. 次のコマンドを実行して、GeoLite2 データベース形式を Citrix ADC データベース形式に変換します。

    perl Convert_GeoIPDB_To_Netscaler_Format.pl

    注: 操作には最大 5 分かかる場合があります。

    スクリプトで使用される既定のファイル名は、MaxMind GeoLite2 City ベースのデータベースのファイル名です。GeoLite2 Country データベースをダウンロードした場合は、リストされているとおりに入力ファイル名を指定する必要があります。

    • -b <filename> 変換する IPv4 ブロックファイルの名前。既定のファイル名:GeoLite2-City-Blocks-IPv4.csv
    • -i <filename> 変換する IPv6 ブロックファイルの名前。既定のファイル名:GeoLite2-City-Blocks-IPv6.csv
    • -l <filename> 変換するロケーションファイルの名前。既定のファイル名:GeoLite2-City-Locations-en.csv

    例:

    perl Convert_GeoIPDB_To_Netscaler_Format.pl -b GeoLite2-Country-Blocks-IPv4.csv -i GeoLite2-Country-Blocks-IPv6.csv -l  GeoLite2-Country-Locations-en.csv
    <!--NeedCopy-->
    

    スクリプトの実行後に生成される出力ファイルは次のとおりです。

    • Netscaler_Maxmind_GeoIP_DB_IPv4.csv
    • Netscaler_Maxmind_GeoIP_DB_IPv6.csv
  6. データベースのCitrix ADC形式への変換が完了したら、次のコマンドを使用して使用を開始します。

    add locationFile <locationFile>

Citrix ADCアプライアンスにサードパーティの静的データベースファイルを追加する

Citrix ADCアプライアンスにサードパーティの静的データベースファイルを追加するには、次の手順を実行します。

  1. www.maxmind.com や www.ip2location.com などのサードパーティベンダーからロケーションデータベースファイルを入手します。
  2. WinSCPユーティリティを使用して、ロケーションデータベースファイルをCitrix ADCアプライアンスにコピーします。

    アプライアンス上のデータベース・ファイルのデフォルトの場所は /var/netscaler/locdbです。

  3. 以下のコマンドを実行して、静的な位置情報ファイルを追加します。

    add location file <locationfile Name> -format LocationFormat
    <!--NeedCopy-->
    
  4. 次のコマンドを実行して、ロケーションデータベースがロードされていることを確認します。

    show location parameter
    <!--NeedCopy-->
    

    このコマンドは、スタティックエントリの数などのパラメータを表示します。データベースが正しく読み込まれていない場合は、エラーメッセージも表示されます。最大 3M-1 (300 万から 1 を引いた) エントリをロードできます。

  5. 次のコマンドを実行して、GSLB サイトの場所を表示します。

    show gslb service
    <!--NeedCopy-->
    

    • データベースが正しくロードされると、GSLB サイトの場所がデータベースに自動的に入力されます。
    • アプライアンスの設定には、ロケーションファイルを 1 つだけ指定できます。
    • アプライアンスが高可用性セットアップの場合、一方のアプライアンスはもう一方のアプライアンスからデータベースをコピーする必要があります。
    • 着信 IP アドレスに一致するものが見つからない場合、要求はラウンドロビン方式を使用して処理されます。
  6. 次のコマンドを実行して、アプライアンスで GSLB メソッドを設定します。

    set gslb vserver GSLBVserverName -lbMethod MethodType
    <!--NeedCopy-->
    
ロケーションファイルを追加して静的近接データベースを作成する