CMCC portal 协议wireshark 抓包分析


环境介绍:
192.168.13.253192.168.13.252抓包过程:
1、安装wireshark,宁盾wifi默认安装路径下${DKEY AM }/Utilities目录下有wireshark安装包,直接安装即可,具体安装过程略。2、添加Portal协议分析插件,具体操作过程参见附件portal协议分析插件.zip(114.59 KB, 下载次数: 894)
3、运行wireshark选取网卡,例我的认证服务器所使用的网卡为本地链接;如图:4、过滤portal||radius报文:

Portal 认证流程

报文字段说明VerVer字段是协议的版本号,长度为 1 字节,目前定义的值为 0x01。TypeType字段定义报文的类型,长度为 1 字节,目前其值的定义如表6-1。
报文类型Type值方向含义REQ_CHALLENGE0x01Client—–>ServerPortal Server 向AC设备发送的请求Challenge报文ACK_CHALLENGE0x02ClientAC设备对Portal Server请求Challenge报文的响应报文REQ_AUTH0x03Clie免费云主机域名nt—–>ServerPortal Server向AC设备发送的请求认证报文ACK_AUTH0x04ClientAC设备对Portal Server请求认证报文的响应报文REQ_LOGOUT0x05Client—–>Server若ErrCode字段值为0x00,表示此报文是Portal Server向AC设备发送的请求用户下线报文;若ErrCode字段值为0x01,表示该报文是Portal Server发送的超时报文,其原因是Portal Server发出的各种请求在规定时间内没有收到响应报文。ACK_LOGOUT0x06ClientAC设备对Portal Server请求下线报文的响应报文AFF_ACK_AUTH

0x07Client—–>ServerPortal Server对收到的认证成功响应报文的确认报文;NTF_LOGOUT0x08Server –> Client用户被强制下线通知报文REQ_INFO0x09Client –> Server信息询问报文ACK_INFO0x0aServer –> Client信息询问的应答报文Pap/ChapPap/Chap字段定义此用户的认证方式,长度为 1 字节,只对Type值为 0x03 的认证请求报文有意义:Chap方式认证---值为0x00;Pap方式认证---值为0x01;RsvRsv目前为保留字段,长度为 1 字节,在所有报文中值为 0;SerialNo(1) SerialNo字段为报文的序列号,长度为 2 字节,由Portal Server随机生成,Portal Server必须尽量保证不同认证流程的SerialNo在一定时间内不得重复,在同一个认证流程中所有报文的SerialNo相同;(2) Portal Server发给AC设备的报文a、由Portal Server发出的Type值为1、3的请求报文其SerialNo都是随机生成数;b、由Portal Server向AC设备发出的Type值为5的(REQ_LOGOUT)报文其SerialNo值分两种情况:当ErrCode为0 时(请求用户下线报文),SerialNo值为一个随机生成数;当ErrCode为1时,SerialNo值可能和Type值为1或3的报文 (请求Challenge超时, 或请求认证超时)相同,具体要看是请求Challenge超时还是请求认证超时;c、由Portal Server向AC设备发出的认证成功确认报文(Type值为7的报文)SerialNo和其发出的相应请求报文的SerialNo相同;比如对于Type值为7的报文其SerialNo值和Type值为3的请求认证报文相同;(3) 每一个由AC设备发给PortalServer的响应报文的SerialNo必须和PortalServer发送的相应请求报文的SerialNo一样,否则PortalServer会丢掉从AC设备发来的响应报文; 比如Type值为2的报文其SerialNo值必须和Type值为1的报文相同,Type值为4的报文其SerialNo值必须和Type值为3的报文相同,Type值为6的报文其SerialNo值必须和Type值为5的报文相同。ReqID(1) ReqID字段长度为 2 个字节,由AC设备随机生成,尽量使得在一定时间内ReqID不重复。(2) 在Chap认证方式中:a、AC设备在Type为2 (ACK-CHALLENGE) 的请求Challenge响应报文中把该ReqID的值告诉Portal Server;b、在Type值为3、4、7 ( REQ-AUTH, ACK-AUTH, AFF-ACK-AUTH ) 的报文中ReqID字段的值都和Type值为2的报文中此字段的值相同;c、在Type值为 5 (REQ-LOGOUT) 的报文中,若报文表示请求Challenge 超时则此字段值为0 ;若报文表示请求认证超时则此字段值和Type值为2 (ACK-CHALLENGE)的报文中此字段的值相同;(3) 在Pap认证方式中,此字段无意义,其值为0;(4) 在Type值为 5(REQ-LOGOUT) 的报文中,若报文表示请求下线时则此字段值为0 ;(5) 在Type值为1、6 (REQ-CHALLENGE , ACK-LOGOUT) 的报文中,该字段均无意义,值都为 0;UserIP UserIP字段为Portal用户的IP地址,长度为 4 字节,其值由Portal Server根据其获得的IP地址填写,在所有的报文中此字段都要有具体的值UserPort UserPort字段目前没有用到,长度为 2 字节,在所有报文中其值为0ErrCodeErrCode字段和Type字段一起表示一定的意义,长度为 1字节,具体如下:(1) 对于Type值为1、3、7的报文,ErrCode字段无意义,其值为0;(2) 当Type值为 2 时:ErrCode=0,表示AC设备告诉PortalServer请求Challenge成功;ErrCode=1,表示AC设备告诉PortalServer请求Challenge被拒绝;ErrCode=2,表示AC设备告诉PortalServer此链接已建立;ErrCode=3,表示AC设备告诉PortalServer有一个用户正在认证过程中,请稍后再试;ErrCode=4,则表示AC设备告诉PortalServer此用户请求Challenge失败(发生错误);(3) 当Type值为 4 时:ErrCode=0,表示AC设备告诉PortalServer此用户认证成功;ErrCode=1,表示AC设备告诉PortalServer此用户认证请求被拒绝;ErrCode=2,表示AC设备告诉PortalServer此链接已建立; ErrCode=3,表示AC设备告诉PortalServer有一个用户正在认证过程中,请稍后再试; ErrCode=4 ,表示AC设备告诉PortalServer此用户认证失败(发生错误);(4) 当Type值为 5 时:ErrCode=0,表示此报文是Portal Server发给AC设备的请求下线报文;ErrCode=1,表示此报文是在Portal Server没有收到AC设备发来的对各种请求的响应报文,而定时器时间到(即超时)时由PortalServer发给AC设备的报文;(5) 当Type值为 6 时:ErrCode=0,表示AC设备告诉PortalServer此用户下线成功;ErrCode=1,表示AC设备告诉PortalServer此用户下线被拒绝;ErrCode=2,表示AC设备告诉Portal Server此用户下线失败(发生错误);(6) 对Type为REQ_INFO时,ErrCode无意义,其值为0;(7) 对Type为NTF_LOGOUT时,ErrCode含义如下:ErrCode含义0下线(8) 对Type为ACK_INFO时,ErrCode含义如下:ErrCode含义0处理成功,但不表示全部消息都被获取了,有多少信息被获得应通过属性来判断,详见下文1功能不支持,表示设备不支持这一功能2消息处理失败,由于某种不可知原因,使处理失败,例如询问消息格式错误等。

相关推荐: Linux下如何用dnsmasq做dns cache server配置

这篇文章主要介绍“Linux下如何用dnsmasq做dns cache server配置”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Linux下如何用dnsmasq做dns cache server配置”文章能帮助大…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 01/26 18:40
下一篇 01/26 20:23