ADC

Konfigurieren eines Datensatzes

Um einen Datensatz zu konfigurieren, müssen Sie die Zeichenfolgen für den Server als Muster angeben, einen Typ zuweisen (Zahl, IPv4-Adresse oder IPv6-Adresse) und den Datensatzbereich konfigurieren. Sie können dem Muster manuell einen eindeutigen Indexwert zuweisen oder die automatische Zuweisung der Indexwerte zulassen. Das Dataset ist nicht mit HTTP oder einem 7-Layer-Protokoll verwandt. Es funktioniert nur bei Text oder Zeichenfolge. Es gibt verschiedene Arten von Datensätzen wie NUM, ULONG, IPv4, IPv6, MAC, DOUBLE. Sie können einen Typ auswählen und den Datensatzbereich basierend auf dem angegebenen Typ definieren.

Hinweis:

Bei Richtliniendatensätzen wird zwischen Groß- und Kleinschreibung unterschieden (es sei denn, Sie geben an, dass der Ausdruck sie ignorieren soll). Daher stimmt die MAC-Adresse ff:ff:ff:ff:ff beispielsweise nicht mit der MAC-Adresse FF:FF:FF:FF:FF:FF:FF überein.

Die Regeln, die für Indexwerte von Datensätzen angewendet werden, sind ähnlich wie Mustersätze. Informationen zu Indexwerten finden Sie unter Konfigurieren eines Mustersatzes.

Ab NetScaler Version 14.1-12.x können Sie zusätzlich zur Verwendung einer statischen Zeichenfolge einen Ausdruck verwenden, um einen Datensatz an eine Richtlinie zu binden. Der Datensatzname wird dynamisch aus dem Ausdruck abgeleitet und reduziert daher die Anzahl der Richtlinien, die für mehrere Datensätze erstellt werden müssen. Durch die Erstellung eines dynamischen Datensatzes können Sie sich wiederholende Konfigurationen vermeiden.

Beispiel: In Versionen vor NetScaler 14.1-12.x müssen Sie, wenn es vier Datensätze gibt, vier Richtlinien erstellen, um die vier Datensätze zu binden. Ab der Version NetScaler 14.1-12.x können Sie einen Ausdruck anstelle des Datensatznamens verwenden, um eine Bindung an die Richtlinie herzustellen. Im Rahmen der Auswertung von Ausdrücken werden alle vier Datensätze ausgewertet und der Datensatzname wird abgeleitet. Alle vier Datensätze sind also mithilfe des Ausdrucks an eine Richtlinie gebunden.

Der Ausdrucksauswertungsprozess dynamischer Datensätze ähnelt dem von Mustersätzen. Weitere Informationen zur Auswertung von Ausdrücken finden Sie unter Konfiguration eines Mustersatzes.

Konfigurieren eines Datensatzes

Führen Sie die folgenden Schritte aus, um einen Datensatz zu konfigurieren:

  1. Hinzufügen eines Policy-Datensets
  2. Bindungsmuster an einen Richtliniendatensatz
  3. Hinzufügen eines Richtlinienausdrucks
  4. Überprüfen der Richtlinienkonfiguration

Hinzufügen eines Policy-Datensets

Führen Sie an der Eingabeaufforderung Folgendes aus:

add policy dataset <name> <type>

Beispiel:

add policy dataset ds1 ipv4 -comment numbers

Binden eines Musters an den Datensatz

Geben Sie in der Befehlszeile Folgendes ein:

bind policy dataset <name> <value> [-index <positive_integer>] [-endRange <string>] [-comment <string>]

Beispiel:

bind policy dataset ds1 1.1.1.1 -endRange 1.1.1.10 -comment short description about the pattern bound to the data set

Hinweis:

Sie müssen diesen Schritt für alle Muster wiederholen, die Sie an den Datensatz binden möchten. Sie können nur bis zu 5000 Muster an einen Datensatz binden.

Und ein Datensatzbereich darf sich nicht mit anderen Bereichen überschneiden, die an einen Datensatz gebunden sind, und darf keine Einzelwerte enthalten, die an den Datensatz gebunden sind. Wenn Sie einen Datensatz mit einem überlappenden Bereich binden, führt dies zu einem Fehler.

Beispiel:

add policy dataset ip_set ipv4
 Done
bind policy dataset ip_set 2.2.2.25
 Done
bind policy dataset ip_set 2.2.2.20 -endRange 2.2.2.30
ERROR: The range overlaps an existing range or includes a value bound to the dataset.
<!--NeedCopy-->

Ein Wert wird als in der Datenmenge enthalten betrachtet, wenn er entweder einem einzelnen an den Datensatz gebundenen Wert entspricht oder zwischen dem unteren Wert und dem oberen Wert (niedrigerer Wert <= Wert && Wert <- oberer Wert) für einen an den Datensatz gebundenen Bereich liegt.

Richtlinienausdruck in einem Richtliniendatensatz verwenden

Geben Sie in der Befehlszeile Folgendes ein:

add policy expression exp1 http.req.body(100).contains_any("ds1")

Wo, Der Ausdruck prüft, ob in den ersten 100 Byte des Hauptteils der HTTP-Anforderung ein Muster (oder Muster innerhalb des Bereichs) vorhanden ist, das an den Datensatz ds1 gebunden ist.

Überprüfen der Datensatzkonfiguration

Geben Sie in der Befehlszeile Folgendes ein:

show policy dataset ds1

Beispiel:

> show policy dataset ds1
       Dataset:        ds1
        Type:   IPV4
1)      Bound Dataset Range from: 1.1.1.1       through: 1.1.1.10       Index:  1
<!--NeedCopy-->

Einen dynamischen Datensatz konfigurieren

Konfigurieren Sie einen dynamischen Datensatz mit der CLI

Geben Sie an der Eingabeaufforderung die folgenden Befehle ein:

  1. Erstellen Sie Datensätze.

    add policy dataset <name> - dynamic yes

    Beispiel:

    add policy dataset CompA_data -dynamic yes
    add policy dataset CompB_data -dynamic yes
    <!--NeedCopy-->
    
  2. Binden Sie den Datensatz an eine Richtlinie.

    bind policy dataset <name> <string>

    Beispiel:

    bind policy dataset CompA_data stringA
    bind policy patset CompB_data string B
    <!--NeedCopy-->
    
  3. Fügen Sie eine Richtlinie hinzu und verwenden Sie einen Ausdruck anstelle eines Datensatznamens.

    add responder policy <name> <rule> <action>

    Beispiel:

    add responder policy samplepolicy1 http.req.hostname.contains_any("Comp" + http.req.url.path.get(1) + "_pat") reset
    <!--NeedCopy-->
    
  4. Überprüfen Sie die Konfiguration.

    > show dataset -dynamicOnly

    Beispiel:

    > show dataset -dynamicOnly
    1) Dataset: CompA_data
    2) Dataset: CompB_data
    Done
    <!--NeedCopy-->
    

Konfigurieren Sie einen dynamischen Datensatz mit der GUI

  1. Navigieren Sie zu AppExpert > Datensätze.
  2. Klicken Sie auf Hinzufügen, um das Dialogfeld Datensatz erstellen zu öffnen.
  3. Geben Sie im Textfeld Name einen Namen für den Datensatz ein.
  4. Klicken Sie auf Einfügen und geben Sie einen Wert in das Datenfeld ein. 1. Geben Sie optional einen Index an. Index ist ein vom Benutzer zugewiesener Wert zwischen 1 und 4294967290.
  5. Vergewissern Sie sich, dass Sie die richtigen Zeichen eingegeben haben, und klicken Sie dann auf Einfügen.
  6. Wiederholen Sie die Schritte 4 und 5, um weitere Werte hinzuzufügen.
  7. Markieren Sie das Kontrollkästchen Dynamisch und klicken Sie dann auf Erstellen .
  8. Navigieren Sie zu AppExpert > Responder > Policies > Hinzufügen.
  9. Erstellen Sie einen Ausdruck, der den Datensatz ableiten kann.
  10. Fügen Sie Details in den anderen Pflichtfeldern hinzu und klicken Sie auf Erstellen.

Dynamischen Datensatz setzen, deaktivieren oder entfernen

So legen Sie einen Datensatz als dynamisch fest:

> set dataset <name> -dynamic yes

Beispiel:

> set dataset CompA_data -dynamic yes

Um einen Datensatz als dynamisch zu deaktivieren:

> unset dataset <name> -dynamic

Beispiel:

> unset dataset CompA_data -dynamic
Warning: [Dynamic attribute turned off. Expressions using this patset or dataset dynamically will not work.]
 Done
<!--NeedCopy-->

So entfernen Sie einen dynamischen Mustersatz:

> rm dataset <name>

Beispiel:

> rm dataset CompA_pat
Warning: [Dynamic patset or dataset removed. Expressions using this patset or dataset dynamically will not work.]
 Done
<!--NeedCopy-->

Hinweis:

Wenn Sie einen dynamischen Datensatz deaktivieren oder entfernen, funktioniert der Ausdruck, der den Datensatz verwendet, nicht.

Konfigurieren eines Datensatzes mit dem Konfigurationsdienstprogramm

Folgen Sie den unten angegebenen Schritten, um einen Richtliniendatensatz zu konfigurieren:

  1. Navigieren Sie zu AppExpert > Datensätze.
  2. Klicken Sie im Detailbereich unter Datensätze auf Hinzufügen.
  3. Stellen Sie auf der Seite Datensatz konfigurieren die folgenden Parameter ein.

    1. Name. Name des Richtliniendatensatzes.
    2. Typ. Typ des Werts, der an den Datensatz gebunden werden soll.

    Konfigurieren des Datensatzes

  4. Klicken Sie auf Einfügen, um den Datensatzwert eines bestimmten Typs zu binden.
    1. Wert. Wert des angegebenen Typs, der mit dem Datensatz verknüpft ist.
    2. Indizieren. Der Indexwert des Datensatzes.
    3. Bereich beenden. Der Datensatzeintrag. Dies ist ein Bereich <value> von <end_range>.
    4. Kommentare. Eine kurze Beschreibung des Datensatzes.

    Datensatzbindung

  5. Klicken Sie auf Einfügen und schließen.
  6. Geben Sie Kommentare ein.
  7. Klicken Sie auf Erstellen und Schließen.

CIDR-Subnetznotation in IPv4- und IPv6-Adressen für Policy-Dataset

Die Richtlinien-Datensätze für IPv4 und IPv6-Adresse ermöglichen, dass der gebundene Wert Subnetze mit der CIDR-Notation sein kann. Die CIDR-Notation gibt die Adresse und den Bereich des Subnetzes an. CIDR-Notation <address>/<n>, wobei <address> die erste Adresse im Subnetz und eine Ganzzahl <n> ist, die die Anzahl der in der Subnetzmaske gesetzten Bits ganz links angibt, die den Bereich des Subnetzes definiert.

Beispiel: 192.128.0.0/10 stellt ein IPv4-Subnetz dar, das bei der Adresse 192.129.0.0 mit einer Maske 0xFFC0000 (255.192.0.0) beginnt.

Beispiel:

add policy dataset ds1 ipv4
bind policy dataset ds1 192.128.0.0/10
show policy dataset ds1
    Dataset: ds1
    Type: IPV4
Bound Dataset Value: 192.128.0.0/10 Index: 1 Comment: Subnet range from 192.128.0.0 through 192.191.255.255
<!--NeedCopy-->

Ein Beispiel für die Verwendung dieses Datensatzes in einem Ausdruck:

add responder policy resp_ipv4_pol client.ip.src.typecast_text_t.equals_any("ds1") drop
<!--NeedCopy-->

Beispiel für ein IPv6-Subnetz:

Ein Beispiel für ein IPv6-Subnetz wäre 2001:db8:123::/56, das bei Adresse 2001:db8:123:: mit Maske FFFF:FFFF:FFFF:FF00:: beginnt.

add policy dataset ds2 ipv6
bind policy dataset ds2 2001:db8:123::/56
show policy dataset ds2
    Dataset: ds2
    Type: IPV61
Bound Dataset Value: 2001:db8:123::/56 Index: 1 Comment: Subnet range from 2001:db8:123:: through 2001:db8:123:ff:ffff:ffff:ffff:ffff
<!--NeedCopy-->

Die Startadresse des Subnetzes wird durch die angegebene Adresse bestimmt, die durch die Subnetzmaske maskiert ist. Eine Warnung wird ausgegeben, wenn die angegebene Adresse nicht mit der resultierenden Startadresse übereinstimmt.

Beispiel:

bind policy dataset ds1 192.168.0.0/10
Warning: Starting subnet address masked using subnet mask to create new starting address [192.128.0.0]
show policy dataset ds1
    Dataset: ds1
    Type: IPV4
Bound Dataset Value:192.168.0.0/10 Index: 1 Comment: Subnet range from 192.128.0.0 through 192.191.255.255
<!--NeedCopy-->

Ein Beispiel für die Verwendung dieses Datensatzes in einem Ausdruck:

add responder policy resp_ipv6_pol client.ipv6.src.typecast_text_t.equals_any("ds2") drop
<!--NeedCopy-->
Konfigurieren eines Datensatzes