概要
このドキュメントでは、authentication imsi-auth または authentication msisdn-auth を使用して企業の L2TP APN を設定した場合に想定される結果について説明します。
問題:msisdn-auth および imsi-auth APN 設定オプションを使用すると、L2TP ベースの APN で特有の(自明ではない)結果が生じる
公式ドキュメント(リリース 19)には次の記述があります。
imsi-auth:サブスクライバの認証をその International Mobile Subscriber Identification(IMSI)番号に基づいて試行するように APN を設定します。
msisdn-auth:サブスクライバの認証をその Mobile Station International Integrated Services Digital Network(MSISDN)番号に基づいて試行するように APN を設定します。これについては、このコマンドの「使用法」で説明します。
設定例:
apn ecs-apn
ims-auth-service IMSA
dns primary 192.168.1.128
dns secondary 192.168.1.129
ip access-group CSS_ACL in
ip access-group CSS_ACL out
authentication imsi-auth username-strip-apn prefer-chap-pco <<<<<<<<<<<<<<<<<<<<<<<<<<<
ip context-name Gi
tunnel l2tp peer-address 2.2.2.2 encrypted secret +A3oxne9nnyqmuz16dddqucwcqz92p2hi4t8z21nx3hmmpcgvh4ida preference 1 <<<<<<<<<<<<<<<<<<<<<<<<<<<
tunnel l2tp peer-address 3.3.3.3 encrypted secret +A2dbz9joxajmv80jxmr5aycl1ka2s6nzmu7s2bte3nnz4o2hgkqxn preference 2 <<<<<<<<<<<<<<<<<<<<<<<<<<<
loadbalance-tunnel-peers prioritized <<<<<<<<<<<<<<<<<<<<<<<<<<<
exit
lac-service LAC-SVC <<<<<<<<<<<<<<<<<<<<<<<<<<<
max-retransmission 1
retransmission-timeout-max 1
load-balancing prioritized
allow aaa-assigned-hostname
keepalive-interval 30
peer-lns 2.2.2.2 encrypted secret +A2q4fv7h5tum1a06vc2wblk9l7k3ma98myremkew1552c2vosy2h1
peer-lns 3.3.3.3 encrypted secret +A16gnydsddbqqx3okh7ln6jrwxz3s3u3lzvzo5bz0ccc0ztr0cvsh
bind address 1.1.1.1
#exit
前述のいずれかのオプションが L2TP ベースの APN に対して設定されている場合に、Gateway GPRS Support Node/
Packet Data Network(PDN)Gateway(GGSN/PGW)が L2TP ネットワーク サーバ(LNS)との PPP 認証に IMSI または MSISDN を使用することが予期されます。
このオプションは、User Equipment(UE)から提供されたユーザ名がない場合には、予期されているとおりに機能します。
ii
Friday April 07 2017
INBOUND>>>>> 09:57:08:270 Eventid:141004(3)
[PGW-S5/S2a/S2b]GTPv2C Rx PDU, from 213.151.233.172:35664 to 213.151.233.230:2123 (271)
TEID: 0x00000000, Message type: EGTP_CREATE_SESSION_REQUEST (0x20)
Sequence Number: 0x317962 (3242338)
GTP HEADER
Version number: 2
TEID flag: Present
Piggybacking flag: Not present
Message Length: 0x010B (267)
INFORMATION ELEMENTS
IMSI:
Type: 1 Length: 8 Inst: 0
Value: 231014450903030
Hex: 0100 0800 3201 4154 9030 30F0
MSISDN:
Type: 76 Length: 6 Inst: 0
Value: 421917667546
Hex: 4C00 0600 2491 7166 5764
MOBILE EQUIPMENT IDENTITY:
Type: 75 Length: 8 Inst: 0
Value: 3594050557927001
Hex: 4B00 0800 5349 5050 7529 0710
[…]
ACCESS POINT NAME:
Type: 71 Length: 38 Inst: 0
Value: ltpipsec.corp.test.mnc001.mcc231.gprs
Hex: 4700 2600 086C 7470 6970 7365 6304 636F
7270 0474 6573 7406 6D6E 6330 3031 066D
6363 3233 3104 6770 7273
SELECTION MODE:
Type: 128 Length: 1 Inst: 0
Value: MS provided APN,subscr not verified (0x01)
Hex: 8000 0100 01
PDN TYPE:
Type: 99 Length: 1 Inst: 0
Value: IPV4
Hex: 6300 0100 01
[…]
PCO:
Type: 78 Length: 32 Inst: 0
Container id: 0xC023 (PAP)
Container length: 0x06 (6)
Container content:
Auth-Req(0), Name=, Passwd=
Container id: 0x8021 (IPCP)
Container length: 0x10 (16)
Container content:
Conf-Req(0), Pri-DNS=0.0.0.0, Sec-DNS=0.0.0.0
Container id: 0x000D (IPv4-DNS-Server)
Container length: 0x00 (0)
Container content:
DNS Address: Request for IPv4 DNS Address allocation
Hex: 4E00 2000 80C0 2306 0100 0006 0000 8021
1001 0000 1081 0600 0000 0083 0600 0000
0000 0D00
[…]
Friday April 07 2017
<<<<OUTBOUND 09:57:08:295 Eventid:25001(0)
PPP Tx PDU (20)
PAP 20: Auth-Req(1), Name=421917667546, Passwd= <-- username is replaced with MSISDN as the APN is configured with “msisdn-auth”
このオプションは、UE から提供されたユーザ名がある場合は機能しません。この場合、GGSN/PGW は APN 内部で設定されているユーザ名とパスワードを送信します。
何も設定されていない場合
Friday April 07 2017
INBOUND>>>>> 09:47:51:254 Eventid:141004(3)
[PGW-S5/S2a/S2b]GTPv2C Rx PDU, from 213.151.233.172:35824 to 213.151.233.230:2123 (279)
TEID: 0x00000000, Message type: EGTP_CREATE_SESSION_REQUEST (0x20)
Sequence Number: 0x5C4D6C (6049132)
GTP HEADER
Version number: 2
TEID flag: Present
Piggybacking flag: Not present
Message Length: 0x0113 (275)
INFORMATION ELEMENTS
IMSI:
Type: 1 Length: 8 Inst: 0
Value: 231014450903030
Hex: 0100 0800 3201 4154 9030 30F0
MSISDN:
Type: 76 Length: 6 Inst: 0
Value: 421917667546
Hex: 4C00 0600 2491 7166 5764
MOBILE EQUIPMENT IDENTITY:
Type: 75 Length: 8 Inst: 0
Value: 3594050557927001
Hex: 4B00 0800 5349 5050 7529 0710
[..]
PCO:
Type: 78 Length: 40 Inst: 0
Container id: 0xC023 (PAP)
Container length: 0x0E (14)
Container content:
Auth-Req(0), Name=null, Passwd=null
Container id: 0x8021 (IPCP)
Container length: 0x10 (16)
Container content:
Conf-Req(0), Pri-DNS=0.0.0.0, Sec-DNS=0.0.0.0
Container id: 0x000D (IPv4-DNS-Server)
Container length: 0x00 (0)
Container content:
DNS Address: Request for IPv4 DNS Address allocation
Hex: 4E00 2800 80C0 230E 0100 000E 046E 756C
6C04 6E75 6C6C 8021 1001 0000 1081 0600
0000 0083 0600 0000 0000 0D00
[…]
Friday April 07 2017
<<<<OUTBOUND 09:47:51:334 Eventid:25001(0)
PPP Tx PDU (16)
PAP 16: Auth-Req(1), Name=null, Passwd=null <-- username is the same as in the APN
解決方法
確認される動作は、設計に基づく予期される動作です。
authentication imsi-auth username-strip-apn prefer-chap-pco(または authentication msisdn-auth username-strip-apn prefer-chap-pco)設定は、Protocol Configuration Options(PCO)ユーザ名が提供されない場合に使用されます。
次に、ネットワークアクセス識別子(NAI)作成設定の優先順位を示します。
- outbound username <1 ~ 128 文字の文字列> が APN 内部で設定されている場合、この設定はその他のすべての設定/IE を上書きし、PAP/CHAP 要求で送信されます。
- UE が PCO ユーザ名/パスワードを送信する場合、このユーザ名/パスワードは Password Authentication Protocol/Challenge Handshake Authentication Protocol(PAP/CHAP)要求で LNS に送信されます。
- ユーザ名が UE から送信されない場合、デフォルトで msisdn/imsi@APN が PAP/CHAP 要求のユーザ名として送信されます。
- さらにこの CLI(authentication msisdn/imsi-auth username-strip-apn)を使用して、APN をストリップし、msisdn/imsi だけを PAP/CHAP 要求で送信できます。
認証が RADIUS により(ローカルに)実行される場合は、予期されているとおり、IMSI(または MSISDN)が Access-Request メッセージで送信されます。
L2TP の場合も同様に、認証が(LAC 側で)RADIUS によって実行される場合、予期されているユーザ名(IMSI または MSISDN)が Access-Request メッセージに含まれていますが、LNS に送信される Auth-Req には含まれません。