Citrix ADC

Client-IP-Adresse in TCP-Option

Die Citrix ADC Appliance verwendet viele Möglichkeiten, um die Clientinformationen an den Back-End-Server zu senden. Eine solche Methode besteht darin, die Client-IP-Adresse in der TCP-Option zu senden. Die Appliance verwendet die TCP-Optionsnummer im TCP-Profil, wenn der Back-End-Server die TCP-Option zum Lesen der Client-IP-Adresse verwendet.

Die Citrix ADC Appliance sendet die Client-IP-Adresse im TCP-Optionsheader nur in den folgenden Paketen:

  • endgültiges ACK-Paket des Dreiwege-Handshakes
  • ein erstes Datenpaket.

Im Folgenden sind einige der Nutzungsszenarien für die TCP-Optionskonfiguration in einer Citrix ADC Appliance aufgeführt.

  • Erlernen der ursprünglichen Client-IP-Adresse
  • Auswählen einer Sprache für eine Website
  • Blockieren der Auflistung der ausgewählten IP-Adressen

Im Folgenden sind die beiden Betriebsmodi zum Senden der Client-IP-Adresse in der TCP-Option aufgeführt:

  • Einfügen. Im Einfügemodus fügt die Appliance die Clientdetails im Feld TCP-Option 28 (konfigurierbar, aber der bevorzugte Wert ist 28) hinzu und sendet sie an den Back-End-Server.
  • Vorwärts. Im Vorwärtsmodus empfängt der virtuelle Server die Client-IP-Details in der TCP-Option von einem Proxygerät. Für den virtuellen Server müssen Sie dieselbe TCP-Option konfigurieren, mit der das Proxygerät die Client-IP-Details gesendet hat.

    Die Appliance sendet dann die Clientdetails im TCP-Optionsfeld an den Back-End-Server. Für den Dienst, der den Back-End-Server darstellt, können Sie jede TCP-Option festlegen, aber der bevorzugte Wert ist 28.

Die Citrix ADC Appliance unterstützt auch das Senden des Clientports in der TCP-Option für die Konfiguration des Einfügemodus.

Hinweise:

  • Multiplexing wird für den empfangenen Datenverkehr auf einem virtuellen Server nicht unterstützt, wenn die Client-IP-TCP-Option für das gebundene TCP-Profil aktiviert ist.

  • Für einen virtuellen TCP- oder HTTP-Server wird die TCP-Optionsnummer mit oder ohne aktivierte Funktion im transparenten Modus weitergeleitet.

Einschränkungen

Die TCP-Optionskonfigurationsfunktion wird in TFO-, MultiPath-TCP- und HTTP2-Funktionen nicht unterstützt.

Wie die TCP-Optionskonfiguration in einer Citrix ADC Appliance

Die folgenden Flussdiagramme zeigen, wie Sie die TCP-Option in den Citrix ADC Appliances für Einfüge- und Weiterleitungsvorgänge konfigurieren können.

Vorgang einsetzen:

Insert-Betrieb

Die Interaktion der Komponente ist wie folgt:

  • Ein Client sendet eine Anfrage an Citrix ADC.
  • Im Einfügevorgang fügt die Citrix ADC Appliance die Client-IP-Adresse und den Port in die konfigurierte TCP-Option der folgenden Pakete in den Back-End-Server ein.

    • endgültiges ACK-Paket des Dreiwege-Handshakes
    • erstes Datenpaket

    Hinweis:

    Wenn der eingehende Datenverkehr HTTPS ist, werden die Client-IP-Adresse und der Client-Port in der TCP-Option in der SSL-Client-Hello-Nachricht gesendet, bei der es sich um das erste Datenpaket auf TCP-Ebene handelt.

Vorwärtsbetrieb:

Vorwärtsbetrieb

Die Interaktion der Komponente ist wie folgt:

  • Ein Client sendet eine HTTP/HTTPS-Anforderung an die Citrix ADC Appliance.
  • Für den Weiterleitungsvorgang ist die TCP-Option auf einem virtuellen Lastausgleichsserver oder einem virtuellen Content Switching-Server aktiviert und auch im Dienst aktiviert. Die Appliance erhält die Clientdetails in der TCP-Optionsnummer, die im virtuellen Server angegeben ist.
  • Die Citrix ADC Appliance fügt dann die Client-IP-Adresse und den Port in die konfigurierte TCP-Option (für den Dienst) der folgenden Pakete in den Back-End-Server ein.

    • endgültiges ACK-Paket des Dreiwege-Handshakes
    • erstes Datenpaket

Konfigurieren der TCP-Option für den Insert-Vorgang

Das Konfigurieren der TCP-Option für den Insert-Vorgang umfasst die folgenden Schritte:

  1. Konfigurieren Sie ein TCP-Profil. Aktivieren Sie die Client-IP-TCP-Option (clientIpTcpOption), und geben Sie die TCP-Optionsnummer (clientIpTcpOptionNumber) an. Aktivieren Sie optional sendClientPortInTcpOption, um den Client-Port im TCP-Optionsheader zu senden.

    Hinweis:

    Citrix empfiehlt, die TCP-Optionsnummer im TCP-Profil auf 28 zu konfigurieren.

  2. Binden Sie das TCP-Profil an einen Dienst

So konfigurieren Sie ein TCP-Profil mit CLI:

Geben Sie an der Eingabeaufforderung Folgendes ein:

  • add tcpprofile <name> -clientIpTcpOption (ENABLED | DISABLED) -clientIpTcpOptionNumber <positive_integer> -sendClientPortInTcpOption (ENABLED | DISABLED)
  • show tcpprofile <name>

So binden Sie das TCP-Profil über die CLI an den Dienst:

Geben Sie an der Eingabeaufforderung Folgendes ein:

  • set service <name> –tcpprofileName <name>
  • show service <name>

Beispiel-Konfiguration

add tcpprofile TCP-PROFILE-1 -clientIpTcpOption ENABLED -clientIpTcpOptionNumber 28 -sendClientPortInTcpOption ENABLED
set service SERVICE-1 –tcpprofileName TCP-PROFILE-1
<!--NeedCopy-->

Konfigurieren der TCP-Option für den Vorwärtsbetrieb

Die Konfiguration der TCP-Option für den Vorwärtsbetrieb umfasst die folgenden Schritte:

  1. Konfigurieren Sie ein TCP-Profil. Aktivieren Sie die Client-IP-TCP-Option (clientIpTcpOption), und geben Sie die TCP-Optionsnummer (clientIpTcpOptionNumber) an.
  2. Binden des TCP-Profils an einen virtuellen Load Balancing- oder Content Switching Server
  3. Binden Sie das TCP-Profil an die Dienste.

So konfigurieren Sie ein TCP-Profil mit CLI:

Geben Sie an der Eingabeaufforderung Folgendes ein:

  • add tcpprofile <name> -clientIpTcpOption (ENABLED | DISABLED) -clientIpTcpOptionNumber <positive_integer>
  • show tcpprofile <name>

So binden Sie das TCP-Profil über die CLI an einen virtuellen Lastausgleichs- oder Content Switching-Server:

Geben Sie an der Eingabeaufforderung Folgendes ein:

  • set lb vserver <name> -tcpprofileName <name>
  • show lb vserver <name>

So binden Sie das TCP-Profil über die CLI an den Dienst:

Geben Sie an der Eingabeaufforderung Folgendes ein:

  • set service <name> -tcpprofileName p1
  • show service <name>

Beispiel-Konfiguration

add tcpprofile TCP-PROFILE-2 -clientIpTcpOption ENABLED -clientIpTcpOptionNumber 29
set lb vserver LBVS-2 –tcpprofileName TCP-PROFILE-2
set service SERVICE-2 -tcpprofileName TCP-PROFILE-2
<!--NeedCopy-->

Konfigurieren der TCP-Option mithilfe der Citrix ADC GUI

  1. Navigieren Sie zu System > Profile.
  2. Klicken Sie auf der Registerkarte TCP-Profil auf Hinzufügen.
  3. Konfigurieren Sie auf der Seite TCP-Profil konfigurieren die folgenden Parameter:

    • clientIptcpoption. Ermöglicht der TCP-Option, Client-IP-Adressen zu senden oder zu empfangen.
    • clientiptcpoptionnumber. Legt die TCP-Optionsnummer fest.
    • sendClientPortInTcpOption Sendet den Client-Port in der TCP-Option für die Konfiguration des Einfügemodus.
  4. Klicken Sie auf OK und Schließen.
Client-IP-Adresse in TCP-Option