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/ netscalerer /inbuilt_db/”目录下存在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格式:netscaler Done > 

例子:

add locationFile /var/netscaler/inbuilt_db/Citrix_Netscaler_InBuilt_GeoIP_DB_IPv4 -format netscaler——NeedCopy >

使用GUI添加静态位置文件:

  1. 导航到AppExpert>位置,点击静态数据库选项卡。
  2. 点击添加添加静态位置文件。

您可以使用查看数据库对话框。没有对应的CLI。

使用GUI查看静态位置文件。

  1. 导航到AppExpert>位置,点击静态数据库选项卡。
  2. 选择一个静态位置文件,并从行动列表中,点击查看数据库

将位置文件转换为Citrix ADC格式:

默认情况下,当您添加位置文件时,它将以Citrix ADC格式保存。您可以将其他格式的位置文件转换为Citrix ADC格式。

请注意: nsmap选项只能通过命令行访问。只能转换为Citrix ADC格式。

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

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城市或GeoLite2国家数据库https://dev.maxmind.com/geoip/geoip2/geolite2/

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

    Tar -xf

  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

    可供选择的选项有:

    • <文件名>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 Country数据库,则必须提供相应的输入文件名。

    • - 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. 功能:添加静态位置文件。

    添加位置文件 -format LocationFormat 
  4. 执行如下命令,确保位置数据库已加载。

    显示位置参数

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

  5. 查看GSLB站点的位置信息。

    显示GSLB服务

    请注意

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

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