使用按需 IPv4 地址分配为双堆栈 PPP 用户保留 IPv4 地址
使用按需 IPv4 地址分配为双栈 PPP 用户保存 IPv4 地址
在基于 PPP 的双堆栈接入网络场景中,只要 IPv4 或 IPv6 会话处于活动状态,双堆栈会话就会保持运行。默认情况下,当用户终止 IPv4 会话时,BNG 将保留 AAA 在登录时分配的 IPv4 地址。双栈 PPP 会话运行时,地址不会释放。如果在会话运行时重新协商 IPv4 会话,则会为用户的 IPv4 会话分配相同的 IPv4 地址。此功能会导致 IPv4 地址使用效率低下。
如果用户不再使用 IPv4 服务,则可以将路由器配置为释放 IPv4 地址,以保留 IPv4 地址。此功能在初始 PPP 身份验证和 IPv6 地址或前缀分配之后提供按需 IP 地址分配或取消分配。
当在 PPP 接口的 inet 家族中静态配置目的(对等方)IP 地址时,按需配置不会生效。
静态 PPP 用户的按需 IPv4 地址协商和释放概述
本文介绍静态双栈PPP用户的按需IPv4地址分配和取消分配。
静态 PPP 用户的 IPv4 地址协商
静态 inet 家族的 IPv4 地址协商过程和通过静态 PPP 接口进行地址协商的过程如下:
PPP 链路控制协议 (LCP) 已建立,并成功协商了 IPv6 控制协议。
宽带网络网关 (BNG) 接收来自客户端设备 (CPE) 的互联网协议控制协议 (IPCP) 配置请求,其中包含 0.0.0.0 IPv4 地址选项。
BNG 向 CPE 发送带有本地 IPv4 地址选项的 IPCP 配置请求。
BNG 使用 IPv4-Release-Control VSA (26-164)(如果已配置)向 RADIUS 服务器发送 Access-Request 消息。
BNG 从 CPE 接收 IPCP 配置确认。
BNG 接收来自 RADIUS 服务器的访问接受消息。
如果收到Framed-IP-Address属性,BNG将执行重复地址检查(如果已配置)。如果重复地址检查成功完成,PPP 将继续与 CPE 协商 IPCP。否则,将通过向 CPE 发送 LCP 终止请求来关闭整个 PPP 会话。
如果收到 Framed-Pool 属性,则从 BNG 中配置的指定本地地址池中分配 IPv4 地址。如果 BNG 中未配置 IP 池,并且没有其他可用 IP 池,BNG 会向 CPE 发送 LCP 协议拒绝消息。
如果既未收到Framed-IP-Address属性也未收到Framed-Pool属性,则BNG将从其中一个配置的本地地址池中分配IPv4地址。如果 BNG 无法分配 IPv4 地址,BNG 将向 CPE 发送 LCP 协议拒绝消息。
如果 Access-Accept 消息中存在 ADFv4 过滤器,则需要在 BNG 中为该订阅者重新安装这些过滤器。
如果 Access-Accept 消息中同时存在 IPv4 主 DNS 地址和辅助 DNS 地址,则需要针对 BNG 中的该订阅者更新这两个地址。如果 Access-Accept 消息中存在 IPv4 主 DNS 地址或 IPv4 辅助 DNS 地址,则只需为该订阅者更新相应的 DNS 地址。
如果 IPv4 地址不可用,并且 BNG 收到来自 RADIUS 服务器的访问拒绝消息,则会发生以下情况:
如果 Access-Reject 消息包括 IPv4-Release-Control VSA (26-164),则 BNG 会向 CPE 发送 IPCP 终止请求。然后允许 CPE 重新协商 IP NCP。
如果 Access-Reject 消息不包括 IPv4-Release-Control VSA (26-164),BNG 将向 CPE 发送 LCP Protocol-Reject 消息。CPE 必须先重新协商 LCP 链路,然后才能重新协商 IP NCP。
如果 RADIUS Access-Reject 消息包含 IPCP Terminate-Request 字段,则 Reply Message 属性 (18) 的文本将附加到 Terminate-Request 字段中的信息中,并将显示在 PPP 数据中。
如果 RADIUS 服务器没有响应,则 IPCP 将终止。
BNG 向 CPE 发送具有新 IPv4 地址选项的 IPCP 配置 NACK。
用户安全策略服务(如果 inet 系列存在)已激活。
BNG 使用 IPv4-Release-Control VSA (26-164)(如果已配置)和 Framed-IP-Address 属性向 RADIUS 服务器发送即时临时计费消息(如果已配置)。
BNG 从 CPE 接收 IPCP 使用新 IPv4 地址配置请求选项。
BNG 接收来自 RADIUS 服务器的临时记账响应。
BNG 向 CPE 发送 IPCP 配置确认。
静态 PPP 用户的 IPv4 地址释放
静态 inet 系列和静态 PPP 接口地址的 IPv4 地址释放流程如下:
BNG 接收来自 CPE 的 IPCP 终止请求。
BNG 向 CPE 发送 IPCP 终止 ACK。
将发生以下作:
用户安全策略服务(如果 inet 家族存在)将取消实例化。
如果 IPv4 地址是从本地地址池中分配的,则该地址将变为可用。
IPv4 地址条目将从订阅者记录中清除。
BNG 使用 IPv4-Release-Control VSA (26-164)(如果已配置)立即向 RADIUS 服务器发送 Interim-Accounting 消息(如果已配置),但 Framed-IP-Address 属性不包括在内。
用户会话统计信息将在整个 PPP 会话中保留,并且在释放 IPv4 地址时不会清除。
BNG 接收来自 RADIUS 服务器的临时记账响应。
无论 BNG 是否收到来自 RADIUS 服务器的响应,都不会在 BNG 中执行任何作。
动态 PPP 用户的按需 IPv4 地址协商和释放概述
本文介绍动态双栈PPP用户的按需IPv4地址分配和取消分配。
动态 PPP 用户的 IPv4 地址协商
通过静态 PPP 接口为动态 inet 家族和地址协商 IPv4 地址的过程如下:
PPP 链路控制协议 (LCP) 已建立,IPv6 控制协议协商成功。
宽带网络网关 (BNG) 接收来自 CPE 的互联网协议控制协议 (IPCP) 配置请求,其中包含 0.0.0.0 IPv4 地址选项。
BNG 使用 IPv4-Release-Control VSA (26-164)(如果已配置)向 RADIUS 服务器发送 Access-Request 消息。
BNG 接收来自 RADIUS 服务器的访问接受消息。
如果收到Framed-IP-Address属性,则对BNG执行重复地址检查(如果已配置)。如果重复地址检查成功完成,则 PPP 将继续与 CPE 协商 IPCP。否则,将通过向 CPE 发送 LCP 终止请求来关闭整个 PPP 会话。
如果收到 Framed-Pool 属性,则从 BNG 中配置的指定本地地址池中分配 IPv4 地址。如果未在 BNG 中配置池,并且没有其他可用 IP 池,则会向 CPE 发送 IPCP 协议拒绝。
如果既未收到Framed-IP-Address属性也未收到Framed-Pool属性,则BNG将从其中一个配置的本地地址池中分配IPv4地址。如果 BNG 无法分配 IPv4 地址,则会向 CPE 发送 IPCP 协议拒绝。
如果 Access-Accept 消息中存在 ADFv4 过滤器,则需要在 BNG 中为该订阅者重新安装这些过滤器。
如果 Access-Accept 消息中同时存在 IPv4 主 DNS 地址和辅助 DNS 地址,则需要为 BNG 中的该订阅者更新这两个地址。如果 Access-Accept 消息中存在 IPv4 主 DNS 地址或 IPv4 辅助 DNS 地址,则只需为该订阅者更新相应的 DNS 地址。
如果 IPv4 地址不可用,并且 BNG 收到来自 RADIUS 服务器的访问拒绝消息,则会发生以下情况:
如果 Access-Reject 消息包括 IPv4-Release-Control VSA (26-164),则 BNG 会向 CPE 发送 IPCP 终止请求。然后允许 CPE 重新协商 IP NCP。
如果 Access-Reject 消息不包括 IPv4-Release-Control VSA (26-164),BNG 将向 CPE 发送 LCP Protocol-Reject 消息。CPE 必须先重新协商 LCP 链路,然后才能重新协商 IP NCP。
如果RADIUS Access-Reject消息包含IPCP Terminate-Request字段,则Reply Message属性#18的文本将附加到Terminate-Request字段中的信息中,并将显示在PPP数据中。
如果收到的是 Access-Challenge 消息而不是 Access-Accept,则会将 IPCP 协议拒绝发送到 CPE。
如果 RADIUS 服务器没有响应,则 IPCP 将终止。
BNG 向 CPE 发送具有新 IPv4 地址选项的 IPCP 配置 NACK。
将添加动态 inet 家族和本地地址,并实例化动态客户端配置文件的所有 IPv4(家族 inet)服务。
BNG 向 CPE 发送带有本地 IPv4 地址选项的 IPCP 配置请求。
BNG 使用 IPv4-Release-Control VSA (26-164)(如果已配置)和 Framed-IP-Address 属性向 RADIUS 服务器发送即时临时计费消息(如果已配置)。
动态服务配置文件和合法拦截服务(如果 inet 系列存在)的所有 IPv4 服务,如上升数据过滤器 (ADF) 和防火墙过滤器)都将被实例化,并将服务计费启动消息(如果配置了服务计费且 IPv4 服务不是多族服务配置文件的一部分)发送到 RADIUS 服务器。如果服务实例化失败,则终止 IPCP 并启动 IPv4 地址释放流程。
BNG 收到来自 CPE 的 IPCP 配置请求,其中包含新的 IPv4 地址选项。
BNG 向 CPE 发送 IPCP 配置确认。
BNG 从 RADIUS 服务器接收服务记帐启动响应。
BNG 接收来自 RADIUS 服务器的临时记账响应。
BNG 从 CPE 接收 IPCP 配置确认。
动态 PPP 用户的 IPv4 地址释放
静态 PPP 接口上动态 inet 家族和地址的 IPv4 地址释放流程如下:
BNG 接收来自 CPE 的 IPCP 终止请求。
BNG 向 CPE 发送 IPCP 终止 ACK。
将发生以下作:
动态客户端配置文件的所有 IPv4(家族 inet)服务都将取消实例化,并移除动态 inet 家族和本地地址。
动态服务配置文件和合法拦截服务(如果 inet 家族存在)的所有 IPv4 服务,如上升数据过滤器 (ADF) 和防火墙过滤器)都将被取消实例化。服务计费停止消息(如果配置了服务计费且 IPv4 服务不是多系列服务配置文件的一部分)将发送到 RADIUS 服务器。
如果 IPv4 地址是从本地地址池分配的,则该地址可用。
IPv4 地址条目将从订阅者记录中清除
BNG 使用 IPv4-Release-Control VSA (26-164)(如果已配置)立即向 RADIUS 服务器发送 Interim-Accounting 消息(如果已配置),并且不得包含 Framed-IP-Address 属性。
用户会话统计信息和多家庭服务的服务会话统计信息将在整个 PPP 会话中保留,并且在释放 IPv4 地址时不会清除。
BNG 接收来自 RADIUS 服务器的临时记账响应。
无论 BNG 是否收到来自 RADIUS 服务器的响应,都不会在 BNG 中执行任何作。
使用可选对等方 IP 地址的 IPCP 协商
在互联网协议控制协议 (IPCP) 协商的正常作期间,如果点对点协议 (PPP) 客户端未请求特定 IP 地址,则 MX 系列服务器将发送从 RADIUS 或本地地址池获取的 IP 地址。
通常,当 CPE 协商静态调配的 IP 地址时,BNG 会在 PPP 授权期间收到一个帧 IP 地址 255.255.255.255,并(可选)收到一个成帧路由。CPE 在 IPCP confReq 消息的 IP 地址选项中显示配置的 IP WAN 地址。然后,BNG 接受对等方的提议地址。
但是,在其他一些情况下,订阅者的公共 IP 地址会在 CPE 上本地调配,但不会通过 IPNCP 进行显式协商。如果 PPP 客户端查找特定 IP 地址,则在从服务器接收 NAK 时,它会发送一条 confReq 消息,而不指定 IP 地址选项。在这种情况下,即使服务器发送 IPCP confAck 消息,服务器也会终止客户端,因为服务器需要客户端的 IP 地址。
您可以配置该 peer-ip-address-optional 语句,即使对等方未在静态和动态以及已终止和隧道式以太网点对点协议 (PPPoE) 用户的 IPCP 配置请求中包含 IP 地址选项,也可使 IPCP 协商成功。默认情况下,此语句处于禁用状态。此功能还支持高可用性(高可用性)和统一不中断服务的软件升级(统一 ISSU)。
如果客户端未在 IPCP 配置请求中包含 IP 地址选项,并且通过配置 peer-ip-address-optional 语句使 IPCP 协商成功,则服务器没有客户端 IP 地址。
如果客户机确实在 IPCP 配置请求中包括 IP 地址选项,那么是否配置该 peer-ip-address-optional 语句并不重要,因为订户始终可用,并且服务器具有客户机 IP 地址。
来自 RADIUS 或本地池的 IP 地址将分配给客户端,并且即使客户端未分配此地址,也会在服务器上添加指向此地址的路由。IPCP 成功,订阅者变为可用状态。如果您希望服务器具有到客户端请求的 IP 地址的路由,请使用成帧路由 RADIUS 属性或配置静态路由。客户端添加或配置指向服务器的静态路由,以便进行正确的转发。
也可以看看
启用按需地址分配后,如何在身份验证期间使用 RADIUS 属性
下面介绍启用按需IP地址分配时,边界网络网关(BNG)在身份验证过程中的行为:
如果 RADIUS 服务器返回Framed-IP 地址属性,则 BNG 不会在第一次互联网协议控制协议 (IPCP) 协商时前往 RADIUS 服务器进行地址分配。它使用初始 Access-Accept 消息中返回的 Framed-IP-Address 属性。计费启动和定期临时计费消息包括 Framed-IP-Address 属性。不会将立即临时计费消息发送到 RADIUS 服务器。地址分配类似于针对静态或动态订阅者所述的过程。
当在身份验证期间从 RADIUS 服务器返回帧 IP 地址,且客户端设备 (CPE) 未协商 IPCP 时,无论是否启用按需 IP 地址分配,都不会释放 IPv4 地址。
如果 RADIUS 服务器返回 Framed-Pool 属性。在第一次 IPCP 协商时,BNG 不会前往 RADIUS 服务器进行地址分配,而是会从指定的本地地址池中分配 IPv4 地址。在 IPCP 协商之前,Accounting-Start 和定期 Interim-Accounting 消息不包括 Framed-IP-Address 属性。即时临时计费消息(如果已配置)将发送至 RADIUS 服务器。地址分配类似于针对静态或动态订阅者所述的过程。
如果 RADIUS 服务器未返回 Framed-IP-Address 属性或 Framed-Pool 属性。地址分配类似于针对静态或动态订阅者所述的过程。由于 IPCP 是这些用户唯一活动的网络控制协议 (NCP),因此整个 PPP 会话将在 IPCP 终止请求时终止,并向 RADIUS 服务器发送计费停止消息。在这种情况下,不会发送用于释放 IPv4 地址的即时临时计费消息。
为双堆栈 PPP 用户配置静态按需 IPv4 地址分配
要为双堆栈 PPP 用户配置静态按需 IPv4 地址分配:
为双堆栈 PPP 用户配置动态按需 IPv4 地址分配
要为双堆栈 PPP 用户配置动态按需 IPv4 地址分配:
为双堆栈 PPP 用户配置全局按需 IPv4 地址分配
要在系统级别为双栈 PPP 用户配置静态按需 IP 地址 IPv4 地址分配:
为按需 IPv4 地址更改启用即时临时计费消息
要使 BNG 能够立即发送临时计费消息,请执行以下作:
在 RADIUS 消息中启用 IPv4 版本控制 VSA (26–164)
对双堆栈 PPP 用户使用按需地址分配时,可以将 BNG 配置为在按需 IP 地址分配期间发送的访问请求和为报告地址更改而发送的临时计费消息中包括 IPv4 释放控制 VSA (26–164)。
如果在静态或动态 PPP 用户协商期间没有可用的 IPv4 地址,则 RADIUS 服务器会将此 VSA 包含在其发送至 BNG 的访问-拒绝消息中。结果是 BNG 向 CPE 发送 IPCP 终止请求,然后 CPE 可以重新协商 IPCP。
如果尚未启用发送 VSA 26–164,则 Access-Reject 消息不包括 VSA,并且 BNG 会向 CPE 发送 LCP Protocol-Reject 消息。CPE 必须先重新协商 LCP 链路,然后才能重新协商 IP NCP。
当未配置按需 IP 地址分配或取消分配时,此语句的配置无效。
您可以选择性地配置将消息发送到 RADIUS 服务器时包含在 VSA 中的消息。
要在 RADIUS 消息中启用 IPv4-Release-Control VSA (26-164),请执行以下作: