はじめに
このドキュメントでは、Evolved Packet Data Gateway(ePDG)の再選択手順について説明します。
背景説明
現在のePDG選択手順
- 3GPP Release11 ePDG選択手順
- User Equipment(UE;ユーザ機器)は、Home Public Land Mobile Network(HPLMN)またはVisiting Public Land Mobile Network(VPLMN)に基づいてePDGの完全修飾ドメイン名(FQDN)を作成します
- UEがePDG FQDNのA/AAAA要求をDNSに送信
- DNSがePDG IPアドレスで応答する
- UEがePDG IPアドレスにInternet Key Exchange version 2(IKEv2)要求を送信
- DNSサーバは、複数のePDG IPアドレス間でラウンドロビン方式のロードバランシングを実行できる
- 選択したePDGが到達不能になると、UEは別のePDGを試行できます
- 一部のDNSサーバは、ePDGの活動性を検出できます
IKEv2に基づくePDGの再選択:リダイレクション
この仕組みを説明しましょう
-
IKEリダイレクションベースのePDG再選択(RFC 5685)
-
接続またはハンドオーバー時に、UEは使用可能なDNSプロシージャを持つePDG1を選択し、REDIRECT_SUPPORTED指示を持つIKE_INITをePDG1に送信します
-
ePDG1は、AAAから受信したPGW IDを使用して、Packet Data Network Gateway(PGW)にコロケートされているePDG2を選択します
-
ePDG1はUEをePDG2にリダイレクトし、UEはePDG2に接続します。
-
UEはPDG2のIPアドレスをキャッシュし、後続の要求に使用できます
ePDGの再選択ソリューション
-
DNSサーバは、すべてのゾーンのすべてのePDGのアドレスをUEに送信します(ロードバランスを実現するために、各UEに異なる順序を保証します)
-
UEはリストの最初のePDGを選択し、それを使用してIKEv2トンネルを開始します。失敗した場合、リストから別のePDGを選択するか、DNS手順を繰り返します
-
ePDGは、ePDGとPGWのコロケーションを実現するために、異なるゾーンから別のePDGにIKEv2セッションをリダイレクトします
-
ePDGがREDIRECTペイロードのIPアドレスをUEに送信
-
UEは新しいePDGにIKE_INITを送信でき、コールセットアップが完了します
トラブルシューティング手順
1. UEは、ePDGへの要求でredirect_supportフラグを設定してIKE_SA_INITを送信します。このフラグは、モニタサブスクライバログで確認できます。
+ IKE Header Processed-Dump, HBO (Length: 28 (0x1C) bytes)
Initiator SPI (U64): 0xCDC14DDC62E0D586
Responder SPI (U64): 0x0000000000000000
Next Payload (U08): SA/33 (0x21)
Major Version (U04): 2
Minor Version (U04): 0
XCHG Type (U08): IKE_SA_INIT/34 (0x22)
Reserved (U03): 0
Initiator Flag (U01): Initiator/1 (0x01)
Version Flag (U01): 0
Response Flag (U01): 0
Reserved (U02): 0
MSGID (U32): 0
Length (U32): 334 (0x14E) bytes
+ NOTIFY Payload Processed-Dump, HBO (Length: 8 (0x8) bytes)
Next Payload (U08): NO_NEXT_PAYLOAD/0 (0x00)
Critical (U01): 0
Reserved (U07): 0
Payload Length (U16): 8 (0x8) bytes
Protocol ID (U08): 0/0 (0x00)
SPI Size (U08): 0 (0x0) bytes
Notify Message Type (U16): REDIRECT_SUPPORTED/16406 (0x4016)
- NOTIFY Payload Raw-Dump, NBO (Length: 8 (0x8) bytes)
2. ePDGリダイレクションエラーログがsyslogに記録され、要求が別のePDGにリダイレクトされたことを示します。
"2022-Jun-15+23:37:26.862 [sessmgr 11531 error] [3/2/21272
sessmgr_epdg.c:5199] [callid 00020413] [context: ipsec, contextID: 12] [software external user syslog] Call redirected to another EPDG: X.X.X.X
3. ePDGにおけるPGWの選択を特定する。ePDGの選択は、静的または動的のいずれかです。UePDGサービスでは、「dns-pgw context gw」で有効になりますが、apn-profileでは、ローカル設定からスタティックPGW IPが割り当てられます。
epdg-service epdg
dns-pgw context gw
apn-profile apn_ims_epdg
pgw-address X.X.X.X
pgw-address X.X.X.X
4を参照。ステップ2で生成されたリダイレクトイベントエラーログ用のsessmgrコアファイルを収集する必要があります。
login to hidden mode
config
logging enable-debug facility sessmgr instance 1 eventid 11531 line-number 5199 collect-cores 1
logging enable-debug facility sessmgr instance 1 eventid 11531 line-number 5199 collect-cores 1
5.コア分析に基づいて、ノードでリダイレクトフラグが有効になっていることが特定されます。
6.このCLIは、がsessmgrコアファイル分析でリダイレクトフラグを設定するノードで設定されました。
login to hidden mode
[pdif]ePDG# epdg redirect address
7.このCLIはノードで設定されるため、UEがREDIRECT_SUPPORTを使用する場合、コールは別のePDGにリダイレクトされます。したがって、この設定を無効にする必要があります。
login to hidden mode
[pdif]ePDG# no epdg redirect
注:このCLIは設定モードでは実行できないため、Show Support Detailsではキャプチャされません。
ソリューションの提案
このコマンドはCLIモードで無効にする必要があります。
login to hidden mode
[pdif]ePDG# no epdg redirect