RADIUS and 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
RADIUS and IPv6[frc-3162译文]的更多相关文章
- (转) IPv6相关RFC
转自http://blog.csdn.net/lucien_cc/article/details/12688477 IPv6 Spec RFC 2460 : Internet Protocol, Ve ...
- 【freeradius】使用radclient调试radius协议
freeradius 自带了非常好的客户端程序 radtest, radclient 用来模拟和调试设备和通信过程.radtest多用于认证,radclient更为强大一些,认证,计费,coa都可以模 ...
- 英国已有500万宽带用户接入并开始使用IPv6技术
2018年英国首家为客户提供IPv6的主要ISP.随着所有现有的符合条件的用户线路启用,约90%的固定宽带用户群接入并开始使用IPv6,为IPv6互联网增加了超过500万个新眼球. 英国IPv6项目于 ...
- 【】URL中的文本IPv6地址的格式RFC2732
RFC2732规范中URL中的文本IPv6地址的格式, 截取其中重要部分原文如下: RFC 2732 Format for Literal IPv6 Addresses in URL's Decemb ...
- App 审核由于 IPv6 网络问题被拒
昨天 提交App Store 的时候被拒了 We discovered one or more bugs in your app when reviewed on iPhone running iOS ...
- iOS 支持 IPv6
苹果的规定:2016年6月1日提交到App Store必须支持IPv6-only网络. 官方文档:https://developer.apple.com/library/mac/documentati ...
- Google C++单元测试框架GoogleTest---AdvancedGuide(译文)下
因为AdvancedGuide文档太长,分上下两部分,本文档接googletest--AdvancedGuide(译文)上:Google C++单元测试框架GoogleTest---AdvancedG ...
- 中大东校小米路由器mini实现inode上网,ipv6 wifi【中大】【东校】【inode】【ipv6】
还有不到4个月就要毕业了,前几天半夜没事捣鼓小米路由没想到竟然实现了wifi的ipv6. 正好又安利了同学一台小米路由mini,从刷机到inode到ipv6全搞了一遍. 这里将教程写出来,服务学弟妹. ...
- BAS/BRAS/RADIUS简介
标签: java radius协议 linux radius认证服务器 转自: http://blog.csdn.net/sun93732/article/details/5999274 由R ...
随机推荐
- 多线程之Parallel类
Parallel类是对线程的一个抽象.该类位于System.Threading.Tasks名称空间中,提供了数据和任务并行性. Paraller类定义了数据并行地For和ForEach的静态方法,以及 ...
- Apache许可翻译
https://www.apache.org/licenses/LICENSE-2.0 Apache许可 2.0 2004.1 使用.复制和发行的术语和条件. 1 定义 "License&q ...
- WebService入门实例教程
什么是WebService 通过使用WebService,您的应用程序可以向全世界发布信息,或提供某项功能,它是基于Web的服务,通过Web进行发布.查找和使用. WebService脚本平台需支持X ...
- 38. Count and Say - Unsolved
https://leetcode.com/problems/count-and-say/#/description The count-and-say sequence is the sequence ...
- Vue.js 运行环境搭建详解(基于windows的手把手安装教学)及vue、node基础知识普及
Vue.js 是一套构建用户界面的渐进式框架.他自身不是一个全能框架——只聚焦于视图层.因此它非常容易学习,非常容易与其它库或已有项目整合.在与相关工具和支持库一起使用时,Vue.js 也能完美地驱动 ...
- 一篇文章介绍GItHub的基础使用
最近复习了一下Git的使用,简单总结了一些.以供以后查阅和同行参考. 一,安装 首先是Linux下: 打开shell ,输入 sudo apt-get install git-core 之后回车输入密 ...
- [python]-数据科学库Numpy学习
一.Numpy简介: Python中用列表(list)保存一组值,可以用来当作数组使用,不过由于列表的元素可以是任何对象,因此列表中所保存的是对象的指针.这样为了保存一个简单的[1,2,3],需要有3 ...
- webpack实用配置
前面的话 上文介绍了webpack入门,本文将详细介绍webpack实用配置 版本号 以entry.js打包为bundle.js为例,出口的filename可以设置为[id].[name].[hash ...
- 代码管理器 TFS2013
多人开发代码管理器肯定是少不了的,出于项目需要在服务器上装了tfs2013用于代码管理,既然用vs进行开发自然选择微软自家的tfs.记录下安装和使用起来的过程. 安装 TFS2013(Team Fou ...
- Angular JS从入门基础 mvc三层架构 常用指令
Angular JS从入门基础 mvc模型 常用指令 ★ 最近一直在复习AngularJS,它是一款优秀的前端JS框架,已经被用于Google的多款产品当中.AngularJS有着诸多特性,最为核心 ...