Unterstützung für dynamisches Routing in NetScaler CPX

Last published : Oct 02, 2026
NetScaler CPX unterstützt das dynamische Routing-Protokoll BGP. Das Hauptziel des dynamischen Routing-Protokolls ist es, die IP-Adresse des virtuellen Servers basierend auf dem Zustand der an den virtuellen Server gebundenen Dienste zu bewerben. Es hilft einem Upstream-Router, den besten unter mehreren Pfaden zu einem topologisch verteilten virtuellen Server auszuwählen.
Informationen zum nicht standardmäßigen Kennwort in NetScaler CPX finden Sie im Abschnitt Support for using a non-default password in NetScaler CPX im Dokument Konfigurieren von NetScaler CPX.
In einem Einzelhost-Netzwerk werden der Client, die Server und die NetScaler CPX-Instanz als Container auf demselben Docker-Host bereitgestellt. Alle Container sind über die docker0-Bridge verbunden. In dieser Umgebung fungiert die NetScaler CPX-Instanz als Proxy für die Anwendungen, die als Container auf demselben Docker-Host bereitgestellt werden. Informationen zur Bereitstellung im Host-Netzwerkmodus von NetScaler CPX finden Sie unter Host-Netzwerkmodus.
Die folgende Abbildung veranschaulicht die Einzelhost-Topologie.
Einzelhost-Topologie
In dieser Topologie werden virtuelle Server konfiguriert und (basierend auf dem Zustand der Dienste) über BGP an das Upstream-Netzwerk oder den Router beworben.
Führen Sie die folgenden Schritte aus, um BGP auf NetScaler CPX in einem einzelnen Docker-Host mit dem Bridge-Netzwerkmodus zu konfigurieren.

BGP-basierte Route Health Injection mit REST API auf NetScaler CPX konfigurieren

  1. Erstellen Sie einen Container aus dem NetScaler CPX-Image mit dem folgenden Befehl:
    docker run -dt --privileged=true -p 22 -p 80 -p 161 -e EULA=yes --ulimit core=-1 cpx: <tag>
    Zum Beispiel:
    docker run -dt --privileged=true -p 22 -p 80 -p 161 -e EULA=yes --ulimit core=-1 cpx:12.1-50.16
  2. Melden Sie sich mit dem folgenden Befehl beim Container an:
    docker exec -it <container id> bash
  3. Aktivieren Sie die BGP-Funktion mit dem folgenden Befehl:
    cli_script.sh "enable ns feature bgp"
  4. Rufen Sie die NSIP mit dem Befehl show ns ip ab:
    cli_script.sh "show ns ip"
  5. Fügen Sie den virtuellen Server mit dem folgenden Befehl hinzu:
    cli_script.sh "add lb  vserver <vserver_name> http <VIP> <PORT>"
  6. Dienste hinzufügen und an den virtuellen Server binden.
  7. Aktivieren Sie hostroute für die VIP mit dem folgenden Befehl:
    cli_script.sh "set ns ip <VIP> -hostroute enabled”
    Melden Sie sich vom Container ab und senden Sie BGP NITRO-Befehle vom Host an die NSIP auf Port 9080.
  8. Konfigurieren Sie den BGP-Router:
    Wenn Sie beispielsweise Folgendes konfigurieren möchten:
    router bgp 100
    Neighbour 172.17.0.2 remote-as 101
    Redistribute kernel
    Geben Sie den Befehl wie folgt an:
    curl -u username:password http://<NSIP>:9080/nitro/v1/config/ -X POST --data 'object={"routerDynamicRouting": {"bgpRouter" : {"localAS":100, "neighbor": [{ "address": "172.17.0.2", "remoteAS": 101}], "afParams":{"addressFamily": "ipv4", "redistribute": {"protocol": "kernel"}}}}}'
  9. Installieren Sie die gelernten BGP-Routen mit dem folgenden NITRO-Befehl in die PE:
    curl -u username:password http://<NSIP>:9080/nitro/v1/config/ --data 'object={"params":{"action":"apply"},"routerDynamicRouting": {"commandstring" : "ns route-install bgp"}}'
  10. Überprüfen Sie den BGP-Nachbarschaftsstatus mit dem folgenden NITRO-Befehl:
    curl -u username:password http://<NSIP>:9080/nitro/v1/config/routerDynamicRouting/bgpRouter
    Beispielausgabe:
    root@ubuntu:~# curl -u username:password http://172.17.0.3:9080/nitro/v1/config/routerDynamicRouting/bgpRouter
    { "errorcode": 0, "message": "Done", "severity": "NONE", "routerDynamicRouting":{"bgpRouter":[{ "localAS": 100, "routerId": "172.17.0.3", "afParams": [ { "addressFamily": "ipv4" }, { "addressFamily": "ipv6" } ], "neighbor": [ { "address": "172.17.0.2", "remoteAS": 101, "ASOriginationInterval": 15, "advertisementInterval": 30, "holdTimer": 90, "keepaliveTimer": 30, "state": "Connect", "singlehopBfd": false, "multihopBfd": false, "afParams": [ { "addressFamily": "ipv4", "activate": true }, { "addressFamily": "ipv6", "activate": false } ]
  11. Überprüfen Sie mit dem folgenden Befehl, ob die über BGP gelernten Routen in der Paket-Engine installiert sind:
    cli_script.sh “show route”
  12. Speichern Sie die Konfiguration mit dem folgenden Befehl:
    cli_script.sh “save config”
Die dynamische Routing-Konfiguration wird in der /nsconfig/ZebOS.conf-Datei gespeichert.