您好,登錄后才能下訂單哦!
環境介紹:
認證服務器 | 192.168.13.253 |
AC | 192.168.13.252 |
抓包過程:
1、安裝wireshark,寧盾wifi默認安裝路徑下${DKEY AM }/Utilities目錄下有wireshark安裝包,直接安裝即可,具體安裝過程略。2、添加Portal協議分析插件,具體操作過程參見附件 portal協議分析插件.zip
3、運行wireshark選取網卡,例我的認證服務器所使用的網卡為本地鏈接;如圖:
4、過濾portal||radius報文:
Portal 認證流程
報文字段說明
Ver
Ver字段是協議的版本號,長度為 1 字節,目前定義的值為 0x01。
Type
Type字段定義報文的類型,長度為 1 字節,目前其值的定義如表6-1。
報文類型
Type | 值 | 方向 | 含義 |
REQ_CHALLENGE | 0x01 | Client----->Server | Portal Server 向AC設備發送的請求Challenge報文 |
ACK_CHALLENGE | 0x02 | Client<-----Server | AC設備對Portal Server請求Challenge報文的響應報文 |
REQ_AUTH | 0x03 | Client----->Server | Portal Server向AC設備發送的請求認證報文 |
ACK_AUTH | 0x04 | Client<-----Server | AC設備對Portal Server請求認證報文的響應報文 |
REQ_LOGOUT | 0x05 | Client----->Server | 若ErrCode字段值為0x00,表示此報文是Portal Server向AC設備發送的請求用戶下線報文;若ErrCode字段值為0x01,表示該報文是Portal Server發送的超時報文,其原因是Portal Server發出的各種請求在規定時間內沒有收到響應報文。 |
ACK_LOGOUT | 0x06 | Client<-----Server | AC設備對Portal Server請求下線報文的響應報文 |
AFF_ACK_AUTH | 0x07 | Client----->Server | Portal Server對收到的認證成功響應報文的確認報文; |
NTF_LOGOUT | 0x08 | Server --> Client | 用戶被強制下線通知報文 |
REQ_INFO | 0x09 | Client --> Server | 信息詢問報文 |
ACK_INFO | 0x0a | Server --> Client | 信息詢問的應答報文 |
Pap/Chap
Pap/Chap字段定義此用戶的認證方式,長度為 1 字節,只對Type值為 0x03 的認證請求報文有意義:
Chap方式認證---值為0x00;
Pap 方式認證---值為0x01;
Rsv
Rsv目前為保留字段,長度為 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 字節,在所有報文中其值為0;
ErrCode
ErrCode字段和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 | 消息處理失敗,由于某種不可知原因,使處理失敗,例如詢問消息格式錯誤等。 |
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。