当NAT嵌入IGD中时!金十数据网站本文档是互联网工程职责组(IETF)的产物。它代外了IETF社区的共鸣。它已授与大众审查,并已被互联网工程指挥小组(IESG)接受出书。相合互联网轨范的更众消息,请参阅RFC 5741的第2节。
相合本文献确当前形态、任何改正外以及奈何供给反应的消息,请拜候6970.
版权全部(c)2013 IETF Trust和被认定为文献作家的职员。保存全部权益。
本文献受BCP 78和IETF信任与IETF文献相干的执法划定的管束(e-info)自本文献颁布之日起生效。请谨慎查看这些文献,由于它们描摹了您对本文献的权益和限定。从本文档中提取的代码组件务必包含《信任执法条件》第4.e节中所述的简化BSD许可文本,而且供给的代码组件不受简化BSD授权中所述保障的管束。
*IGD中没有嵌入NAT成效(第5.4节)。比如,正在DS Lite或NAT64陈设中,这是一定的。
从IGD停用UPnP IGD-PCP IWF和依赖仅PCP形式的触发器不正在本文档的局限内。
举动指导,图2显示了UPnP论坛[IGD2]采用的架构模子。正在图2中,应用了以下UPnP术语:
*“IGD”是一个声援UPnP IGD的途由器,它平凡是一个NAT或防火墙。
比如,当PCP用于限定运营商级NAT(别名供给商NAT),而内部主机不断应用UPnP IGD时,此模子无效。正在如此的场景中,图3显示了更新后的模子。
正在图3所示的更新模子中,能够正在数据旅途中碰到一个或两个级另外NAT。底细上,除了运营商级NAT以外,IGD还能够嵌入NAT成效(图4)。
为了确保UPnP IGD和PCP之间的得胜互通,正在IGD中嵌入互通成效。正在图3中界说的模子中,全部面向UPnP IGD任职器的成效、PCP客户端[RFC6887]和UPnP IGD-PCP互通成效都嵌入正在IGD中。正在本文献的其余个别中,“IGD-PCP IWF”指的是UPnP IGD-PCP互通成效,此中包含PCP客户端成效。
正在没有IGD-PCP IWF到场的状况下,IGD限定点将检索局限有限的外部IP地方和端标语,而且不行用于与位于NAT2以外的主机通讯(即,由IGD分派,而不是由NAT2分派的主机,如图4所示)。
ExternalIPAddress:外部IP地方只读变量,具有上一个PCP反响的值,假设尚未收到任何反响,则为空字符串。该形态以每个IGD限定点为根底实行存储。
PortMappingEnabled(端口照射已启用):PCP不声援停用动态NAT照射,由于PCP的初始目的是简化运营商级NAT的穿越。声援这种按用户成效大概会使运营商级NAT过载。只容许“1”:即,假设发出差异于1的值的信号,UPnP IGD-PCP互通成效务必发回纰谬。
IGD:1没有界说形态丧失状况下的手脚;IGD:2不必要将该形态保生计安谧的存储中,即容许该形态正在重置/从头启动后不断生计。UPnP IGD-PCP互通成效务必声援IGD:2手脚。
RemoteHost:长途对等IP地方。请注意,IGD:2容许应用域名,该域名务必解析为IP地方。照射到FILTER选项的长途对等IP地方字段。
ExternalPort:外部端标语。照射到MAP新闻中的“倡议的外部端口”字段。
InternalPort:内部端标语。照射到MAP新闻中的“内部端口”字段。
InternalClient:内部IP地方。请注意,IGD:2容许应用域名,该域名务必解析为IP地方。照射到THIRD_PARTY选项的“内部IP地方”字段。
IGD-PCP互通成效保护由内部主机正在PCP任职器中实例化的行动照射的列外。更众消息请参睹第5.7节。
通过发出带有PREFER_FAILURE选项的MAP乞请,将此乞请中继到PCP任职器。倡议应用较短的应用寿命(比如60秒)。
GetExternalIPAddress():MAP。这能够从任何行动照射中研习。假设没有行动照射,则IGD-PCP IWF能够乞请短时候照射(比如,到甩掉任职(TCP/9或UDP/9)或极少其他端口)。然而,一朝该照射过时,随后的隐式或显式动态照射大概会照射到差异的外部IP地方。相合更众辩论,请参睹[RFC6887]的第11.6节。
GetListOfPortMappings():相合更众消息,请参阅第5.7节。IGD-PCP互通成效保护PCP任职器中实例化的行动照射列外。IGD-PCP互通成效正在当地解决此乞请。
本节列出PCP纰谬代码和相应的UPnP IGD代码。特定于IGD:2的纰谬代码被相应地标志。
假设没有为IGD分派IPv4地方/IPv6前缀,或者IGD无法确定是否应联络上逛PCP任职器,则不得移用IGD-PCP互通成效。
假设IGD确定它应当与上逛PCP任职器筑造通讯(比如,因为DHCP筑设或之前仍然与PCP任职器通讯),则假设IGD-PCP IWF未能与该PCP任职器筑造通信,则向乞请IGD限定点返回“501 ActionFailed”纰谬新闻。注意,IGD-PCP IWF以与任何PCP客户端肖似的式样实行PCP新闻验证和重传[RFC6887]。
为了筑设要使用于入站和出站流量的安闲政策,能够应用UPnP IGD来限定当地防火墙引擎。是以,不必要IGD-PCP IWF。
应用IGD-PCP IWF限定上逛PCP限定的防火墙超过了本文献的局限。
IGD-PCP IWF务必将内部IGD限定点实例化的全部照射当地存储正在PCP任职器中。全部照射都应存储正在很久存储器中。
收到PCP任职器的PCP MAP反响后,IGD-PCP互通成效务必提取所附照射,并将其存储正在当地照射外中。当地照射外是PCP任职器为给定订户保护的照射外的映像。
存储正在当地照射外中的每个照射条件都与[RFC6887]中所辩论的寿命相干联。第5.9节辩论了IGD-PCP互通成效的出格注意事项。
当NAT嵌入IGD中时,IGD-PCP IWF更新从IGD限定点汲取的照射新闻的实质。这些新闻将包蕴属于内部主机的IP地方和/或端标语。IGD-PCP IWF务必应用属于IGD外部接口的IP地方和/或端标语更新此类新闻(即,正在NAT1操作之后,如图4所示)。
IGD-PCP IWF截获IGD限定点发出的全部WANIP相接新闻。合于每个如此的新闻,IGD-PCP IWF然后天生一个或众个相应的乞请(参睹第4.1、4.2和4.3节),并将它们发送到所供给的PCP任职器。
IGD-PCP IWF向PCP任职器发送的每个乞请都务必响应第一个NAT中强造实施的照射消息。尤其是,乞请的内部IP地方和/或端标语被IGD的NAT分派的IP地方和(或)端标语所代替。合于反向旅途,IGD-PCP IWF截获PCP反响新闻并天生WANIPConnection反响新闻。天生的WANIPConnection反响新闻的实质配置如下:
*由IGD限定点初始配置并存储正在IGD NAT中的内部IP地方和/或端标语用于更新汲取到的PCP反响中的相应字段。
IGD中实例化的照射的保存期应当是由终止PCP任职器分派的。正在任何状况下,保存期都不得低于终止PCP任职器分派的保存期。
假设IGD-PCP IWF未能向其PCP任职器发送MAP乞请,则会遵照第5.1节中界说的手脚。
正在从PCP任职器汲取到PCP MAP反响后,将相应的UPnP IGD门径返回到乞请IGD限定点(依照陈设的场景,新闻的实质遵照第5.5节或第5.4节中列出的倡议)。流程示比如图5所示。
假设从PCP任职器汲取到PCP纰谬,则IGD-PCP IWF会天生相应的WANIPConnection纰谬代码(睹第4.3节),并将其发送给乞请的IGD限定点。假设返回早夭命纰谬(比如,NETWORK_FAILURE、NO_RESOURCES),PCP IWF能够正在30秒后向PCP任职器从头发送肖似的乞请。假设汲取到否认回复,则将纰谬中继到乞请IGD限定点。
辩论:极少使用标准(比如,uTorrent、Vuze、eMule)正在发送UPnP乞请后等候90秒或更长时候的反响。假设崭露早夭命纰谬,从头发送乞请大概会导致PCP任职器做出断定反响。是以,IGD限定点不晓畅瞬态差错。
[RFC6887]中界说了一个名为“PREFER_FAILURE”的专用选项,用于切换PCP乞请新闻中的手脚。唯有当IGD限定点乞请特定的外部端口时,IGD-PCP IWF才会正在向PCP任职器发出乞请时插入此选项。
正在从IGD限定点汲取到AddPortMapping()后,假设没有NAT嵌入IGD中或遵守第5.5节的划定实行更新,则IGD-PCP IWF必老生成一个PCP MAP乞请,此中包蕴IGD限定点将指示的全部乞请的照射消息。其余,IGD-PCP IWF务必正在天生的PCP乞请中插入PREFER_FAILURE选项。
假设IGD-PCP IWF未能向其PCP任职器发送MAP乞请,则会遵照第5.1节中界说的手脚。
1.假设返回早夭命纰谬,则IGD-PCP IWF能够正在30秒后向PCP任职器从头发送肖似的乞请,而不将纰谬中继到IGD限定点。IGD-PCP IWF大概会反复此进程,直到收到断定应答或到达某个最大重试限定。当到达最大重试限定时,IGD-PCP IWF将一条否认新闻中继到IGD限定点,并将ConflictInMappingEntry举动纰谬代码。最大重试限定是特定于告终的;其默认值为2。
IGD限定点能够发出具有差异乞请的外部端标语的新乞请。该进程平凡由IGD限定点反复,直到汲取到断定应答或到达某个最大重试限定。
假设PCP任职器或许创筑或续订具有乞请的外部端口的照射,则它会向IGD-PCP IWF发送断定反响。正在汲取到来自PCP任职器的反响后,IGD-PCP IWF将返回的照射存储正在其当地照射外中,并向乞请IGD限定点发送相应的断定应答。这个回复终止了换取。
图6显示了当PCP任职器知足IGD-PCP IWF的乞请时发作的流换取示例。图7显示了当乞请的外部端口不行用时的新闻换取。
注意:依照极少实践,极少UPnP 1.0限定点告终,比如uTorrent,只需众次实验肖似的外部端口(平凡为4次),然后正在端口正正在应用时腐化。还要注意,极少使用标准应用GetSpecificPortMappingEntry()来确定照射是否生计。
收到来自IGD限定点的GetSpecificPortMappingEntry()后,IGD-PCP IWF务必最先查抄外部端标语是否被乞请的IGD限定点将应用。假设乞请的IGD限定点仍然正在应用外部端口,则IGD-PCP IWF务必发回与乞请结婚的照射条件。假设没有,IGD-PCP IWF务必向PCP任职器中继一个MAP乞请,该乞请的保存期较短(比如60秒),包含PREFER_FAILURE选项。假设IGD-PCP IWF未能向其PCP任职器发送MAP乞请,则会遵照第5.1节中界说的手脚。假设乞请的外部端口正正在应用,PCP任职器将向IGD-PCP IWF发送PCP纰谬新闻,指示CANNOT_PROVIDE_external为纰谬因为。然后,IGD-PCP IWF将否认新闻中继到IGD限定点。假设端口未应用,PCP任职器将创筑照射,并将断定反响发送回IGD-PCP IWF。一朝被IGD-PCP IWF汲取到,它务必将指示NoSuchEntryInArray的否认新闻中继到IGD限定点举动纰谬代码,以便IGD限定点将晓畅所查问的照射不生计。
正在IGD:2中,咱们假设IGD使用妥善的安闲政策来确定限定点是否有权删除一个或一组照射。当授权腐化时,“606操作未授权”纰谬代码将返回给乞请限定点。
假设照射正在当地外中结婚,则会天生PCP MAP删除乞请。假设IGD中未启用NAT,则IGD-PCP IWF将应用DeletePortMapping()中包蕴的输入参数。假设正在IGD中启用了NAT,则IGD-PCP IWF将应用当地NAT分派的相应IP地方和端标语。
假设IGD-PCP IWF未能向其PCP任职器发送MAP乞请,则会遵照第5.1节中界说的手脚。
当从PCP任职器汲取到断定应答时,IGD-PCP IWF更新其当地照射外(即,删除相应的条件),并将删除操作的结果知照IGD限定点。一朝PCP任职器汲取到PCP MAP删除乞请,它就会删除相应的条件。假设相应条方针删除得胜,则发回PCP MAP SUCCESS反响;假设没有,则将包蕴相应纰谬因为的PCP纰谬新闻(睹第4.3节)发送回IGD-PCP IWF。
假设应用DeletePortMappingRange(),则IGD-PCP IWF会正在其当地照射外中实行查找,以检索由乞请限定点实例化的与信号端口局限结婚的各个照射(即,授权查抄)(即,外部端口正在DeletePortMappingRange()的“StartPort”和“EndPort”参数内)。假设未找到照射,则将“730 PortMappingNotFound”纰谬代码发送到IGD限定点(图9)。假设找到一个或众个照射,IGD-PCP IWF会天生与这些照射相对应的单个PCP MAP删除乞请(参睹图10中所示的示例)。
IGD-PCP IWF能够向乞请IGD限定点发送断定应答,而无需等候从PCP任职器汲取全部应答。
图10显示了IWF汲取DeletePortMappingRange()时发作的换取。正在本例中,正在当地外中只保存两个外部端标语正在6000-6050局限内的照射。IWF发出两个MAP乞请以删除这些照射。
假设正在照射更新进程中碰到纰谬,IGD-PCP互通成效无法将纰谬知照IGD限定点。
当IGD-PCP IWF与DHCP任职器位于统一职位时,务必应用当地DHCP任职器中的形态更新IGD-PCP IWF保护的形态。尤其是,假设IP地方过时或被内部主机开释,IGD-PCP IWF务必删除绑定到该内部IP地方的全部照射。
正在IGD-PCP IWF的外部IP地方调动时,IGD-PCP IWF能够更新其保护的照射。唯有当IGD-PCP IWF保护无缺的形态外时,本领告终这一点。假设PCP任职器中没有横跨端口配额,则IGD-PCP IWF将汲取新的外部IP地方和端标语。IGD-PCP IWF无法将外部IP地方和端标语的更改知照内部IGD限定点。过时照射将由PCP任职器保护,直到其应用寿命到期。
[RFC6887]界说了PCP任职器向PCP客户端知照与其保护的照射相干的更改的进程。当收到未经乞请的知照时,IGD-PCP IWF会应用PREFER_FAILURE选项发出一个或众个MAP乞请,以从头装配其照射。假设PCP任职器无法创筑乞请的照射(用cannot_PROVIDE_EXTERNAL纰谬反响发出信号),则IGD-PCP IWF无法将外部IP地方和端标语的任何更改知照内部IGD限定点。
从PCP任职器汲取的未经乞请的PCP MAP反响被举动任何平常MAP反响来解决。假设反响指示外部IP地方或端口已更改,则IGD-PCP IWF无法将此更改知照内部IGD限定点。
默认状况下,应使用IGD:2拜候限定哀求和授权级别[IGD2]。当应用IGD:2时,唯有正在应用了身份验证和授权[IGD2]的状况下,才应容许代外第三方实行操作。当唯有IGD:1可用时,不应容许代外第三方实行操作。
本文档界说了为属于统一订户的第三方设置创筑PCP照射的进程。如[RFC6887]第13.1节所述,务必启用防备恶意用户代外第三方创筑照射的门径。尤其是,除非要发送PCP新闻的搜集是统统受信赖的,不然不得启用THIRD_PARTY选项,比如,装配正在PCP客户端、PCP任职器以及它们之间的搜集上的拜候限定列外(access control lists,ACL),以便这些ACL只容许从受信赖的PCP客户端到PCP任职器的通讯。
转载请注明出处:MT4平台下载
本文标题网址:当NAT嵌入IGD中时!金十数据网站