用于订阅者管理的地址分配池
地址分配池概述
地址分配池允许您独立于使用池的客户端应用程序创建集中的 IPv4 和 IPv6 地址池。无论地址来自本地池还是来自本地服务器,身份验证流程都管理池和RADIUS分配。
例如,多个客户端应用程序(如 DHCP)可使用同一地址分配池为特定客户端提供地址。客户端应用程序可以获取经过身份验证或不经过身份验证的客户端的地址。根据服务器或网络匹配RADIUS其他规则,为订阅者选定的池称为订阅者匹配池。
地址分配类型
地址分配池同时支持动态和静态地址分配。在动态地址分配中,客户端将自动从地址分配池中分配地址。在仅支持 IPv4 池的静态地址分配中,您将保留一个始终供特定客户端使用的地址。为静态分配保留的地址将从动态地址池中移除,不能分配给其他客户端。
地址分配池中的指定地址范围
您可以在地址分配池中配置命名地址范围。命名范围是整体地址范围的子集。客户端应用程序可使用命名范围根据客户端特定标准管理地址分配。例如,对于 IPv4 地址分配池,您可以创建一个基于特定 DHCP option 82 值命名的范围。然后,当 DHCP 客户端请求与指定的 option 82 值匹配时,将指定范围中的地址分配给客户端。
来自已链接地址池的地址分配
可以将地址分配池链接在一起,以提供用于地址分配的备份池。当主要地址或匹配地址池没有可用地址时,设备会自动继续链接到的(辅助)地址池,以搜索可用地址以分配。
尽管链接池链中的第一个池通常被视为主池,但匹配池不一定是链中的第一个池。
从Junos OS版本18.1R1,搜索机制通过链接的池链接继续搜索可用地址。此行为使 DHCP 可以连续搜索地址。.
让我们用一个示例来说明搜索机制的工作原理。考虑三个池链— A、B 和 C。池 A 是主要池,池 B 根据服务器返回的信息为特定订阅者RADIUS池。搜索这些订阅者可用地址将按以下顺序搜索:
默认情况下,将先搜索匹配池(池 B)。
如果未找到地址,搜索将移动到链中的第一个池(池 A)。
搜索将继续通过链(池 C)进行,直到找到可用地址并分配可用地址,或者直到搜索确定没有可用地址。
在每个池中,所有地址范围都完全搜索地址。
您可以配置 语句,以在匹配池内每个范围的地址块内开始搜索,然后依次通过链接 linked-pool-aggregation
的池进行搜索。然后,搜索将返回链中的第一个池,并搜索每个池内所有范围的所有地址,最后一个池位于链中最后一个池内。
地址池暂停状态
您可以配置一个保留状态的地址分配池。当地址池保持"暂停"状态时,池将无法再用于为订阅者分配 IP 地址。此配置将活动池平稳转换为非活动状态,因为先前分配的地址将返回至池。当池处于非活动状态时,您可以安全地对池执行维护,而不会影响任何活动订阅者。
邻接方发现路由器通告的地址分配池
您可以明确地为邻接方发现路由器通告 (NDRA) 分配地址分配池。
排除指定地址或地址范围
从Junos OS版本18.1R1,您可以排除指定地址或连续地址范围,以防止其从地址池分配。
例如,您可能希望保留某些地址或范围,仅用于静态订阅者。配置要排除的地址或范围时,并且已分配该范围内的地址或地址、该用户已注销、地址已处理并标记用于排除地址。
许可要求
此功能需要许可证。要了解有关订阅者访问许可的更多内容,请参阅 订阅者访问许可概述。有关许可管理的 常规瞻博网络 请参阅《许可指南》。有关详细信息,请参阅产品 产品介绍 ,或联系瞻博网络客户团队或瞻博网络合作伙伴。
地址分配池的好处
地址分配池功能同时支持订阅者管理和 DHCP 管理。
您可创建独立于客户端应用程序的集中化地址池。
您可以指定地址块、命名范围,以便给定地址池可用于为不同的客户端应用程序或匹配不同标准集的用户提供不同的地址。
您可以将池链接在一起,以确保池以特定方式(连续或不合作)搜索免费地址。
通过指定不会从池分配任何进一步的地址,可以将地址池从活动状态平稳转换为非活动状态。
来自已链接地址池的地址分配
可以将地址分配池链接到一个链中,以提供用于地址分配的备份池。根据服务器或网络匹配RADIUS某条其他规则,为订阅者选定的池称为订阅者匹配或匹配池。匹配池可能并不是该链的第一个(主)池。当没有地址可用于从匹配地址或主地址池进行分配时,路由器或交换机会自动继续其他地址池以搜索要分配的可用地址。当搜索发现任何地方没有可用地址时,搜索将停止,并且不会为订阅者分配任何地址。
搜索行为不仅确定搜索沿链接池链的进行方式,还确定搜索每个池内的地址范围。根据搜索开始的地方、配置以及先前分配的地址是否已释放,搜索将继续到链中的下一个已链接地址池中,或移动到链中的第一个池。
可用地址的搜索从与订阅者匹配的池中开始。在许多情况下,匹配池也是链中的第一个池。对于部分订阅者,匹配池在链中的位置远一些。例如,您可以配置RADIUS服务器来指定链的第二个池,而不是第一个基于在身份验证期间匹配的标准。例如,您可以为不同的订阅者组指定不同的地址范围;特定池是否与订阅者匹配,取决于为不同地址范围配置了哪些池。
以下术语用于解释搜索行为的详细信息:
lowAddress — 地址池内给定范围内的最低地址。
highAddress — 地址池内给定范围内的最高地址。
nextAddress — 地址池内给定范围内分配的最后一个地址之后的下一地址。这是预计将在接下来分配的地址。此地址以及最后使用的范围将保存为搜索的起点。
例如,假设 Pool A 有一个范围,其中包含以下地址:192.0.2.1、192.0.2.2、192.0.2.3、192.0.2.4。在这种情况下,192.0.2.1 是低Address,190.0.2.4 是高Address。如果 192.0.2.2 是此池分配的最后一个地址,则下一个Address 为 192.0.2.3。
从Junos OS版本18.1R1,您可以通过两种方式之一配置要搜索的已链接池:
连续地址分配 - 这是默认行为。将搜索每个池范围的所有地址。搜索从匹配池开始,然后移动到链中的第一个池,如有必要,将持续通过每个已链接的池持续到链中的最后一个池。在每个池中,所有范围的所有地址均将搜索可用地址。此方法允许连续分配地址;在搜索另一个池之前,每个池必须充满。
非协调(聚合)地址分配 — 配置
linked-pool-aggregation
语句时的行为。最初,仅在匹配池的每个范围内搜索某些地址(从下一个地址到高Address)。在已链接的池中执行相同的搜索,如有必要,将持续通过每个已链接的池持续到链中的最后一个池。然后,搜索将在链的第一个池(不一定是匹配的池)中重新启动。这一次,所有范围的所有地址都在所有池到链末尾进行搜索。
这是基本功能,但两次搜索的详细信息相当复杂。 图 1 显示默认搜索行为。

例如,假设存在以下条件:
已链接的地址池 A、B、C 和 D. 池 C 匹配。
每个池有三个地址范围, r1、 r2、 r3。最后使用的范围是每个池的 r2。
如果未找到免费地址,则搜索将继续,如下所示:C > A > B > C > D,然后停止。
池 C 将搜索,通过 r2 范围中的 highAddress 进入 NextAddress。
池 C 在 r2 范围内通过 nextAddress 进行搜索, 低Address 。
将搜索池 C,通过 r3 范围中的 highAddress 进入下一个入口。
池 C 在 r3 范围内通过 nextAddress 进行搜索, 低Address 。
将搜索池 C,在 r1 范围内通过 highAddress 进入 NextAddress。
池 C 在 r1 范围内通过 NextAddress 进行搜索,其低Address 表示。
已搜索池 C 中的所有范围和地址,因此搜索将移动到链 A 中的第一个池。
池 A 将搜索,通过 r2 范围中的 highAddress 进入 NextAddress。
池 A 在 r2 范围内通过 nextAddress 进行搜索, 低Address 。
将搜索池 A,在 r3 范围内通过 highAddress 进入下一个入口。
池 A 在 r3 范围内通过 NextAddress 进行搜索, 低Address 。
池 A 将搜索,通过范围 r1 中的 highAddress 进入 NextAddress。
池 A 在 r1 范围内通过 nextAddress 进行搜索, 低Address 。
已搜索池 A 中的所有范围和地址,因此搜索将移动到链 B 中的下一个链接池。
此过程将一直持续,直到搜索所有池内所有范围的所有地址。池搜索顺序为 C > A > B > C > D,然后停止。根据地址的查找位置和地址,匹配池可能会搜索两次。除非匹配池是链中的第一个池,否则这是事实。例如,如果池 A 在这组条件下是匹配池,则完整搜索(假设未找到地址)将是 B > B > C > D。
当包含 语句时,图 2 显示搜索 linked-pool-aggregation
行为。

例如,考虑与默认示例相同的条件:
已链接的地址池 A、B、C 和 D. 池 C 匹配。
每个池有三个地址范围, r1、 r2、 r3。最后使用的范围是每个池的 r2。
如果未找到免费地址,则搜索将继续,如下所示:C > D > A > B > C > D,随后停止。
池 C 将搜索,通过 r2 范围中的 highAddress 进入 NextAddress。
将搜索池 C,通过 r3 范围中的 highAddress 进入下一个入口。
将搜索池 C,在 r1 范围内通过 highAddress 进入 NextAddress。
池 C 中所有范围都从 NextAddress 搜索到 highAddress,因此搜索将移动到链中的下一个链接池 D 。
将搜索池 D,在 r2 范围内通过 highAddress 进入 NextAddress。
将搜索池 D,在 r3 范围内通过 highAddress 进入下一个入口。
将搜索池 D,在 r1 范围内通过 highAddress 进入 NextAddress。
池 D 中所有范围已从下一个Address 搜索到高Address。池 D 是链中最后一个池,因此搜索将移动到该链中的第一个池,即 A。
池 A 在 r2 范围内通过 highAddress 进行搜索,其低入口为 。
池 A 在 r3 范围内通过 highAddress 进行搜索和低Address。
池 A 在 r1 范围内通过 highAddress 进行搜索,其低入口为 。
已搜索池 A 中的所有范围和地址,因此搜索将移动到链 B 中的下一个链接池。
池 B 将搜索,通过 r2 范围中的 highAddress 进行低Address。
池 B 将搜索,通过 r3 范围内高Address 的低Address。
池 B 将搜索,通过范围 r1 中的 highAddress 进行低Address。
已搜索池 B 中的所有范围和地址,因此搜索将移动到链 C 中的下一个链接池。
此过程将一直持续,直到搜索所有池内所有范围的所有地址。池搜索顺序为 C > D > A > B > C > D,然后停止。根据查找地址的地方和地址,所有池可能会搜索两次,即使匹配池是链中第一个池也一样。例如,如果池 A 在这组条件下是匹配池,则完整的搜索(假设未找到地址)将是 > B > C > D > A > B > C > D。
地址分配池配置概述
地址分配池功能支持订阅者管理功能,支持您创建可由不同客户端应用程序共享的地址池。地址分配池可支持 IPv4 地址或 IPv6 地址。不能对两种类型的地址使用同一个池。
地址分配池与基于服务 PIC 的 L2TP LNS 地址池(使用 层次结构级别中的 语句创建)和使用 层次结构级别中的 语句创建的 NAT 池完全分开。 address-pool
[edit access]
pool
[edit services nat]
要配置地址分配池,
另请参阅
配置地址分配池名称和地址
要配置地址分配池,您必须指定池的名称并配置池的地址。
要配置 IPv4 地址分配池,
要配置 IPv6 地址分配池,
配置池的名称并指定 IPv6 系列。
[edit access] user@host# edit address-assignment pool isp_2 family inet6
配置地址池的 IPv6 网络前缀。配置 IPv6 地址分配池时,需要前缀规范。
[edit access address-assignment pool isp_2 family inet6] user@host# set prefix 2001:db8:2008:2009::/32
为动态地址分配配置命名地址范围
您可以选择在地址分配池中配置多个已命名范围或地址子集。在动态地址分配期间,可以从特定命名范围为客户端分配地址。要创建命名范围,请为范围指定名称并定义地址范围。
要创建 IPv4 地址分配池内的命名范围:
要创建 IPv6 地址分配池内的命名范围:
指定地址分配池和 IPv6 系列的名称。
[edit access] user@host# edit address-assignment pool isp_2 family inet6
配置范围的名称并定义范围。您可以根据范围中前缀的上下边界来定义范围,也可以根据范围中的前缀长度来定义范围。
[edit access address-assignment pool isp_2 family inet6] user@host# set range dsl-range low 2001:db8:2008:2010:2011:0100::/64 high 2001:db8:2008:2010:2011:ffff::/64 user@host# set range fiber-east prefix-length 48
防止地址从地址池分配
您可以排除指定地址或地址范围,以防止其从地址池分配。例如,您可能希望保留某些地址或范围,仅用于静态订阅者。配置要排除的地址或地址范围时,并且该范围内的地址或地址已分配,分配了该地址的用户将被注销,地址将被分配,并且地址被标记用于排除地址。
要从分配的地址池中排除地址或地址范围:
指定单个地址。
[edit access address-assignment pool-name family (inet | inet6)] user@host# set excluded-address ip-address
指定并命名一系列连续地址。
[edit access address-assignment pool-name family (inet | inet6)] user@host# set excluded-range name low minimum-value high maximum-value
例如,IPv4 地址池的以下部分配置定义了要分配的地址范围 r1,从 192.168.0.10 到 192.168.128.250。其中不包括单个地址 192.168.110.10。它进一步定义了两个范围,即排除 1 和排除 2,用于指定两组不能从池分配连续地址。
pool v4-pool { family inet { network 192.168.0.0/16; range r1 { low 192.168.0.10; high 192.168.128.250; } excluded-address 192.168.110.10 excluded-range exclude1 { low 192.168.12.0 high 192.168.12.255 } excluded-range exclude2 { low 192.168.98.10 high 192.168.98.200 } } }
同样,池 v6 池的配置定义了一系列要分配的地址以及从分配中排除的地址范围。
pool v6-pool { family inet6 { prefix 2016::/64; range r2 { low 2016::1; high 2016::80:ffff; } excluded-range exclude3 { low 2016::7c:a high 2016::7c:ff } } }
要查看有关排除的地址的信息,您可以使用以下任一命令:
user@host> show network-access address-assignment pool pool-name IP address/prefix Hardware address Host/User Type 192.168.2.1 00:00:5e:00:53:01 user1 DHCP 192.168.2.2 00:00:5e:00:53:02 user2 DHCP 192.168.2.3 00:00:5e:00:53:03 user3 DHCP 192.168.2.4 NA EXCLUDED unknown
user@host> show network-access aaa statistics address-assignment pool pool-name Address-assignment statistics ... Addresses excluded: 1000 ...
配置地址分配池使用阈值陷阱
您可收到高级警告,通过设置使用情况(利用率)阈值陷阱,地址池或链接的地址池集在可用地址上短处运行。使用和利用率可以互换表示当前分配的地址池中的地址百分比。地址池具有以下 SNMP 阈值,其相关阈值允许本地地址服务器在存在某些条件时发出 SNMP 陷阱信号:
高利用率阈值 — 当从地址池分配的地址百分比超过该值时,将生成高利用率 SNMP 陷阱。只要超过此阈值,系统将发送警告消息。
减用阈值 — 当从地址池分配的地址百分比下降到此值以下时,将生成一个降低利用率陷阱。系统将停止发送警告消息。通常,将已放弃的利用率阈值设置为低于高利用率阈值;不能设置得更高
阈值没有默认值。如果不配置这些阈值,系统不会发送即将耗尽的通知,因为所分配地址的百分比达到 100%。只有在分配了地址池内的所有地址时,系统才发送地址外陷阱。
从Junos OS版本19.2R1开始,除非配置了高利用率阈值和低利用率阈值,否则不会发送出地址陷阱。发送地址外陷阱时,还会发送地址外系统日志消息。
您可以为层级的所有地址池配置阈值,也可以为层次结构级别的指定路由实例中唯一的地址 [edit access address-assignment]
[edit routing-instance routing-instance-name]
池配置阈值。以下配置仅显示 [edit access]
配置。
要设置阈值陷阱:
指定 IPv4 或 IPv6 地址池的高利用率阈值。
[edit accessaddress-assignment] user@host# set high-utilization percentage user@host# set high-utilization-v6 percentage
指定 IPv4 或 IPv6 地址池的降低利用率阈值。
[edit accessaddress-assignment] user@host# set abated-utilization percentage user@host# set abated-utilization-v6 percentage
在下面的示例中,高阈值设置为 95% 使用,而减值阈值设置为 IPv4 地址池的 90% 使用。当分配的地址数超过地址池的 95% 时,将生成高利用率陷阱。如果从池分配所有地址,将生成一个地址外陷阱,并发送一条地址外系统日志消息。当分配的地址数量下降到地址池的 90% 以下时,将生成减少利用率陷阱。
[edit accessaddress-assignment] user@host# set high-utilization 95 user@host# set abated-utilization 90
配置地址分配池链接
地址分配池链接允许您指定在完全分配匹配或主地址分配池时供路由器使用的辅助地址池。您可以创建多个链接池链。例如,您可以将池 A 链接到池 B,将池 B 链接到池 C。您可将任意数量池串行链接在一个链中,但是不能为同一个池创建或来自同一池的多个链路。例如,您不能从池 A 创建到池 B 和池 C 的链接。同样,池 C 不能从池 A 和池 B 链接。另一个考虑因素是,链中所有地址池必须具有相同的家族类型(IPv4 或 IPv6)。
当与订阅者匹配的地址池没有可用地址时,路由器会自动切换至已链接池,并分配该池的地址。只有在完全分配了匹配的地址分配池时,路由器才使用链接池。
从 Junos OS 18.1 版开始,行为会改变如何在地址池链中查找和分配免费地址。您可以将已链接的池配置为通过两种方式之一进行搜索:
连续地址分配 — 默认行为。将搜索每个池范围的所有地址。搜索从匹配池开始,然后移动到链中的第一个池,如有必要,将持续通过每个已链接的池持续到链中的最后一个池。在每个池中,所有范围的所有地址均将搜索可用地址。此方法允许连续分配地址;在搜索另一个池之前,每个池必须充满。
非协调(聚合)地址分配 — 配置
linked-pool-aggregation
时的行为。最初,仅在匹配池的每个范围内搜索某些地址(从下一个地址到高Address)。必要时,在已链接的池中执行相同的搜索,并通过链中最后一个池持续搜索每个连续链接池。然后,搜索将在链的第一个池(不一定是匹配的池)中重新启动。这一次,所有范围的所有地址都在所有池到链末尾进行搜索。
如果将服务器配置为仅使用 IP RADIUS来识别订阅者, linked-pool-aggregation
则包括该语句是可取的。通常,订阅者由 RADIUS使用订阅者会话 ID 和其他标准来识别。如果仅使用 IP 地址,如果未配置语句,则可能会遇到以下默认 linked-pool-aggregation
行为问题。用户可以断开连接,此地址可分配给下一个订阅者。第二个订阅者可能会先发送 Acct-Start 消息,再为断开连接的用户发送 Acct-Stop 消息。收到 Acct-Stop 后,仅由 IP 地址标识的新用户可以断开连接。
您可以通过包括 语句或将RADIUS服务器配置为使用订阅者会话 linked-pool-aggregation
ID(而非 IP 地址)进行标识,来避免这种情况。
开始之前,配置地址池。请参阅 地址分配池配置概述。
要将地址分配池链接到辅助池:
例如,以下配置链路Pool_A到Pool_B,然后Pool_B到Pool_C。
[edit access] user@host# set address-assignment pool Pool_A link Pool_B user@host# set address-assignment pool Pool_B link Pool_C
配置地址分配池关闭
地址分配池保留功能(也称为被动清空)允许您将活动地址池平稳转换为非活动状态。当池处于非活动状态时,您可以安全地对池执行维护,而不会影响任何当前订阅者(如添加、更改或删除地址)。
当地址分配池为"保留"状态时,不会从该池分配任何附加地址。但是,"暂停"状态不会影响使用以前从池分配过的地址的任何现有订阅者。随着现有订阅者断开连接,其 IP 地址将在池中标记为免费,但由于池的暂停状态,这些地址不会重新定位。最终,当所有订阅者断开连接且其地址返回池时,池将失效。
要将活动地址分配池放在"暂停"状态:
配置 DHCP 本地地址池快速清空
您可以将该池配置为主动清空模式,以强制 DHCP 本地服务器停止从特定本地地址池分配地址。此模式允许服务器平稳终止已使用该池分配的地址的用户,并转换为其他池。当 DHCP 订阅者尝试从池(现在配置为主动清空模式)续订 IP 地址时(在 T1 续订时),DHCP 本地服务器会回复订阅者续订请求的 NAK。此响应迫使订阅者重新协商租赁。然后,服务器从未配置为活动清空的替代地址池分配新 IP 地址。
主动清空模式提供了一种从地址池快速清空订阅者的方法。因此,订阅者配置的租用时间越长,主动清空模式也越实用。如果没有为池配置主动清空模式,则要停止其地址分配,则必须配置被动清空模式或删除池。
被动清空模式使地址池处于暂停状态。不会从池分配更多地址,但是当前使用来自池的已分配地址的用户不会受到影响。现有订阅者可以年龄的增长。当用户断开连接(或由操作人员断开)时,地址将释放,但是不能重新分配。最终,所有订阅者都会发布自己的地址,并且池不再活动。由于活动订阅者会根据请求续约租用,因此被动清空模式所费时间比主动清空模式长得多,才能恢复池内的所有地址。
池删除操作会使用池地址中断每个当前订阅者的流量,只要需要租赁到期,订阅者才能重新协商并获得新租用。服务器将从删除的池中删除具有地址的所有订阅者。订阅者会尝试延长租用期,但因服务器中会删除租用而失败。当用户随后尝试重新协商新租赁时,可能会获得不同池或不同池的地址RADIUS。
在地址池空位之前,可以删除主动清空配置。在这种情况下,仍可为拥有此池地址的订阅者授予租赁延期。此恢复是尽力服务,因为某些订阅者正在被服务器在删除配置时注销。这些订阅者无法恢复为池,必须重新协商租赁。然后,系统可能会从此池(因为它再次处于活动状态)或来自备用池为这些订阅者分配一个地址。
如果 DHCP 客户端无法收到地址池正在清空的通知,它可能会继续使用此池向订阅者授予租用扩展。当地址在 T1 时间(最多为 T2 时间)后仍与客户端绑定时,当地址已由池恢复时,会指示这种情况。在这种情况下,请删除主动清空配置,然后重新配置池以确保池及时耗尽。
如果已验证或 jdhcpd 重新启动,或进行了平稳 路由引擎 切换,尚未发送 NAK 的一些订阅者仍可使用池地址发起注销。重新启动或 GRES 完成后,身份验证将发送 jdhcpd 通知,其中包含仍具有已配置为活动清空的池的地址的用户列表。然后,池清空可以继续。
从Junos OS版本18.4R1,地址分配方法将确定随后的行为,方法是通过身份验证通知 DHCP 进程删除或正耗尽地址池。
按需分配地址时,当删除池时,具有该池地址的族会立即记录,或在收到 DHCP 续订或重新绑定消息时通过清空流程平稳地记录。
当地址预定位时,当删除池时,这两个家族的地址将立即删除,或在接收到 DHCP 续订或重新绑定消息时通过清空流程平稳删除。
要配置 DHCP 本地服务器以停止从地址池分配地址:
您可以使用 命令确认为池配置了活动 show network-access aaa statistics
清空功能。
user@host> show network-access aaa statistics address-assignment pool pool1 Address assignment statistics Pool Name: pool1 Out of Memory: 0 Out of Addresses: 0 Address total: 33009 Addresses in use: 1 Address Usage (percent): 0 Pool drain configured: yes
主动清空功能优先于保留前缀地址。地址保留可确保根据接入电路标识符 (ACI) 将同一个委托的前缀分配给订阅者。当具有保留前缀的订阅者注销时,ACI 和前缀将存储在地址保留表中。当该用户再次尝试登录时,地址和 ACI 在表中查找。
活动清空模式将影响此行为。当前缀当前是设置为 Active-drain 模式的池的一部分时,将从表中移除前缀,当用户尝试再次登录时不会分配给订阅者。
如果客户端在注销过程中取消活动清空,则前缀和 ACI 字符串将保留到表中。在这种情况下,当用户再次登录时,可以将前缀分配给该 ACI 字符串。但是,如果在客户端已注销且表已清除前缀/ACI 关联后取消活动清空,则后续登录的订阅者从重新激活的池获取前缀,并且前缀可能不同。
另请参阅
配置静态地址分配
您可通过为特定客户端保留特定地址来选择创建静态 IPv4 地址绑定。地址将从地址分配池中移除,因此不会分配给其他客户端。保留地址时,可以识别客户端主机,并创建客户端主机与MAC 地址 IP 地址之间的绑定。IPv6 地址分配池不支持静态地址绑定。
要配置 IPv4 地址的静态绑定:
为应用程序配置重复 IPv4 地址AAA
从 Junos OS 14.1 版开始,如果您使用 AAA 提供 IPv4 地址,可以启用重复地址保护,以防止地址多次使用。如果启用,将检查从外部服务器收到的以下属性:
Framed-IP-Address
Framed-Pool
路由器随后会采取以下操作之一:
如果地址与地址池中的地址匹配,则从池取地址(只要可用)。
如果地址已使用,则拒绝该地址不可用,并且使用地址的现有用户保持完好无损。
要配置重复地址保护,
从Junos OS版本18.4R1,您可以通过包括 选项来配置地址保护时,选择重新指定当前使用的 reassign-on-match
地址。配置后,路由器将断开现有订阅者断开连接,允许新订阅者重新协商。此配置的影响是,始终将使用的地址重新分配给新用户。
当移动用户从网关 GPRS 支持节点 (GGSN) 意外丢弃时,将会发生一个此覆盖功能用例,但是 GGSN 会保持用户的 L2TP 会话保持一段时间。当客户尝试通过其他节点重新连接时,由于原始会话仍然处于打开状态,会话无法连接。地址重新分配允许新会话抢占现有会话,从而允许用户重新连接。
仅当地址来自来自源RADIUS时,现有用户才能断开连接。当地址来自本地配置的地址池时,现有订阅者会话将保持不变。
当用户RADIUS本地配置的地址池中包含的地址时,请勿使用 该选项,因为存在更高的地址冲突 reassign-on-match
机率。建议不要将源RADIUS与本地地址池重叠。
reassign-on-match
选项的工作方式如下:
用户通过给定 IP 地址协商访问。
路由器将确定该地址是否使用以及来自何处。
当用户已使用该地址登录时,地址不是本地配置的池的一部分,并且启用了地址保护:
路由器向新订阅者发送 NAK,拒绝请求。
路由器将断开连接请求发送给现有订阅者。断开连接请求中包含一个终止 ID,用于报告注销的原因。
新(被拒绝)订阅者可以重新协商,并分配 IP 地址。
当用户已使用该地址登录并且地址从本地地址池分配时:
路由器向新订阅者发送 NAK,拒绝请求。
路由器不会将断开连接请求发送给现有订阅者。
当添加到 reassign-on-match
现有重复地址保护配置中时,其将立即针对现有订阅者生效。同样,如果从配置中删除,则立即生效,因此使用使用中地址的后续访问请求不会终止 reassign-on-match
现有订阅者。
要启用地址重新分配:
[edit access address-protection] user@host# set reassign-on-match
另请参阅
示例:配置地址分配池
要求
概述
配置
此示例显示了创建两个池的地址分配池配置,一个用于 IPv4 DHCP 客户端 ( ),另一个池 ( )用于 isp_1
chi-fiber-ra
路由器播发。
CLI快速配置
[edit access] address-assignment { network-discovery-router-advertisement chi-fiber-ra; pool isp_1 { family inet { network 192.168.0.0/16; range southeast { low 192.168.102.2 high 192.168.102.254; } range northeast { low 192.168.119.2 high 192.168.119.250; } host host.example.net { hardware-address 00:00:5E:00:53:90; ip-address 192.168.44.12; } dhcp-attributes { option-match { option-82 { circuit-id fiber range northeast; } option-82 { circuit-id cable_net range southeast; } } boot-file boot.client; boot-server 192.168.200.100; grace-period 3600; maximum-lease-time 18000; netbios-node-type p-node; router 192.168.44.44 192.168.44.45; } } } pool chi-fiber-ra { family inet6 { prefix 2001:db8:2008:2009:2010::/48; range fiber3 { low 2001:db8:2008:2009:2010::1/64; high 2001:db8:2008:2009:2010::5/64; } } } }
此示例将创建名为 的 IPv4 地址分配池,其中包含两 isp-1
个命名地址范围和 southeast
northeast
。地址分配池还包含对客户端的静态绑定 host host.example.net
。该ISP_1池配置还包含 语句,表示 dhcp-attributes
该池用于 DHCP 客户端。如果 option 82 circuit-id
条目与字符串匹配 fiber
,则 DHCP 从范围中为客户端分配 northeast
地址。如果 option 82 circuit-id
与字符串匹配 cable_net
,DHCP 从 范围分配 southeast
地址。
此示例中创建的第二个地址分配池是 chi-fiber-ra
。语法 neighbor-discovery-router-advertisement
开头的 语句指定此名为 的地址分配池用于路由器通告。示例末尾的语法配置名为 的地址分配池 chi-fiber-ra
。