首页 > 通信行业标准(YD) > YD/T 3233-2017 支持分配端口段的 DHCPv4 选项技术要求
YD/T 3233-2017

基本信息

标准号: YD/T 3233-2017

中文名称:支持分配端口段的 DHCPv4 选项技术要求

标准类别:通信行业标准(YD)

标准状态:现行

出版语种:简体中文

下载格式:.zip .pdf

下载大小:758284

相关标签: 分配 端口 技术

标准分类号

关联标准

出版信息

相关单位信息

标准简介

YD/T 3233-2017.Dynamic Host Configuration protocol (DHCP) Option for Port Set Assignment.
1范围
YD/T 3233规定了IPv4动态主机配置服务为IPv4客户端分配携带端口段信息的IPv4地址资源的选项,并描述了该选项在DHCP过程中客户端与服务器的交互方式及各自处理方式,可实现过渡时期IPv6网络中的IPv4地址复用。
YD/T 3233适用于IPv4-over-IPv6场景下需要地址复用的IPv4地址分配情况,并且服务器分配的是大小为2的整数次幂的连续端口段。
2规范性引用文件
下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅所注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。
IETF RFC 2131动态主机配置协议(Dynamic Host Configuration Protocol)
IETF RFC 3927动态配置IPv4本地链路地址( Dynamic Configuration of IPv4 Link-Local Addresses )
IETF RFC 5508 ICMP 协议对NAT行为要求(NAT Behavioral Requirements for ICMP)
IETF RFC 5961提高TCP防备窗口内随机化攻击鲁棒性(Improving TCP's Robustness to Blind In-Window Attacks)

标准图片预览






标准内容

ICS33.040.40
中华人民共和国通信行业标准
YD/T3233—2017
支持分配端口段的DHCPv4选项技术要求Dynamic Host Configuration protocol (DHCP) Option for PortSet Assignment
2017-04-12发布
中华人民共和国工业和信息化部2017-07-01实施
2规范性引用文件
3术语、定义和缩略语
3.1术语和定义
3.2缩略语
用户一服务器交互
5.1动态分配公网IPv4地址.
5.2复用曾经使用的动态共享地址,6服务器行为,
6.1行为描述
6.2DHCP4o6服务器同时分配共享和非共享IPv4地址7客户端行为
7.1行为描述
7.2共享地址的使用.
8对RFC2131的修改
9DHCPv4端口参数选项
9.1DHCPv4端口参数选项格式,
9.2DHCPv4端口参数选项示例.
10安全性考虑
10.1拒绝服务
端口随机化
参考文献.
YD/T3233—2017
YD/T32332017
本标准按照GB/T1.1—2009给出的规则起草请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别这些专利的责任。本标准由中国通信标准化协会提出并归口。本标准起草单位:清华大学、中国信息通信研究院、中国联合网络通信集团有限公司、华为技术有限公司。
勇、孙琪、陈煜驰、赵锋、周光涛、张本标准起草人:崔
长震、郭大勇。
1范围
支持分配端口段的DHCPV4选项技术要求YD/T3233—2017
本标准规定了IPv4动态主机配置服务为IPv4客户端分配携带端口段信息的IPv4地址资源的选项并描述了该选项在DHCP过程中客户端与服务器的交互方式及各自处理方式,可实现过渡时期IPv6网络中的IPv4地址复用。
本标准适用于IPv4-over-IPv6场景下需要地址复用的IPv4地址分配情况,并且服务器分配的是大小为2的整数次幕的连续端口段。2规范性引用文件
下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅所注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。IETFRFC2131动态主机配置协议(DynamicHostConfigurationProtocol)IETFRFC3927动态配置IPv4本地链路地址(DynamicConfigurationofIPv4Link-LocalAddresses)
IETFRFC5508
ICMP协议对NAT行为要求(NATBehavioralRequirementsforICMP)IETFRFC5961
IETFRFC6056
IETFRFC6269
IETFRFC6346
IETFRFC7596
IETFRFC7597
IETFRFC7598
提高TCP防备窗口内随机化攻击鲁棒性(ImprovingTCP'sRobustnesstoBlindIn-WindowAttacks)
传输协议端口随机化的建议(RecommendationsforTransport-ProtocolPortRandomization)
IP地址共享的问题(IssueswithIPAddressSharing)缓解IPv4地址紧缺的地址加端口方法(TheAddressplusPort(A+P)Approachtothe IPv4 Address Shortage)
轻量级4over6技术:轻型双栈架构扩展(Lightweight4over6:AnExtensiontotheDual-Stack Lite Architecture)基于封装方式的地址及端口影射方法(MappingofAddressandPortwithEncapsulation (MAP-E))
基于DHCPv6的软线地址及端口映射客户端配置选项(DHCPv6OptionsfonConfiguration of SoftwireAddress andPort-Mapped Clients)YD/T3233—2017
3术语、定义和缩略语
3.1术语和定义
下列术语和定义适用于本文件。3.1.1DHCPv4-over-DHCPv6
DHCPv6协议的扩展,使DHCPv6报文能够承载DHCPv4交互信息。3.1.2DHCP4o6服务器
DHCPv4-over-DHCPv6服务器,能跨越IPv6单栈网络为客户端动态配置IPv4地址等参数。3.1.3DHCPV4-QUERY
用于传输DHCPDISCOVER和DCHPREQUEST等客户端发送给服务器的请求消息。3.1.4DHCPV4-RESPONSE
用于传输DHCPOFFER和DCHPACK等服务器对客户端的回复消息。3.1.5端口参数选项OPTION_PORTPARAMSV4DHCPv4报文中的端口段选项,用于携带端口段信息。3.2缩略语
下列缩略语适用于本文件:
DHCPv4
DHCPv6
4概述
用户侧设备
customer premise equipmen
IPv4动态主机配置协议I免费标准bzxz.net
IPv4 Dynamic Host Configuration ProtocolIPv6动态主机配置协议
Dynamic Host Configuration Protocol for IPv6自前由于全球IPv4地址资源消耗始尽,一些大型互联网服务供应商(ISP)虽然仍持有一定的IPv4地址资源,但将无法为所有用户分配IPv4公网地址。为应对这一问题,目前有两种解决方案:a)使用网络地址转换(NAT):
b)将同一IPv4公网地址的多个互不重叠的端口段分配给多个设备(可以是CPE或终端主机)。本标准的技术思想是基于第二种解决方案。本标准利用了DHCPv4-oVer-DHCPv6机制,此机制中提出了一种DHCP4o6server,其可以跨越IPv6网络向用户传输DHCPv4配置信息。本标准定义了一种新型的DHCPv4选项一DHCPv4端口参数选项(OPTION_PORTPARAMSV4),此选项允许DHCPv4服务器在IPv4地址分配过程中将一组端口分配给客户端。通过将同一IPv4地址的多个互不重叠的端口段分配给多个用户,即可实现这些用户共享这个IPv4地址并正常使用IPv4服务。
YD/T32332017
本标准中描述的DHCPv4端口段参数选项适用于为IPv6网络中的用户分配IPv4地址的应用场景(见IETFRFC6346),如图1所示。DHCP406
服务器
DHCP客户端
IPv6接入网
图1应用场景示意
5用户一服务器交互
5.1动态分配公网IPv4地址
IPv4互联网
分配IPv4地址流程如图2所示,通过使用DHCPv4-over-DHCPv6机制,DHCPv4消息在DHCPV4-QUERY和DHCPV4-RESPONSE两种DHCPv6消息的选项中传输。在引入DHCPv4端口参数选项后,客户端与服务器的交互过程如下:c)客户端构造要嵌入DHCPV4-QUERY传输的DHCPv4DHCPDISCOVER消息,DHCPDISCOVER应包括以下选项:用户标识符,DHCPv4端口参数选项。客户端可以在DHCPv4端口参数选项中PSID-Len域内插入非零值,表示自已想要从服务器得到的端口段的大小。d)DHCP4o6服务器每一个接收到包含有DHCPDISCOVER的DHCPV4-QUERY消息时,回复一个在”yiaddr字段包含IPv4地址的DHCPOFFER消息。这个DHCPOFFER消息应包括含DHCPv4端口参数选项,其携带限定的端口段信息。如果DHCP4o6服务器收到了DHCPv4端口参数选项中PSID-Len域非零的消息,DHCP4o6服务器可能会根据策略下发用户请求的端口段。DHCPOFFER封装在DHCPV4-RESPONSE消息中发往客户端。e)客户端收到所有的DHCPOFFER消息并且根据配置参数选择其中一个租约。然后发送包合含服务器标识和相对应的DHCPv4端口参数选项的DHCPREQUST消息。f)DHCPREQUEST标识的服务器收到客户端的消息后为其建立绑定表。绑定信息包括用户标识符,IPv4地址和PSID。这些参数用于服务器和客户端识别任何DHCP消息中包含的租约信息。然后,服务器回复包含客户端请求参数的DHCPACK消息。服务器也可以存储绑定用户IPv4配置信息设备的IPv6地址。
g)客户端从DHCPACK中接收到配置参数,但不能进行诸如ARP之类的地址重复检查。h)如果客户端发送DHCPRELEASE消息释放地址租约,消息中应包括用户标识符,分配的IPv4地址和端口段信息。
YD/T3233—2017
5.2复用曾经使用的动态共享地址开始
客户端构造包含用户标识符,
DHCPv4端口参数选项的
DHCPDISCOVER报文,嵌入
DHCPV4-QUERY发送给DHCP406
服务器
DHCP406服务器收到请求后
构造DHCPOFFER,其中包含端
口段参数选项,联入到DHCPV4
RESPONSE中回复
客户端获得DHCPOFFER后选择
其中一个租约,并回复
DHCPREQUEST
DHCP406服务器收到后建立用
户标识符、IPv4地址及PSID的额绑定表,并回复包含用户请求
参数的DHCPACK
客户端接收到配置参数,不能
进行地址重复检查
分配地址参数流程
如果客户端保存了之前分配的地址和端口段信息,IETFRFC2131中3.2节描述的过程应遵守。包含用户请求的端口段参数选项应包含在DHCPDISCOVER消息中。6服务器行为
6.1行为描述
只有客户端请求在ParameterRequestList(Option55)中包含了DHCPv4端口参数选项时,DHCP4o64
服务器才能回复DHCPv4端口参数选项。YD/T3233—2017
DHCP4o6服务器在收到包含DHCPV4端口参数选项的消息时,应回复此选项。为了在地址共享的环境下达到地址和端口的动态管理,服务器应维护地址和端口池,地址和端口池与正常DHCP服务器运行的地址池功能相同。服务器应以地址和PSID为主键进行租约信息管理及查询。租约数据库应包含地址和PSID信息。
当服务器从客户端收到参数列表中包含DHCPV4端口参数选项的DHCPDISCOVER消息时,服务器应该为客户端选择一个IPv4地址和端口段。选择的逻辑与IETFRFC2131中4.3.1基本相同。不同点在于服务器根据IP地址和PSID来查找客户端的绑定信息和可用租约。服务器选择了IPv4地址和端口段后,发送DHCPOFFER给客户端。当服务器收到包含DHCPv4端口参数选项的DHCPREQUEST消息时,服务器应根据相关参数和DHCPv4端口参数选项决定客户端的状态,见IETFRFC2131的4.3.2服务器在收到包含DHCPv4端口参数选项的DHCPRELEASE消息时,服务器根据IPv4地址和DHCPv4端口参数选项中的PSID值查找租约信息,并释放此租约。端口段分配应和地址分配同时进行,因此服务器应在同一个DHCP消息中分配地址和端口段信息。IP地址的租约信息同样适用于端口段。6.2DHCP4o6服务器同时分配共享和非共享IPv4地址DHCP4o6服务器可能同时为支持和不支持DHCPv4端口参数选项的客户端服务。由于共享IPv4地址分配方式和正常IPv4地址分配方式不同,DHCP4o6服务器应实现一种机制保证不支持DHCPv4端口参数选项的客户端不会收到共享地址。例如:服务器维护两个地址池,其中一个地址池为请求共享地址的客户端分配共享IPv4地址和端口段。7客户端行为
7.1行为描述
当客户端请求一个连续端口段时,应在参数请求列表ParameterRequestList(Option55)中包含DHCPv4端口参数选项。客户端将通过该选项中的参数获得端口段信息。当客户端更新或者释放DHCP租约时,应将偏移值、PSID长度及PSID添加到DHCPv4端口参数选项中,通过相应的DHCPV4消息发送给服务器。在DHCPDISCOVER消息中,客户端可能会在DHCPv4端口参数选项中的PSID-len中使用一个非零值。客户端利用这个值请求一个特定大小的端口段。7.2共享地址的使用
多个客户端共享一个IPv4地址,分配的共享地址只适用于特定使用范围。客户端应实现一种机制保证仅有分配的共享IPv4地址的端口被使用。任何使用共享IPv4地址的数据传输,客户端都应遵循以下规则:一应使用端口敏感的协议或ICMP(IETFRFC5508)。5
YD/T3233—2017
所有来自共享IPv4地址的连接的源地址端口都应使用分配的端口段内客户端丢弃所有目标端口不在所分配端口段内的数据报文。为了避免由于地址共享带来的地址冲突,客户端不能将链路地址配置成共享IPv4地址。客户端实现这些规则的机制不在本标准讨论范围之内。在客户端DHCPv4-oVer-DHCPv6配置机制失败的情况下,客户端不能配置链路地址(见IETFRFC3927)(169.254.0.0/16地址区间)。8对IETFRFC2131的修改
除了在本标准中提到的改变,为了实现动态分配共享IPv4地址,下列IETFRFC2131章节中所描述的行为也应进行修改:
a)2.2节中客户端不能探测新获得的地址是否有其他设备在使用(如ARP)。b)3.1节第5项中客户端不能对新获得的地址做最终检查,9DHCPv4端口参数选项
9.1DHCPv4端口参数选项格式
DHCPv4端口参数选项(OPTIONPORTPARAMSV4)制定了用于进行动态共享地址分配的端口集合,采用DHCPv4选项实现,并兼容现有选项。该选项使用了与IETFRFC7598中4.4节描述的“MAPPortParametersOption”相同的域。DHCPv4端口参数选项的格式如图3所示。0
option-code
length
offset
PSID-len
图3DHCPV4端口参数选项格式
各字节具体含义如下:
option-code:OPTION_PORTPRARAMSV4(TBA)。option-length:选项长度:本选项长度为3字节。offset:(PSIDoffset)8比特长的数值用于表示MAP算法中的端口范围/偏移量(A-bits),IETFRFC7597的5.1.1节。有效值为0~16,MAP客户端默认使用4。在IETFRFC7596场景下,该字段没有意义。
PSID-len:PSID域中的有效比特位的长度(k),当设定为O时,PSID域应被不计。继前“a”个比特后,PSID中后面k个比特表示可用的端口数。即地址共享率为2~k6
YD/T3233—2017
PSID:16比特长的PSID值。PSID表示了分配给CE的端口段。前k个比特表示了PSID值,后16~k个比特补0。
参考文献[4]中的Section5.1节详细描述了客户端如何解析PSID,但接收到的PortPatametersoption携带确切的PSID时,客户端应将这个PSID配置到其DHCPv4overDHCPv6接口。9.2DHCPv4端口参数选项示例
DHCPv4端口参数选项在MAP-E中的应用可以参考[4],下面列举了该选项在lightweight4over6场景下的使用方法。
具体而言,PSID-len为6,PSID为0001010000000000时:固定前缀可变后缀
端口段索引:
可用端口:
(5120)
000101)0000000000
(5120)
000101)0000000000
0001010000000001(5121)
000101|0000000010(5122)
0001011111111111(6143)
这个端口段表示了端口号为5120-6143的连续端口集合。10安全性考虑
拒绝服务
如果IP地址被使用在共享的媒介中或者IP地址分配不需要进行接入网络身份认证,本解决方案通常会遭到DoS攻击。本方案应该只用于点到点连接、隧道,或者一种链路层认证在IP地址分配之前完成的环境中,并不适用于共享媒介的场景。10.2端口随机化
由于地址共享率(即分配给CPE的端口空间大小)不确定,要保证端口随机化(见IETFRFC6056)会或多或少的存在一些难度。主机只能在一个固定的端口范围(见IETFRFC6269)内进行端口随机化。更多关于提高TCP防备窗口内随机攻击的鲁棒性的讨论见IETFRFC5961。为了防御攻击,应该使用除(IPv4)源端口随机化之外的其他方法,举例来说,使用[3]中描述的方法来防御DNS攻击,IETFRFC5961来提高TCP防备窗口内随机攻击的鲁棒性,或使用IPv6协议。选择端口时保证平均信息量的协议在[4]中讨论。
YD/T3233—2017
参考文献
[1]Q.Sun,Y.Cui, etc.DHCPv4overDHCPv6Transport.IETFRFC7341.[2] Y. Cui, P. Wu,etc.DHCPv4 over IPv6 Transport. draft-ietf-dhc-dhcpv4-over-ipv6[3] P. Vixie, D. Dagon. Use of Bit Ox20 in DNS Labels to Improve Transaction Identity. I-D. vixie- dnsext-dnsox2o.
[4] Gabor Bajko, Teemu Savolainen, etc. Port Restricted IP Address Assignment. I-D.bajko-pripaddrassign8
小提示:此标准内容仅展示完整标准里的部分截取内容,若需要完整标准请到上方自行免费下载完整标准文档。