ADC

BGPの設定

NetScalerアプライアンスはBGP(RFC 4271)をサポートしています。Citrix ADCでのBGPの機能は次のとおりです。

  • Citrix ADCはBGPピアにルートをアドバタイズします。
  • Citrix ADCは、基盤となる仮想サーバーの正常性によって決定される仮想IPアドレス(VIP)にホストルートを挿入します。
  • Citrix ADCは、HA構成でのフェイルオーバー後、セカンダリノードでBGPを実行するための構成ファイルを生成します。
  • このプロトコルは IPv6 ルート交換をサポートします。
  • As-Override Support in Border Gateway Protocolの As-Override サポート

BGP を有効にしたら、BGP ルートのアドバタイズメントを設定する必要があります。トラブルシューティングのために、BGP 伝播を制限できます。BGP 設定を表示して、設定を確認できます。

BGP の有効化と無効化

BGP を有効または無効にするには、CLI または GUI を使用する必要があります。BGPが有効になると、Citrix ADCアプライアンスはBGPプロセスを開始します。BGP が無効になっている場合、アプライアンスは BGP プロセスを停止します。

CLI を使用して BGP ルーティングを有効または無効にするには、次の手順を実行します。

コマンドプロンプトで、次のコマンドのいずれかを入力します。

  • ns 機能 BGP を有効にする

  • ns 機能 BGP を無効にする

GUI を使用して BGP ルーティングを有効または無効にするには

  1. [ システム] > [設定]に移動し、[ モードと機能 ] グループで [ 詳細機能の変更] をクリックします。
  2. [BGP ルーティング] オプションをオンまたはオフにします。

IPv4 ルートの宣伝

Citrix ADCアプライアンスは、ホストルートをVIPにアドバタイズし、ルートをダウンストリームネットワークにアドバタイズするように構成できます。

VTYSH コマンドラインを使用して IPv4 ルートをアドバタイズするように BGP を設定するには、次の手順を実行します。

コマンドプロンプトで、次のコマンドを次の順序で入力します。

コマンド 指定
VTYSH VTYSH コマンドプロンプトを表示します。
configure terminal グローバル構成モードを開始します。
router BGP < ASnumber> BGP 自律システム。< ASnumber>は必須パラメータです。指定可能な値:1 から 4,294,967,295 です。
ネイバーリモート < IPv4 address> AS < as-number> IPv4 BGP ネイバーテーブルを、指定した自律システム内のネイバーのリンクローカル IPv4 アドレスで更新します。
アドレスファミリ ipv4 アドレスファミリ構成モードを開始します。
< IPv4 address>近隣アクティブ化 リンクローカルアドレスを使用して、ピアとローカルノード間で IPv4 ルータファミリのプレフィクスを交換します。
redistribute kernel カーネルルートを再配布する。
redistribute static スタティックルートを再配布します。

例:


>VTYSH
NS# configure terminal
NS(config)# router BGP 5
NS(config-router)# Neighbor 10.102.29.170 remote-as 100
NS(config-router)# Address-family ipv4
NS(config-router-af)# Neighbor 10.102.29.170 activate
NS(config-router)# redistribute kernel
NS(config-router)# redistribute static
<!--NeedCopy-->

IPv6 BGP ルートの宣伝

Border Gateway Protocol(BGP)を使用すると、アップストリームルーターは、2つのスタンドアロンのCitrix ADCアプライアンスでホストされている2つの同一の仮想サーバー間でトラフィックの負荷を分散できます。ルートアドバタイズにより、アップストリームルーターはCitrix ADC 背後に位置するネットワークエンティティを追跡できます。

IPv6 BGP の前提条件

IPv6 BGP の設定を開始する前に、次の操作を行います。

  • IPv6 BGP プロトコルを理解していることを確認します。
  • IPv6 機能を有効にします。

構成の手順

VTYSH コマンドラインを使用して IPv6 ルートをアドバタイズするように BGP を設定するには、次の手順を実行します。

コマンドプロンプトで、次のコマンドを次の順序で入力します。

コマンド 指定
VTYSH VTYSH コマンドプロンプトを表示します。
configure terminal グローバル構成モードを開始します。
router BGP < ASnumber> BGP 自律システム。< ASnumber>は必須パラメータです。指定可能な値:1 から 4,294,967,295 です。
ネイバーリモート < IPv6 address> AS < as-number> IPv6 BGP ネイバーテーブルを、指定した自律システム内のネイバーのリンクローカル IPv6 アドレスで更新します。
アドレスファミリ ipv6 アドレスファミリ構成モードを開始します。
近隣アクティブ化 < IPv6 address> リンクローカルアドレスを使用して、ピアとローカルノード間で IPv6 ルーターファミリのプレフィクスを交換します。
redistribute kernel カーネルルートを再配布する。
redistribute static スタティックルートを再配布します。

例:


>VTYSH
NS# configure terminal
NS(config)# router BGP 5
NS(config-router)# Neighbor a1bc::102 remote-as 100
NS(config-router)# Address-family ipv6
NS(config-router-af)# Neighbor a1bc::102 activate
NS(config-router)# redistribute kernel
NS(config-router)# redistribute static
<!--NeedCopy-->

BGP 設定の確認

VTYSH を使用して BGP 設定を表示できます。

VTYSH コマンドラインを使用して BGP 設定を表示するには

コマンドプロンプトで入力します。

VTYSH
You are now in the VTYSH command prompt. An output similar to the following appears:
NS170#
At the VTYSH command prompt, type:
NS170# sh ip BGP
NS170# sh BGP
NS170# sh ip BGP neighbors
NS170# sh ip BGP summary
NS170# sh ip BGP route-map <map-tag>
<!--NeedCopy-->

As-Override Support in Border Gateway Protocolの As-Override サポート

BGP ループ防止機能の一部として、自律システム(AS)パスでルータの自律システム番号(ASN)を含む BGP パケットをルータが受信すると、ルータはそのパケットをドロップします。パケットはルータから発信され、発信元の場所に到達したと想定されます。

企業に同じ ASN を持つサイトが複数ある場合、BGP ループ防止により、同じ ASN を持つサイトは別の ASN によってリンクされません。ルーティングアップデート(BGP パケット)は、別のサイトが受信するとドロップされます。

この問題を解決するために、NetScaler ZeboS BGPルーティングモジュールにBGP AS-Override機能が追加されました。

ピアデバイスでAS-Overrideが有効になっている場合、Citrix ADCアプライアンスがピアに転送するBGPパケットを受信し、パケットのASNがピアのASNと一致すると、アプライアンスはBGPパケットのASNを独自のASN番号に置き換えてからパケットを転送します。

VTYSH コマンドラインを使用して、特定のネイバーまたはネイバーのグループ(ピアグループ)に対して AS オーバーライドを有効にできます。

VTYSH コマンドラインを使用して IPv4 ネイバーの BGP AS オーバーライドを設定するには、次の手順を実行します。

コマンド 指定
configure terminal グローバル構成モードを開始します。
router BGP < ASnumber> BGP 自律システム。< ASnumber>は必須パラメータです。
ネイバーリモート < IPv4 address> AS < as-number> IPv4 BGP ネイバーテーブルを、指定した自律システム内のネイバーの IPv4 アドレスで更新します。
ネイバーとしてオーバーライド 指定したネイバーの BGP as-override を有効にします。
    > VTYSH NS# configure terminal
    NS(config)# router BGP 200
    NS(config-router)# Neighbor 192.0.2.100 remote-as 100
    NS(config-router)# Neighbor 10.102.29.100 as-override
<!--NeedCopy-->

VTYSH コマンドラインを使用して IPv4 BGP ピアグループの BGP AS オーバーライドを設定するには、次の手順を実行します。

コマンド 指定
configure terminal グローバル構成モードを開始します。
router BGP < ASnumber> BGP 自律システム。< ASnumber>は必須パラメータです。
**ネイバーピアグループ** BGP ピアグループを作成します。
**ネイバー・ピア・グループ** ネイバーを指定されたピアグループに関連付けます。
ネイバーリモート AS < as-number> IPv4 BGP ネイバーテーブルを、指定した自律システム内のネイバーの IPv4 アドレスで更新します。
ネイバーとしてオーバーライド 指定したピアグループに関連付けられているすべてのネイバーに対して、BGP as-override を有効にします。
    > VTYSH NS# configure terminal
    NS(config)# router BGP 200
    NS(config-router)# neighbor external-peers-1 peer-group
    NS(config-router)# neighbor 192.0.2.101 peer-group external-peers-1
    NS(config-router)# neighbor 192.0.2.102 peer-group external-peers-1
    NS(config-router)# neighbor 192.0.2.103 peer-group external-peers-1
    NS(config-router)# Neighbor external-peers-1 remote-as 100
    NS(config-router)# Neighbor external-peers-1 as-override
<!--NeedCopy-->

VTYSH コマンドラインを使用して IPv6 ネイバーの BGP AS オーバーライドを設定するには、次の手順を実行します。

コマンド 指定
configure terminal グローバル構成モードを開始します。
router BGP < ASnumber> BGP 自律システム。< ASnumber>は必須パラメータです。
ネイバーリモート < IPv6 address> AS < as-number> IPv4 BGP ネイバーテーブルを、指定した自律システム内のネイバーの IPv4 アドレスで更新します。
ネイバーとしてオーバーライド 指定したネイバーの BGP as-override を有効にします。
アドレスファミリ ipv6 アドレスファミリ構成モードを開始します。
近隣アクティブ化 < IPv6 address> リンクローカルアドレスを使用して、指定されたネイバーとCitrix ADCとの間で、IPv6ルーターファミリのプレフィックスを交換します。
ネイバーとしてオーバーライド 指定したネイバーの BGP as-override を有効にします。
    > VTYSH NS# configure terminal
    NS(config)# router BGP 200
    NS(config-router)# Neighbor a1bc::102 remote-as 100
    NS(config-router)# Neighbor a1bc::102 as-override
    NS(config-router)# Address-family ipv6
    NS(config-router-af)# Neighbor a1bc::102 activate
    NS(config-router)# Neighbor a1bc::102 as-override
<!--NeedCopy-->

VTYSH コマンドラインを使用して IPv6 ピアグループの BGP AS オーバーライドを設定するには、次の手順を実行します。

コマンド 指定
configure terminal グローバル構成モードを開始します。
router BGP < ASnumber> BGP 自律システム。< ASnumber>は必須パラメータです。
**ネイバーピアグループ** BGP ピアグループを作成します。
**ネイバーピアグループ** ネイバーを指定されたピアグループに関連付けます。
ネイバーリモート AS < as-number> IPv4 BGP ネイバーテーブルを、指定した自律システム内のネイバーの IPv4 アドレスで更新します。
ネイバーとしてオーバーライド 指定したピアグループに関連付けられているすべてのネイバーに対して、BGP as-override を有効にします。
アドレスファミリ ipv6 アドレスファミリ構成モードを開始します。
近隣アクティブ化 リンクローカルアドレスを使用して、指定されたピアグループのネイバーとCitrix ADC 間でIPv6ルーターファミリのプレフィックスを交換します。
ネイバーとしてオーバーライド 指定したピアグループに関連付けられているすべてのネイバーに対して、BGP as-override を有効にします。
    > VTYSH NS# configure terminal
    NS(config)# router BGP 200
    NS(config-router)# neighbor external-peers-2 peer-group
    NS(config-router)# neighbor 2001::1 peer-group external-peers-2
    NS(config-router)# neighbor 2001::2 peer-group external-peers-2
    NS(config-router)# Neighbor external-peers-2 remote-as 100
    NS(config-router)# Neighbor external-peers-2 as-override
    NS(config-router)# Address-family ipv6
    NS(config-router-af)# Neighbor external-peers-2 activate
    NS(config-router)# Neighbor external-peers-2 as-override
<!--NeedCopy-->

グレースフルリスタート

ルーティングプロトコルが設定されている INC 以外の High Availability(HA; 高可用性)設定では、フェールオーバー後にルーティングプロトコルがコンバージされ、新しいプライマリノードと隣接ネイバールータ間のルートが学習されます。ルート学習が完了するまでに時間がかかります。この間、パケットの転送が遅れ、ネットワークパフォーマンスが低下し、パケットがドロップされる可能性があります。

グレースフルリスタートにより、フェールオーバー中の HA セットアップによって、古いプライマリノードの学習済みルートがルーティングデータベースから削除されないように隣接ルータに指示できます。新しいプライマリノードと隣接ルータは、古いプライマリノードのルーティング情報を使用して、ネットワークパフォーマンスを低下させることなく、直ちにパケットの転送を開始します。

注:

INC モードの高可用性セットアップでは、グレースフルリスタートはサポートされていません。

BGP のグレースフルリスタートの設定

VTYSH コマンドラインを使用して BGP のグレースフルリスタートを設定するには、コマンドプロンプトで次のコマンドを次の順序で入力します。

コマンド コマンドの説明
VTYSH VTYSH VTYSH コマンドプロンプトに入ります。
configure terminal NS# configure terminal グローバル構成モードを開始します。
router-id NS(config)# router-id 1.1.1.1 Citrix ADCアプライアンスのルーター識別子。この ID は、すべてのダイナミックルーティングプロトコルに対して設定されます。グレースフルリスタートを正しく機能させるには、高可用性セットアップの他のノードに同じ ID を指定する必要があります。
router bgp NS(config)# router bgp 5 BGP 構成モードを開始します。
bgp graceful-restart NS(config)# bgp graceful-restart BGP ルーティングプロセスでグレースフルリスタートを有効にします。
bgp graceful-restart restart-time <1-1800> NS(config-router)# bgp graceful-restart restart-time 170 フェールオーバー後、ヘルパールータが新しいプライマリノードからの TCP 接続を待機する猶予期間を秒単位で指定します。この時間の間、ヘルパールーターはルートを保持します。
bgp graceful-restart stalepath-time <1-1800> NS(config-router)# bgp graceful-restart stalepath-time 180 ヘルパーモードのCitrix ADCアプライアンスがネイバールーターを再起動するための古いルートを保持する時間を秒単位で指定します。デフォルト値は 360 秒です。
neighbor remote-as NS(config-router)# neighbor 192.0.2.30 remote-as 2 指定されたネイバールータデバイスとの BGP ピアリングを確立します。
neighbor capability graceful-restart NS(config-router)# neighbor 192.0.2.30 capability graceful-restart 指定したネイバーとのグレースフルリスタートを有効にします。
redistribute kernel NS(config-router)# redistribute kernel カーネルルートを再配布します。

IPv6 BGP のグレースフルリスタートの設定

VTYSH コマンドラインを使用して IPv6 BGP のグレースフルリスタートを設定するには、コマンドプロンプトで次のコマンドを次の順序で入力します。

コマンド コマンドの説明
VTYSH VTYSH VTYSH コマンドプロンプトに入ります。
configure terminal NS# configure terminal グローバル構成モードを開始します。
router-id NS(config)# router-id 1.1.1.1 Citrix ADCアプライアンスのルーター識別子を設定します。この ID は、すべてのダイナミックルーティングプロトコルに対して設定されます。グレースフルリスタートを正しく機能させるには、高可用性セットアップの他のノードに同じ ID を指定する必要があります。
router bgp NS(config)# router bgp 5 BGP プロトコルの構成モードを開始します。
bgp graceful-restart NS(config)# bgp graceful-restart BGP ルーティングプロセスでグレースフルリスタートを有効にします。
bgp graceful-restart restart-time <1-1800> NS(config-router)# bgp graceful-restart restart-time 170 フェールオーバー後、ヘルパールータが新しいプライマリノードからの TCP 接続を待機する猶予期間を秒単位で指定します。この時間の間、ヘルパールーターはルートを保持します。デフォルト値は 360 秒です。
bgp graceful-restart stalepath-time <1-1800> NS(config-router)# bgp graceful-restart stalepath-time 180 ヘルパーモードのCitrix ADCアプライアンスがネイバールーターを再起動するための古いルートを保持する時間を秒単位で指定します。デフォルト値は 360 秒です。
neighbor remote-as NS(config-router)# neighbor 2001:db8::10 remote-as 2 指定されたネイバールータデバイスとの BGP ピアリングを確立します。
address-family ipv6 NS(config-router)#address-family ipv6 アドレスファミリ構成モードを開始します。
neighbor activate NS(config-router-af)#neighbor 2001:db8::10 activate 指定したネイバールータデバイスとのアドレスファミリルートの交換を有効にします。
neighbor capability graceful-restart NS(config-router-af)#neighbor 2001:db8::10 capability graceful-restart Enables graceful restart with the specified neighbor router device.
redistribute kernel NS(config-router-af)#redistribute kernel カーネルルートを再配布します。
exit-address-family NS(config-router-af)#exit-address-family アドレスファミリ構成モードを終了します。

IPv4 BGP 用の MD5 認証の設定

Citrix ADCアプライアンスは、Border Gateway Protocol(BGP)のMD5認証をサポートしています。認証を有効にすると、Citrix ADCアプライアンスとそのピアデバイス間で交換されるBGPに属するTCPセグメントは、認証が成功した場合にのみ検証され、受け入れられます。認証を成功させるには、両方のピアに同じ MD5 パスワードを設定する必要があります。認証に失敗すると、BGP ネイバー関係は確立されません。Citrix ADCアプライアンスでのBGPに対するMD5認証のサポートは、RFC 2385に準拠しています。

はじめに

BGP MD5 認証の設定を開始する前に、次の点を考慮してください。

  • RFC 2385 で説明されている BGP MD5 認証のさまざまなコンポーネントを理解していることを確認します。
  • BGP MD5 認証は、NetScaler 管理パーティションではサポートされていません。
  • BGP MD5 認証は IPv6 BGP 構成ではサポートされていません。
  • BGP MD5 認証は、NetScaler クラスター構成と高可用性構成でサポートされています。
  • FreeBSD には次のような問題があるため、レイヤ 2 の高可用性構成では、キープライブとホールドタイムの値を低く設定し(5 と 15 など)、BGP セッションのグレースフルリスタートを構成することをお勧めします。そうしないと、MD5 認証を有効にすると、フェールオーバー後に BGP がネイバーとの接続を再確立するのに時間がかかることがあります。

構成の手順

VTYSH コマンドラインを使用して IPv4 BGP の MD5 認証を設定するには、コマンドプロンプトで次のコマンドを次の順序で入力します。

コマンド 指定
vtysh VTYSH コマンドプロンプトを表示します。
configure terminal グローバル構成モードを開始します。
**router bgp ** BGP プロトコルの構成モードを開始します。は BGP 自律システム番号で、は必須パラメータです。
**neighbor remote-as < AS-number >** IPv4 BGP テーブルを、指定した自律システム内のネイバーの IPv4 アドレスで更新します。
neighbor < neighbour IPv4 address > password < password in double quotes> 指定された MD5 パスワードを使用して、指定されたネイバーの MD5 認証を設定します。MD5認証を正常に実行するには、Citrix ADCアプライアンスとネイバーアプライアンスで同じMD5パスワードを構成する必要があります。
> vtysh

ns# configure terminal

ns(config)#router bgp 5

ns(config-router)#neighbor 20.20.20.138 remote-as 1

ns(config-router)#neighbor 20.20.20.138 password “secret”

ns(config-router)#redistribute kernel

ns(config-router)#exit

<!--NeedCopy-->

4 バイト BGP ASN を asplain および asdot 形式で設定する

Citrix ADCアプライアンスは、RFC 5396で定義されているように、4バイトのBGP自律システム番号(ASN)をasplainまたはasdot形式で構成および表示することをサポートしています。

  • 説明する。2 バイトと 4 バイトの ASN の両方が 10 進数値で表される 10 進数値表記。たとえば、65527 は 2 バイト ASN で、234567 は 4 バイト ASN です。

  • asdot 自律システムのドット表記。2 バイトの ASN は 10 進数で表され (asplain と同じ)、4 バイト ASN はドット表記で表されます。たとえば、65527は2バイトASNで、3.37959は4バイトASNです(3.37959は234567の10進数のドット形式です)。

asplain および asdot 形式の BGP ASN 設定の例

デフォルトでは、Citrix ADCアプライアンスはBGP ASNをasplain形式で表示しますが、asdot形式で表示するように構成できます。ローカルおよびリモートの BGP ASN は、asplain または asdot 形式で設定できます。

次に、asplain および asdot 形式の BGP ASN 設定の例をいくつか示します。

  • BGP AS 番号を asplain 形式で表示します。デフォルトでは、Citrix ADCアプライアンスはBGP AS番号をプレーン形式で表示します。

     ns#conf t
     ns(config)# router bgp 196908
     ns(config-router)# end
     ns#
     ns# sh run router bgp
     !
     router bgp 196908
     !
     <!--NeedCopy-->
    
  • BGP AS 番号を asdot 形式で表示します。bgp asnotation-dotコマンドを実行して、BGP AS 番号を asdot 形式で表示します。

     ns#conf t
     ns(config)#router bgp 196908
     ns(config-router)#bgp asnotation-dot
     ns(config-router)#end
     ns#
     ns#sh run router bgp
     !
     router bgp 3.300
     bgp asnotation-dot
     !
     <!--NeedCopy-->
    
  • BGP AS 番号を asdot 形式で設定して表示します。bgp asnotation-dotコマンドを実行して、BGP AS 番号を asdot 形式で表示します。

     ns# conf t
     ns(config)# router bgp 3.300
     ns(config-router)# bgp asnotation-dot
     ns#
     ns# sh run router bgp
     !
     router bgp 3.300
     bgp asnotation-dot
     !
     <!--NeedCopy-->
    
  • BGP AS 番号を asdot 形式から asplain 形式に戻して表示します。bgp no asnotation-dot コマンドを実行して、BGP AS 番号を asplain 形式に戻して表示します。

     ns#conf t
     ns(config)#router bgp 3.300
     ns(config-router)#no bgp asnotation-dot
     ns(config-router)#end
     ns#
    
     ns#sh run router bgp
     !
     router bgp 196908
     !
     <!--NeedCopy-->
    
  • リモート as-number を asdot 形式で設定して表示します。bgp asnotation-dotコマンドを実行します。サンプル設定では、リモート as-number 80000 が asdot 形式 1.14464 で設定されています。

     ns# conf t
     ns(config)# router bgp 3.300
     ns(config-router)# bgp asnotation-dot
     ns(config-router)# neighbor 192.168.1.2 remote-as 1.14464
     ns(config-router)#end
     ns#
     ns#
     ns#sh run router bgp
     !
     router bgp 3.300
     bgp asnotation-dot
     neighbor 192.168.1.2 remote-as 1.14464
     !
     ns#
     <!--NeedCopy-->
    
  • BGP ローカルおよびリモート AS 番号を asdot 形式から asplain 形式に戻して表示します。bgp no asnotation-dot コマンドを実行します。

     ns#conf t
     ns(config)#router bgp 3.300
     ns(config-router)#no bgp asnotation-dot
     ns(config-router)#end
     ns#
    
     ns#sh run router bgp
     !
     router bgp 196908
     neighbor 192.168.1.2 remote-as 80000
     !
     ns#
     <!--NeedCopy-->
    

注:

個々の BGP ネイバー用に設定する代わりに、同じ asplain または asdot 設定を BGP ピアグループにも使用できます。

BGPの設定