如今項目中需要涉及到RADIUS及IPv6的使用,而網路中的資料相對較少,現對frc-3162進行中文翻譯,分享出來。由於英語水平有限,翻譯不恰當的地方,還請提出,便於在下及時修改。原文鏈接這份文檔的狀態本文件規定了網際網路社區的網際網路標準跟蹤協議,並要求討論和改進建議。請參考當前版本的“網際網路官方協... ...
如今項目中需要涉及到RADIUS及IPv6的使用,而網路中的資料相對較少,現對frc-3162進行中文翻譯,分享出來。
由於英語水平有限,翻譯不恰當的地方,還請提出,便於在下及時修改。
原文鏈接
這份文檔的狀態
本文件規定了網際網路社區的網際網路標準跟蹤協議,並要求討論和改進建議。
請參考當前版本的“網際網路官方協議標準”(STD 1),以瞭解該協議的標準化狀態和狀態。這份備忘錄的分發是無限的。
版權聲明
版權(c)互聯網協會(2001)。版權所有。
摘要
此文檔指定IPv6運行時RADIUS(遠程身份驗證撥號用戶服務)的操作,以及用於支持IPv6網路訪問的RADIUS屬性。
1. 介紹
此文檔指定了RADIUS 4 [ 8 ]在IPv6 13上的操作,以及用於支持IPv6網路訪問的RADIUS屬性。
註意一個NAS發送RADIUS訪問請求可能不知道先驗主機是否將使用IPv4,IPv6,或兩者。例如,在PPP,ipv6cp [ 11 ]發生後LCP,所以地址分配不會發生直到radius的認證和授權已完成。
因此,假設該文檔中描述的IPv6屬性可以與同一RADIUS消息中與IPv4相關的屬性一起發送,NAS將決定使用哪些屬性。
NAS應該只分配客戶端可以實際使用的地址和首碼。
例如,沒有必要保留使用一個只支持IPv6主機的IPv4地址的NAS;同樣,主機僅使用IPv4或IPv6 [ 12 ]不需要IPv6首碼分配。
NAS可以提供IPv6接入本身,或者通過其他方法,如在IPv4隧道[ 15 ]和[ 14 ] IPv6 6over4。
提供IPv6訪問的方法的選擇本身對半徑的使用沒有影響,但如果希望IPv4隧道中的IPv6被打開到特定位置,則應該使用隧道屬性,如[ 6 ],[ 7 ]所述。
1.1.要求語言
在本文件中,“必須”、“必須”、“必須”、“可選”、“建議”、“應該”和“不應該”等詞語,應按[ 1 ]中所述加以解釋。
2. 屬性
2.1. nas-ipv6-address
描述:
此屬性表示NAS的標識IPv6地址。
請求用戶身份驗證的,應該是在RADIUS伺服器範圍內唯一的NAS。
NAS—IPv6-address只用於 Access-Request packet。
nas-ipv6-address和/或 NAS-IP-Address可以訪問請求數據包的呈現;然而,如果沒有屬性存在,那麼NAS-Identifier必須在場。
nas-ipv6-address屬性的格式總結如下。
欄位從左向右傳輸。
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Address +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Address +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Address +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Address +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type [95 for NAS-IPv6-Address] Length [18] Address [The Address field is 16 octets.]
2.2. Framed-Interface-Id
描述
此屬性指示為用戶配置的IPv6介面標識符。
它可以用於訪問接收包。
如果Interface-Identifier ipv6cp選項[ 11 ]已成功協商,這個屬性必須包含在Access-Request packet 作為NAS向伺服器提示它願意使用該值的提示。
這是推薦的,但不是必需的,
伺服器尊重提示。
框架介面id屬性格式的摘要如下所示。
欄位從左向右傳輸。
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Interface-Id +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Interface-Id +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Interface-Id | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type [96 for Framed-Interface-Id] Length [10] Interface-Id [Interface-Id field is 8 位元組.]
2.3. Framed-IPv6-Prefix
描述
此屬性指示為用戶配置的IPv6首碼(以及相應的路由)。
它可以用於訪問接受包,並且可以多次出現。
它可以在訪問請求包中使用,作為NAS向伺服器提示它希望使用這些首碼(ES),但伺服器不需要遵守提示。
因為它是假定NAS將垂直對應的首碼路徑,它不需要伺服器發送一個相同首碼的framed-ipv6-route屬性。
framed-ipv6-prefix屬性的格式總結如下。
欄位從左向右傳輸。
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Reserved | Prefix-Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Prefix +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Prefix +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Prefix +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Prefix | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type [ 97 for Framed-IPv6-Prefix ] Length [ Length:[4,20) ] Reserved [ 這個欄位是保留的,必須存在,總是設置為零 ] Prefix-Length [ 首碼的長度,以位表示。至少0,不大於128 ] Prefix [首碼欄位多達16個位元組的長度。首碼長度以外的比特,如果包含,必須為零。]
2.4. Login-IPv6-Host
描述
此屬性指示包含 Login-Service 屬性時連接用戶的系統。
它可以用於Access-Accept packets 。
它可以在Access-Request packet 中用作對伺服器的提示,NAS希望使用該主機,但伺服器不需要遵守提示。
login-ipv6-host屬性的格式總結如下。
欄位從左向右傳輸。
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Address +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Address +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Address +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Address +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type [98 for Login-IPv6-Host] Length [18] Address [地址欄位的長度是16個位元組。 值0xffffffffffffffffffffffffffffffff表示NAS應該允許用戶選擇一個地址或名稱來連接。 值0表示NAS應選擇一個主機將用戶連接到。 其他值指示NAS應該將用戶連接到的地址。]
2.5. Framed-IPv6-Route
描述
此屬性提供為NAS上的用戶配置的路由信息。
它用於Access-Accept packet ,可以多次出現。
framed-ipv6-route屬性的格式總結如下。
欄位從左向右傳輸。
0 1 2 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- | Type | Length | Text ... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- Type [99 for Framed-IPv6-Route] Length [>=3] Text [text欄位是一個或多個位元組,其內容是依賴於實現的。 該欄位不是nul(進位00)終止。 它的目的是使人可讀,並且不影響協議的操作。 IPv6路由,它應該包含目的地址首碼後跟一個斜線和小數長度說明符說明許多高階位的首碼的使用。 其次是空格、網關地址、空格和一個或多個由空格分隔的度量(以十進位編碼)。 首碼和地址的格式如[ 16 ]所述。 例如,“2000:0:0:106::/ 64 2000::106:::a00:20ff fe99 a998 1”。 每當網關地址是IPv6未指定地址時,用戶的IP地址應用作網關地址。 未指定的地址可以用[ 16 ]中描述的任何可接受格式表示。 例如,“2000:0:0:106::64::1”。]
2.6. Framed-IPv6-Pool
描述
此屬性包含用於為用戶分配IPv6首碼的指定池的名稱。
如果NAS不支持多個首碼池,則NAS必須忽略此屬性。
framed-ipv6-pool屬性的格式總結如下。
欄位從左向右傳輸。
0 1 2 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | String... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type [100 for Framed-IPv6-Pool] Length [>= 3] String [字元串欄位包含在NAS上配置的分配的IPv6首碼池的名稱。欄位不以nul(進位00)終止。]
3. Table of Attributes
下表提供了在哪些包中可以找到哪些屬性以及數量的指南
Request | Accept | Reject | Challenge | Accounting Request | # | Attribute |
---|---|---|---|---|---|---|
0-1 | 0 | 0 | 0 | 0-1 | 95 | NAS-IPv6-Address |
0-1 | 0-1 | 0 | 0 | 0-1 | 96 | Framed-Interface-Id |
0+ | 0+ | 0 | 0 | 0+ | 97 | Framed-IPv6-Prefix |
0+ | 0+ | 0 | 0 | 0+ | 98 | Login-IPv6-Host |
0 | 0+ | 0 | 0 | 0+ | 99 | Framed-IPv6-Route |
0 | 0-1 | 0 | 0 | 0-1 | 100 | Framed-IPv6-Pool |
4. References
[1] Bradner, S., "Key words for use in RFCs to Indicate Requirement
Levels", BCP 14, RFC 2119, March, 1997.
[2] Yergeau, F., "UTF-8, a transformation format of Unicode and ISO
10646", RFC 2044, October 1996.
[3] Aboba, B. and J. Vollbrecht, "Proxy Chaining and Policy
Implementation in Roaming", RFC 2607, June 1999.
[4] Rigney, C., Rubens, A., Simpson, W. and S. Willens, "Remote
Authentication Dial In User Service (RADIUS)", RFC 2865, June
2000.
[5] Rigney, C., "RADIUS Accounting", RFC 2866, June 2000.
[6] Zorn, G., Mitton, D. and B. Aboba, "RADIUS Accounting
Modifications for Tunnel Protocol Support", RFC 2867, June
2000.
[7] Zorn, G., Leifer, D., Rubens, A., Shriver, J., Holdrege, M.
and I. Goyret, "RADIUS Attributes for Tunnel Protocol Support",
RFC 2868, June 2000.
[8] Rigney, C., Willats, W. and P. Calhoun, "RADIUS Extensions",
RFC 2869, June 2000.
[9] Kent S. and R. Atkinson, "Security Architecture for the
Internet Protocol", RFC 2401, November 1998.
[10] Alvestrand, H. and T. Narten, "Guidelines for Writing an IANA
Considerations Section in RFCs", BCP 26, RFC 2434, October
1998.
[11] Haskin, D. and E. Allen, "IP Version 6 over PPP", RFC 2472,
December 1998.
[12] Carpenter, B. and K. Moore, "Connection of IPv6 Domains via
IPv4 Clouds", RFC 3056, February 2001.
[13] Deering, S. and R. Hinden, "Internet Protocol, Version 6 (IPv6)
Specification", RFC 2460, December 1998.
[14] Carpenter, B. and C. Jung, "Transmission of IPv6 over IPv4
Domains without Explicit Tunnels", RFC 2529, March 1999.
[15] Gilligan, R. and E. Nordmark, "Transition Mechanisms for IPv6
Hosts and Routers", RFC 2893, August 2000.
[16] Hinden, R. and S. Deering, "IP Version 6 Addressing
Architecture", RFC 2373, July 1998.
5.安全註意事項
本文檔描述了在IPv6支持的網路中使用RADIUS進行身份驗證、授權和計費的目的。
在這種網路中,RADIUS協議可以在IPv4或IPv6上運行。
RADIUS協議已知的安全漏洞如[ 3 ]、[ 4 ]和[ 8 ]所述。
由於IPSec(9)是為IPv6實現的,所以預期支持IPv6的運行半徑實現通常會通過IPSec運行。
如果在IPSec上運行半徑,並且在那裡使用證書進行身份驗證,則可能希望避免對RADIUS共用機密的管理,從而利用公鑰基礎設施的改進的可伸縮性。
在 RADIUS 範圍內,共用機密用於隱藏諸如用戶密碼[ 4 ]和隧道密碼[ 7 ]之類的屬性。
此外,共用密鑰用於響應認證[ 4 ]計算,以及 Message-Authenticator attribute [ 8 ]。
因此,在RADIUS中,共用機密用於提供機密性以及完整性保護和身份驗證。
因此,只使用具有非空轉換的IPSec ESP可以提供足夠的安全服務來替代RADIUS應用程式層安全性。
因此,在使用IPSec AH或ESP null時,配置RADIUS共用密鑰通常仍然是必需的。
但是,如果在非專用轉換下運行的RADIUS ESP,RADIUS與RADIUS伺服器之間共用的秘密可能不被配置。
在這種情況下,必須假定零長度的共用密鑰。
6.IANA考慮
此文檔需要為下列屬性分配六個新的RADIUS屬性號:
NAS-IPv6-Address
Framed-Interface-Id
Framed-IPv6-Prefix
Login-IPv6-Host
Framed-IPv6-Route
Framed-IPv6-Pool