Citrix ADC

位置ファイルを追加して静的近接データベースを作成する

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

スタティック近接データベースは、デフォルトの形式で作成することも、商用に設定されたサードパーティデータベース(www.maxmind.com や www.ip2location.com など)から派生した形式で作成することもできます。

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

  • 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 オプションに誤った値を指定すると、内部データが破損する可能性があります。

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

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

コマンドプロンプトで、次のように入力します。

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

例:

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

show locationFile
Location File: /var/netscaler/locdb/nsgeo1.0
Format: netscaler
 Done
>

例:

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

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>

例:

 nsmap -f ip-country-region-city -o nsfile.ns ip-country-region-city.csv

Maxmind ジオライト2 データベース形式を 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. https://dev.maxmind.com/geoip/geoip2/geolite2/からGeoLite2 CityまたはGeoLite2 Countryのデータベースを.csv形式でダウンロードします。

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

    tar -xf <filename>

  3. https://github.com/citrix/MaxMind-GeoIP-Database-Conversion-Citrix-ADC-Formatからスクリプトの Convert_GeoIPDB_To_Netscaler_Format.pl をダウンロードし、手順 #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>events/messagesのリストを含むファイル

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

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

    perl Convert_GeoIPDB_To_Netscaler_Format.pl

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

    スクリプトで使用されるデフォルトのファイル名は、Maxmind GeoLite2 都市ベースのデータベースのファイル名です。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.cs
    

    スクリプトの実行後に生成される出力ファイルを次に示します。

    • 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
    
  4. 次のコマンドを実行して、ロケーションデータベースがロードされていることを確認します。

    show location parameter
    

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

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

    show gslb service
    

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

    set gslb vserver GSLBVserverName -lbMethod MethodType
    

位置ファイルを追加して静的近接データベースを作成する