Portal协议分析.docx
- 文档编号:29877261
- 上传时间:2023-08-03
- 格式:DOCX
- 页数:17
- 大小:83.94KB
Portal协议分析.docx
《Portal协议分析.docx》由会员分享,可在线阅读,更多相关《Portal协议分析.docx(17页珍藏版)》请在冰豆网上搜索。
Portal协议分析
AC、Portal与AAA
交互协议分析
上海寰创通信科技有限公司
文档更新记录
日期
更新人
版本
备注
2009-2-13
齐霄鹏
2009-2-16
齐霄鹏
1Portal协议协议概述5
2Portal协议报文格式5
3Portal协议报文字段说明5
4与Portal交互中报文填充说明6
4.1REQ_CHALLENGE6
4.2ACK_CHALLENGE7
4.3REQ_AUTH8
4.4ACK_AUTH8
4.5AFF_ACK_AUTH9
5与3A相关的交互中报文填充说明10
5.1Access_Request10
5.2Accounting-Request/Start10
5.3Accounting-Request/Interim-Update11
5.4Accounting-Request/Stop11
6HTTPRequestportal-url11
1Portal协议协议概述
AC与PortalServer之间通过Portal协议交互。
2Portal协议报文格式
3Portal协议报文字段说明
Ver
Ver字段是协议的版本号,长度为1字节,目前定义的值为0x01。
Type
Type字段定义报文的类型,长度为1字节。
Pap/Chap
Pap/Chap字段定义此用户的认证方式,长度为1字节,只对Type值为0x03的认证请求报文有意义:
chap方式认证(0x00)、Pap方式认证(0x01)。
Rsv
Rsv目前是保留字段,长度为1字节,在所有报文中值为0。
SerialNo
SerialNo字段是报文的序列号,长度为2字节,由PortalServer随机生成;由PortalServer发给AC的报文;每一个由AC设备发给PortalServer的响应报文的SerialNo必须和PortalServer发送的相应请求报文的SerialNo一样。
ReqID
ReqID字段长度2个字节,AC随机生成。
UserIP
UserIP字段为Portal用户的IP地址,长度是4字节,由PortalServer根据获得的IP地址填写,必填项。
UserPort
UserPort字段目前没有用到,长度为2字节,在所有报文中其值为0。
ErrCode
ErrCode字段和Type字段一起表示一定的意义,长度为1字节。
AttrNum
AttrNum字段表示其后便可变长度的属性字段属性的个数,长度为1字节(表示属性最多可有255个属性),其值在所有的报文中都要根据具体情况赋值。
Attr
Attr字段(属性字段)是一个可变长字段,由多个属性依次链接而成,每个属性的格式为TLV,如图:
属性字段中每个属性说明如下:
(1)属性类型(AttrType)
Attr(属性字段)
AttrType
属性值长度
属性含义
UserName
0x01
<=253(可变)
随e行用户名,具体为:
“用户手机号码”;
全国/省内预付费卡用户名称:
13位数字;
为满足国际漫游的需要,支持253字节的长用户名。
PassWord
0x02
<=16(可变)
用户提交的明文密码
Challenge
0x03
16(固定)
Chap方式加密的魔术字
ChapPassWord
0x04
16(固定)
经过Chap方式加密后的密码
(2)属性长度(AttrLen)
AttrLen字段表示属性的长度,长度为1字节,其值是整个属性三个字段AttrType、AttrLen、AttrValue的长度之和。
(3)属性值(AttrValue)
AttrValue的值为具体的属性值,比如用户名、口令等,长度有些可变,有些固定,但最长不超过253(255-2)字节
4与Portal交互中报文填充说明
4.1REQ_CHALLENGE
序号
参数名称
长度(字节)
值
说明
1
Ver
1
0x01
协议版本号
2
Type
1
0x01
报文类型
3
Pap/Chap
1
无意义
定义用户的认证方式
4
Rsv
1
0
保留字段
5
SerialNo
2
随机
报文的序列号,PortalServer随机生成,同一个认证流程中所有报文的SerialNo相同
6
ReqID
2
0
该字段无意义
7
UserIP
4
IP
由PortalServer根据获得的IP地址填写,必填
8
UserPort
2
0
保留字段
9
ErrCode
1
0
该字段无意义
10
AttrNum
1
0
其后便可变长度的属性字段属性的个数,长度为1字节(表示属性最多可有255个属性)
4.2ACK_CHALLENGE
序号
参数名称
长度(字节)
值
说明
1
Ver
1
0x01
协议版本号
2
Type
1
0x02
报文类型
3
Pap/Chap
1
无意义
定义用户的认证方式
4
Rsv
1
0
保留字段
5
SerialNo
2
同4.1中的SerialNo相同
报文的序列号,与Type字段的值等于0x01的报文相同
6
ReqID
2
Chap方式:
随机
Pap方式:
无意义,0
Chap方式:
AC随机生成,AC设备的请求Challenge响应报文中把该ReqID的值告诉PortalServer
7
UserIP
4
IP
由PortalServer根据获得的IP地址填写,必填
8
UserPort
2
0
保留字段
9
ErrCode
1
0:
请求challenge成功
1:
请求challenge拒绝
2:
链接已建立
3:
有一个用户在认证
4:
请求challenge失败
与Type字段一起表示一定的意义,AC设备通知PortalServer
10
AttrNum
1
1
其后可变长度的属性字段属性的个数,长度为1字节(表示最多可有255个属性)
11
AttrType
1
0x03
属性类型(Challege)
12
AttrLenth
1
18
整个属性三个字段AttrType、AttrLen、AttrValue的长度之和
13
AttrValue
16
具体的属性值,Chap方式加密的魔术字
4.3REQ_AUTH
序号
参数名称
长度(字节)
值
说明
1
Ver
1
0x01
协议版本号
2
Type
1
0x03
报文类型
3
Pap/Chap
1
Chap:
0x00
Pap:
0x01
定义用户的认证方式
4
Rsv
1
0
保留字段
5
SerialNo
2
随机
报文的序列号,PortalServer随机生成
6
ReqID
2
Chap方式:
和Type值为2的报文中此字段的值相同
Pap方式:
无意义,0
7
UserIP
4
IP
由PortalServer根据获得的IP地址填写,必填
8
UserPort
2
0
保留字段
9
ErrCode
1
0
字段无意义
10
AttrNum
1
3
其后便可变长度的属性字段属性的个数,长度为1字节(表示属性最多可有255个属性)
11
AttrType
1
0x01
属性字段类型(UserName)
12
AttrLenth
1
<=255
属性长度
13
AttrValue
<=253
随e行用户名
14
AttrType
1
0x02
属性字段类型(PassWord)
15
AttrLenth
1
<=18
属性长度
16
AttrValue
<=16
用户提交的明文密码
17
AttrType
1
0x03
属性字段类型(Challenge)
18
AttrLenth
1
18
属性长度
19
AttrValue
16
Chap方式加密的魔术字
4.4ACK_AUTH
序号
参数名称
长度(字节)
值
说明
1
Ver
1
0x01
协议版本号
2
Type
1
0x04
报文类型
3
Pap/Chap
1
无意义
定义用户的认证方式
4
Rsv
1
0
保留字段
5
SerialNo
2
同4.3中的SerialNo相同
报文的序列号,与Type字段的值等于0x03的报文相同
6
ReqID
2
Chap方式:
和Type值为2的报文中此字段的值相同
Pap方式:
无意义,0
7
UserIP
4
IP
由PortalServer根据获得的IP地址填写,必填
8
UserPort
2
0
保留字段
9
ErrCode
1
0:
用户认证成功
1:
用户认证请求被拒绝
3:
有一个用户在认证,青售后再试
4:
此用户认证失败
与Type字段一起表示一定的意义,AC设备通知PortalServer
10
AttrNum
1
0
其后便可变长度的属性字段属性的个数,长度为1字节(表示属性最多可有255个属性)
4.5AFF_ACK_AUTH
序号
参数名称
长度(字节)
值
说明
1
Ver
1
0x01
协议版本号
2
Type
1
0x07
报文类型
3
Pap/Chap
1
无意义
定义用户的认证方式
4
Rsv
1
0
保留字段
5
SerialNo
2
同4.3中的SerialNo相同
由PortalServer向AC设备发出的认证成功确认报文,与Type字段的值等于0x03的报文相同
6
ReqID
2
Chap方式:
和Type值为2的报文中此字段的值相同
Pap方式:
无意义,0
7
UserIP
4
IP
由PortalServer根据获得的IP地址填写,必填
8
UserPort
2
0
保留字段
9
ErrCode
1
0
字段无意义
10
AttrNum
1
0
其后便可变长度的属性字段属性的个数,长度为1字节(表示属性最多可有255个属性)
5与3A相关的交互中报文填充说明
5.1Access_Request
序号
参数名称
长度(字节)
值(十进制)
说明
1
AttrNum
1
3
其后便可变长度的属性字段属性的个数,长度为1字节(表示属性最多可有255个属性)
2
AttrType
1
1
属性字段类型(UserName)
3
AttrLenth
1
<=255
属性长度
4
AttrValue
<=253
用户名
5
AttrType
1
2
属性字段类型(PassWord)
6
AttrLenth
1
18<=..<=130
属性长度
7
AttrValue
<=16
16<=..<=128
用户提交的密码
8
AttrType
1
60
属性字段类型(Challenge)
9
AttrLenth
1
>=7
属性长度
10
AttrValue
16
5<=..<=247
Chap方式加密的魔术字
5.2Accounting-Request/Start
序号
参数名称
长度(字节)
值(十进制)
说明
1
AttrNum
1
1
其后便可变长度的属性字段属性的个数,长度为1字节(表示属性最多可有255个属性)
2
AttrType
1
1
属性字段类型(UserName)
3
AttrLenth
1
<=255
属性长度
4
AttrValue
<=253
用户名
5.3Accounting-Request/Interim-Update
序号
参数名称
长度(字节)
值(十进制)
说明
1
AttrNum
1
1
其后便可变长度的属性字段属性的个数,长度为1字节(表示属性最多可有255个属性)
2
AttrType
1
1
属性字段类型(UserName)
3
AttrLenth
1
<=255
属性长度
4
AttrValue
<=253
用户名
5.4Accounting-Request/Stop
序号
参数名称
长度(字节)
值(十进制)
说明
1
AttrNum
1
1
其后便可变长度的属性字段属性的个数,长度为1字节(表示属性最多可有255个属性)
2
AttrType
1
1
属性字段类型(UserName)
3
AttrLenth
1
<=255
属性长度
4
AttrValue
<=253
用户名
6HTTPRequestportal-url
HTTPRequestportal-url(实现强制PORTAL功能)的相关参数
当AC实现强制Portal功能时,要求强制Portal中包含一下参数:
参数名称
参数取值
参数说明
认证模式
作用阶段
举例
wlanuserip
十进制的字符串格式
网段在前,主机在后
WLAN用户的私网地址,是认证Portal与AC之间判别WLAN用户的身份识别码
WEB
重定向认证页面请求时
wlanuserip=10.1.2.34
wlanacname
十进制的字符串格式
wlanacname=ACN.CTY.PRO.OPE,属性名为严格小写,属性值为按照下列规定的AC名称。
统一规定全国AC的编码,其编码规则为ACN.CTY.PRO.OPE,其中:
ACN表示AC的名字,由4位数字组成,各省自己规划和分配。
CTY表示WLAN位于的城市,由4位数字组成,由各个地市的长途区号表示,右对齐左填零。
PRO表示WLAN位于的省份,由3位数字组成,PRO的代码分配参见附表。
OPE表示WLAN所属的运营商,由2位数字组成,中国移动为00。
WEB
重定向认证页面请求时
wlanacip=ACN.CTY.
PRO.OPE
举例说明:
WEB认证模式的URL:
?
wlanuserip=10.1.2.34&wlanacname=ACN.CTY.PRO.OPE
注意:
允许在URL中的“?
”后面增加其他的参数,但是名称不能使用wlan作为起始
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Portal 协议 分析