SIPサーバーのグループを負荷分散する
-
パーシスタンス設定なしのCall-IDハッシュ負荷分散方式
-
最小接続またはラウンドロビン負荷分散方式によるコール ID ベースのパーシスタンス
-
最小接続またはラウンドロビン負荷分散方式によるルールベースのパーシステンス
サーバー開始トラフィック
ポリシーと式のサポート
TCP または UDP 経由の SIP シグナリングトラフィックのロードバランシングの設定
-
SIP_UDP — SIP サーバーが UDP 経由で SIP メッセージを送信する場合に使用されます。
-
SIP_TCP — SIP サーバーが TCP 経由で SIP メッセージを送信する場合に使用されます。
-
SIP_SSL — SSL または TLS を使用して TCP 経由の SIP シグナリングトラフィックを保護するために使用されます。NetScalerは以下のモードをサポートしています。
-
クライアント、ADC、SIP サーバー間のエンドツーエンド TLS 接続。
-
クライアントとADC間のTLS接続、およびADCとSIPサーバー間のTCP接続。
-
クライアントとADC間のTCP接続、およびADCとSIPサーバー間のTLS接続。
-
| エンティティタイプ | 名前 | IPアドレス | ポート | サービスタイプ/プロトコル |
|---|---|---|---|---|
| 仮想サーバー | Vserver-LB-1 | 10.102.29.65 | 80 | SIP_UDP /SIP_TCP /SIP_SSL |
| Services | Service-SIP-1 | 192.168.1.6 | 80 | SIP_UDP /SIP_TCP /SIP_SSL |
| Service-SIP-2 | 192.168.1.5 | 80 | SIP_UDP /SIP_TCP /SIP_SSL | |
| モニター | デフォルト | なし | 80 | SIP_UDP /SIP_TCP /SIP_SSL |
-
サービスを構成し、負荷分散するSIPトラフィックの種類ごとに仮想サーバーを構成します。
-
SIP_UDP — UDP 経由で SIP トラフィックの負荷分散を行う場合。
-
SIP_TCP — TCP 経由で SIP トラフィックの負荷分散を行う場合。
-
SIP_SSL — TCP 経由で SIP トラフィックのロードバランシングとセキュリティ保護を行う場合。
注:SIP_SSL を使用する場合は、必ず SSL 証明書とキーのペアを作成してください。詳細については、「証明書キーペアの追加」を参照してください。 -
-
サービスを仮想サーバーにバインドします。
-
デフォルト (tcp-default) 以外のモニターでサービスの状態を監視する場合は、カスタムモニターを作成してサービスにバインドします。NetScalerには、 SIPサービスを監視するためのSIP-UDPとSIP-TCPの2種類のカスタムモニタータイプが用意されています。
-
SIP_SSL 仮想サーバーを使用する場合は、SSL 証明書とキーのペアを仮想サーバーにバインドします。
-
展開環境内のSIPサーバーのゲートウェイとしてNetScalerを使用している場合は、RNATを構成します。
-
SIP サーバから送信される SIP メッセージに RPORT を追加する場合は、SIP パラメータを設定します。
コマンドラインインターフェイスを使用して SIP トラフィックの基本的な負荷分散設定を構成するには
add service <name> <serverName> (SIP_UDP | SIP_TCP | SIP_SSL) <port>
add service Service-SIP-UDP-1 192.0.2.5 SIP_UDP 80
add lb vserver <name> <serverName> (SIP_UDP | SIP_TCP | SIP_SSL) <port>
add lb vserver Vserver-LB-1 SIP_UDP 10.102.29.60 80
bind lb vserver <name> <serverName>
bind lb vserver Vserver-LB-1 Service-SIP-UDP-1
add lb monitor <monitorName> <monitorType> [<interval>]
bind lb monitor <monitorName> <ServiceName>
add lb monitor mon1 sip-UDP -sipMethod REGISTER -sipuRI sip:mon@test.com -sipregURI sip:mon@test.com -respcode 200
bind monitor mon1 Service-SIP-UDP-1
bind ssl vserver <vServerName> -certkeyName <certificate-KeyPairName> -CA –skipCAName
bind ssl vserver Vserver-LB-1 -certkeyName CertKey-SSL-1
add rnat <name> (<network> | (<aclname> [-redirectPort <port>]))
bind rnat <name> <natIP>@ …
show rnat
add rnat RNAT-1 192.168.1.0 255.255.255.0
bind rnat RNAT-1 -natip 10.102.29.50
add ssl certKey <certkeyName> -cert <string> [-key <string>]
bind ssl service <serviceName> -certkeyName <string>
add ssl certKey c1 -cert cert.epm -key key.ky
bind ssl service nsrnatsip-127.0.0.1-5061 -certkeyName c1
set lb sipParameters -rnatSrcPort <rnatSrcPort> -rnatDstPort<rnatDstPort> -retryDur <integer> -addRportVip <addRportVip> - sip503RateThreshold <sip503_rate_threshold_value>
UDP 経由の SIP トラフィックのロードバランシングの設定例
add service service-UDP-1 10.102.29.5 SIP_UDP 80
Done
add lb vserver vserver-LB-1 SIP_UDP 10.102.29.60 80
Done
bind lb vserver vserver-LB-1 service-UDP-1
Done
add lb mon mon1 sip-udp -sipMethod REGISTER -sipuRI sip:mon@test.com -sipregURI sip:mon@test.com -respcode 200
Done
bind mon mon1 service-UDP-1
Done
add rnat RNAT-1 192.168.1.0 255.255.255.0
Done
set lb sipParameters -rnatSrcPort 5060 -rnatDstPort 5060 -retryDur 1000 -addRportVip ENABLED -sip503RateThreshold 1000
Done
TCP 経由の SIP トラフィックのロードバランシングの設定例
add service service-TCP-1 10.102.29.5 SIP_TCP 80
Done
add lb vserver vserver-LB-1 SIP_TCP 10.102.29.60 80
Done
bind lb vserver vserver-LB-1 service-TCP-1
Done
add lb mon mon1 sip-tcp -sipMethod REGISTER -sipuRI sip:mon@test.com -sipregURI sip:mon@test.com -respcode 200
Done
bind mon mon1 service-TCP-1
Done
add rnat RNAT-1 192.168.1.0 255.255.255.0
Done
set lb sipParameters -rnatSrcPort 5060 -rnatDstPort 5060 -retryDur 1000 -addRportVip ENABLED -sip503RateThreshold 1000
Done
TCP を介した SIP トラフィックのロードバランシングおよびセキュリティ保護の設定例
add service service-SIP-SSL-1 10.102.29.5 SIP_SSL 80
Done
add lb vserver vserver-LB-1 SIP_SSL 10.102.29.60 80
Done
bind lb vserver vserver-LB-1 service-SIP-SSL
Done
add lb mon mon1 sip-tCP -sipMethod REGISTER -sipuRI sip:mon@test.com -sipregURI sip:mon@test.com -respcode 200
Done
bind mon mon1 service-SIP-SSL
Done
bind ssl vserver Vserver-LB-1 -certkeyName CertKey-SSL-1
Done
add rnat RNAT-1 192.168.1.0 255.255.255.0
Done
set lb sipParameters -rnatSrcPort 5060 -rnatDstPort 5060 -retryDur 1000 -addRportVip ENABLED -sip503RateThreshold 1000
Done
GUI を使用して SIP トラフィックの基本的なロードバランシング設定を構成するには
-
モニターをサービスにバインドし、サービスを仮想サーバーにバインドします。
-
SIP_SSL 仮想サーバーを作成した場合は、SSL 証明書キーペアを仮想サーバーにバインドします。証明書セクションをクリックし、証明書キーペアを仮想サーバーにバインドします。
-
ネットワークトポロジの必要に応じて RNAT を設定します。RNAT を設定するには:
-
RNAT の設定ダイアログボックスで、次のいずれかを実行します。
-
-
ネットワーク
-
ネットマスク
-
-
-
ACL 名
-
リダイレクトポート
-
-
-
SNIP アドレスを NAT IP アドレスとして設定するには、ステップ 7 に進みます。
-
[Create] をクリックしてから、[Close] をクリックします。
**カスタムの証明書とキーのペアを使用する場合は、カスタム証明書とキーのペアをnsrnatsip-127.0.0.1-5061という名前のNetScaler内部サービスにバインドします。**ペアをバインドするには:-
Select nsrnatsip-127.0.0.1-5061 and click Edit.
-
Certificates セクションをクリックし、証明書キーペアを内部サービスにバインドします。
SIP 表現とポリシーの例:クライアント要求での圧縮の有効化
add responder action sipaction1 respondwith q{"SIP/2.0 400 Bad Requestrnrn"}
Done
add responder policy sippol1
add responder policy sippol1 "SIP.REQ.METHOD.EQ("NEGOTIATE")&&SIP.REQ.HEADER("Compression").EXISTS" sipaction1