Citrix ADC

添加位置文件以创建静态接近数据库

静态接近数据库是一个基于unix的ASCII文件。从位置文件添加到该数据库的条目称为静态条目。Citrix ADC设备上只能加载一个位置文件。添加新的位置文件将覆盖现有文件。静态接近数据库中的条目数量受Citrix ADC设备中配置的内存的限制。

静态接近数据库可以用默认格式创建,也可以用从商业配置的第三方数据库(如www.maxmind.com和www.ip2location.com)派生的格式创建。

Citrix ADC设备包括以下两个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设备的文件结构。为格式选项指定不正确的值会损坏内部数据。

请注意

  • 升级后,如果/var/netscaler/inbuilt_db/目录包含Citrix ADC早期软件版本的数据库文件(Citrix_Netscaler_InBuilt_GeoIP_DB.csv),则该文件将被保留。
  • 数据库文件的默认位置是/var/netscaler/locdb,在高可用性(HA)设置中,文件的相同副本必须出现在两个Citrix ADC设备的相同位置。
  • 如果位置文件存储在默认位置以外的位置,则指定位置文件的路径。
  • 对于admin分区,默认路径为:/var/partitions/< partitionName >/ netscaler / locdb。
  • 一些数据库根据ISO-3166提供较短的国家名称,也提供较长的国家名称。Citrix ADC在存储和匹配限定符时使用短名称。
  • 要创建静态接近数据库,请登录到Citrix ADC设备的UNIX shell,并使用编辑器创建一个文件,其中包含Citrix ADC支持的一种格式的位置详细信息。

使用CLI命令添加静态位置文件

在命令提示符处,输入:

add locationFile  [-format ] - show locationFile 

例子:

add locationFile /var/netscaler/locdb/nsgeo1.0 -format netscaler Done show locationFile位置文件:/var/netscaler/locdb/nsgeo1.0 Format: netscaler Done > 

例子:

add locationFile /var/netscaler/inbuilt_db/Citrix_Netscaler_InBuilt_GeoIP_DB_IPv4 -format netscaler add locationFile /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格式。

要转换静态数据库格式,在命令行提示符下,输入以下命令:

nsmap -f  -o   

例子:

Nsmap -f ip-country-region-city -o nsfile。Ns ip-country-region-city.csv 

脚本将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. 下载。csv格式的GeoLite2 City或GeoLite2 Country数据库https://dev.maxmind.com/geoip/geoip2/geolite2/

  2. 将该文件复制到Citrix ADC目录中(例如/var)。使用下面的shell命令解压文件,这将创建一个同名的目录。

    Tar -xf

  3. 从网站下载脚本Convert_GeoIPDB_To_Netscaler_Format.plhttps://github.com/citrix/MaxMind-GeoIP-Database-Conversion-Citrix-ADC-Format并将其复制到步骤2中创建的目录中。

  4. 使用实例检查脚本执行的可接受选项。

    perl Convert_GeoIPDB_To_Netscaler_Format.pl -help

    可供选择的选项有:

    • <文件名>IPv4输出文件。默认输出文件名:Netscaler_Maxmind_GeoIP_DB_IPv4.csv

    • - p <文件名>IPv6输出文件。默认输出文件名:Netscaler_Maxmind_GeoIP_DB_IPv6.csv

    • 日志文件<文件名>包含事件/消息列表的文件

    • 调试将所有消息打印到STDOUT

  5. 执行以下命令将GeoLite2数据库格式转换为Citrix ADC数据库格式。

    perl Convert_GeoIPDB_To_Netscaler_Format.pl

    注意:这个操作可能需要5分钟。

    脚本中使用的默认文件名是基于Maxmind GeoLite2 City的数据库的文件名。如果您已经下载了GeoLite2国家数据库,您必须提供相应的输入文件名。

    • - b <文件名>要转换的IPv4块文件名。默认文件名为:GeoLite2-City-Blocks-IPv4.csv
    • 我<文件名>要转换的IPv6块文件名。默认文件名为:GeoLite2-City-Blocks-IPv6.csv
    • - l <文件名>要转换的位置文件的名称。默认文件名: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

在Citrix ADC设备上添加第三方静态数据库文件

执行以下步骤在Citrix ADC设备上添加第三方静态数据库文件。

  1. 位置数据库文件需通过第三方获取,如www.maxmind.com或www.ip2location.com。
  2. 使用WinSCP工具将位置数据库文件复制到Citrix ADC设备。

    请注意

    设备上数据库文件的默认位置为/var/netscaler/locdb

  3. 运行以下命令添加静态位置文件:

    add locationfile  -format LocationFormat 
  4. 执行以下命令确保位置数据库已加载:

    显示位置参数

    该命令显示静态表项的数量等参数。如果数据库没有正确加载,该命令还会显示一条错误消息。最多可加载3M-1(300万-1)个条目。

  5. 执行以下命令查看GSLB站点的位置信息:

    显示GSLB服务

    请注意

    • 如果正确加载数据库,GSLB站点的位置将自动填充到数据库中。
    • 您只能在设备上的配置中指定一个位置文件。
    • 如果设备处于高可用性设置中,则一个设备必须从另一个设备复制数据库。
    • 如果没有找到匹配的IP地址,则使用轮询的方式处理请求。
  6. 执行以下命令在设备上配置GSLB方法:

    set gslb vserver GSLBVserverName -lbMethod MethodType 
添加位置文件以创建静态接近数据库