示例:使用下一跃点方法配置 HTTP 重定向服务并将其附加到静态接口
此示例说明如何使用下一跃点方法配置 HTTP 重定向服务并将其附加到静态接口。
要求
此示例使用以下硬件和软件组件:
安装了多服务模块化 PIC 集中器 (MS-MPC) 和多服务模块化接口卡 (MS-MIC) 的 MX240、MX480 或 MX960 通用路由平台。
Junos OS 15.1 或更高版本。
准备工作:
配置重定向服务器和 MX 系列路由器之间的连接。
定义源地址(此示例中使用 203.0.113.0/24)。
定义一个或多个用于订阅者流量的接口。
概述
IPv4 和 IPv6 都支持 HTTP 重定向和重写服务。您可以将 HTTP 重定向服务或服务集附加到静态或动态接口。对于动态订阅者管理,您可以在订阅者登录时或使用授权更改 (CoA) 动态附加 HTTP 服务或服务集。使用下一跃点方法,您可以配置 HTTP 重定向服务并将其附加到静态接口。
配置
要使用下一跃点方法配置 HTTP 重定向服务并将其附加到静态接口,请执行以下操作:
- CLI 快速配置
- 配置 CPCD 服务并将服务集连接到静态接口
- 为 CPCD 配置软件包和安装
- 配置静态接口、HTTP 重定向过滤器和接口服务选项
- 配置其他路由实例并分配其下一跃点静态接口
- 配置特定于接口的过滤器以定向 HTTP 流量
- 配置策略选项和语句以使用专用块前缀列表
- 为订阅用户使用宽带边缘静态路由配置(适用于 MX 系列设备的 Junos OS 23.4R1 版)
CLI 快速配置
要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,然后将命令复制并粘贴到 CLI 中。
[edit] edit services captive-portal-content-delivery set rule redirect match-direction input set rule redirect term REDIRECT then redirect http://redirection-portal/redirection/ set profile http-redirect cpcd-rules redirect edit services service-set http-redirect-sset set captive-portal-content-delivery-profile http-redirect set next-hop-service inside-service-interface ms-11/1/0.1 set next-hop-service outside-service-interface ms-11/1/0.2 [edit] edit chassis fpc 11 pic 1 adaptive-services service-package set extension-provider package jservices-cpcd set extension-provider syslog daemon none set extension-provider syslog external none set extension-provider syslog kernel none set extension-provider syslog pfe none [edit] set interfaces ge-0/0/1 unit 900 description VLAN REDIRECT set interfaces ge-0/0/1 unit 900 vlan-id 900 set interfaces ge-0/0/1 unit 900 family inet filter input FF_HTTP_REDIR_IN set interfaces ge-0/0/1 unit 900 family inet address 203.0.113.250/30 edit interfaces ms-11/1/0 services-options open-timeout 4 edit interfaces ms-11/1/0 services-options close-timeout 2 edit interfaces ms-11/1/0 services-options inactivity-tcp-timeout 5 edit interfaces ms-11/1/0 services-options inactivity-non-tcp-timeout 5 edit interfaces ms-11/1/0 services-options session-timeout 5 edit interfaces ms-11/1/0 services-options tcp-tickles 0 set interfaces ms-11/1/0 unit 1 family inet set interfaces ms-11/1/0 unit 1 service-domain inside set interfaces ms-11/1/0 unit 2 filter output FF_CPCD_REDIRECT_OUTPUT set interfaces ms-11/1/0 unit 2 family inet set interfaces ms-11/1/0 unit 2 service-domain outside [edit] edit routing-instances CPCD_REDIRECT set instance-type virtual-router set interface ms-1/1/0.1 set interface ms-1/1/0.2 set routing-options static route 0.0.0.0/0 next-hop ms-1/1/0.1 set routing-options static route 203.0.113.0/24 next-hop ms-1/1/0.2 [edit] edit firewall family inet set filter FF_CPCD_REDIRECT_OUTPUT interface-specific set filter FF_CPCD_REDIRECT_OUTPUT term One then count back-to-default set filter FF_CPCD_REDIRECT_OUTPUT term One then routing-instance default set filter FF_HTTP_REDIR_IN interface-specific set filter FF_HTTP_REDIR_IN term ACCEPTED_PREFIXES from prefix-list User-PRIVATE-Blocks-01 set filter FF_HTTP_REDIR_IN term ACCEPTED_PREFIXES then next term set filter FF_HTTP_REDIR_IN term HTTP from protocol tcp set filter FF_HTTP_REDIR_IN term HTTP from destination-port http set filter FF_HTTP_REDIR_IN term HTTP then count HTTP set filter FF_HTTP_REDIR_IN term HTTP then forwarding-class best-effort set filter FF_HTTP_REDIR_IN term HTTP then routing-instance CPCD_REDIRECT [edit] edit policy-options policy-statement User-PRIVATE-Blocks-01 set 203.0.113.0/24
配置 CPCD 服务并将服务集连接到静态接口
分步过程
以下示例要求您在配置层次结构中导航各个级别。有关如何执行此操作的说明,请参阅 在配置模式下使用 CLI 编辑器。
通过指定订阅者的初始 Web 浏览器会话重定向到的位置来配置 HTTP 重定向服务,从而为订阅者启用初始预配和服务选择。
[edit services] user@host# edit captive-portal-content-delivery
通过定义路由器在应用此 HTTP 服务时引用的规则,将服务过滤器配置为围墙花园。
[edit services captive-portal-content-delivery] user@host# edit rule redirect
指定规则匹配接口上传入的流量。
[edit services captive-portal-content-delivery rule redirect] user@host# match-direction input
为 HTTP 服务的 CPCD 规则创建术语匹配和操作属性。
[edit services captive-portal-content-delivery rule redirect] user@host# set term REDIRECT then redirect http://redirection-portal/redirection/
为 IP 目标地址创建 CPCD 配置文件以重定向 HTTP 服务。
[edit services captive-portal-content-delivery] user@host# edit profile http-redirect
为 HTTP 服务指定 CPCD 规则。
[edit services captive-portal-content-delivery profile http-redirect] user@host# set cpcd-rules redirect
为 CPCD 服务创建服务集。
[edit services service-set] user@host# edit http-redirect-sset
指定服务集的 CPCD 配置文件。
[edit services service-set http-redirect-sset] user@host# set captive-portal-content-delivery-profile http-redirect
为内部和外部服务接口指定下一跃点服务的接口名称,并将其附加到静态接口。
[edit services service-set http-redirect-sset] user@host# set next-hop-service inside-service-interface ms-11/1/0.1 user@host# set next-hop-service outside-service-interface ms-11/1/0.2
结果
在配置模式下,输入 show services
命令确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明以进行更正。
[edit] root@host# show services captive-portal-content-delivery { rule redirect { match-direction input; term REDIRECT { then { redirect http://redirection-portal/redirection/; } } } profile http-redirect { cpcd-rules redirect; } } service-set http-redirect-sset { captive-portal-content-delivery-profile http-redirect; next-hop-service { inside-service-interface ms-11/1/0.1; outside-service-interface ms-11/1/0.2; } }
如果完成设备配置,请从配置模式输入 commit
。
为 CPCD 配置软件包和安装
分步过程
以下示例要求您在配置层次结构中导航各个级别。有关如何执行此操作的说明,请参阅 在配置模式下使用 CLI 编辑器。
配置 Junos OS,以便在带有 MS-MPC/MS-MIC 的 MX 系列 5G 通用路由平台上的服务接口上支持服务包。
[edit chassis] user@host# edit fpc 11 pic 1 adaptive-services service-package
将 CPCD 服务包配置为在 PIC 上运行。
extension-provider
首次配置语句时,PIC 将重新启动。[edit chassis fpc 11 pic 1 adaptive-services service-package] user@host# set extension-provider package jservices-cpcd
启用 PIC 系统日志记录以在 PIC 上记录或查看系统日志消息,但不包括守护程序、外部进程、内核进程或数据包转发引擎进程。
[edit chassis fpc 11 pic 1 adaptive-services service-package extension-provider] user@host# set extension-provider syslog daemon none user@host# set extension-provider syslog external none user@host# set extension-provider syslog kernel none user@host# set extension-provider syslog pfe none
结果
在配置模式下,输入 show chassis
命令确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明以进行更正。
[edit] root@host# show chassis fpc 11 { pic 1 { adaptive-services { service-package { extension-provider { package jservices-cpcd; syslog { daemon none; external none; kernel none; pfe none; } } } } } }
如果完成设备配置,请从配置模式输入 commit
。
配置静态接口、HTTP 重定向过滤器和接口服务选项
分步过程
以下示例要求您在配置层次结构中导航各个级别。有关如何执行此操作的说明,请参阅 在配置模式下使用 CLI 编辑器。
使用流量在重定向之前到达的逻辑接口配置千兆接口。
[edit interfaces] user@host# edit ge-0/0/1 unit 900
为逻辑接口分配描述和 VLAN ID。
[edit interfaces ge-0/0/1 unit 900] user@host# set description VLAN-REDIRECT user@host# set vlan-id 900
为接口配置 IPv4 系列。
[edit interfaces ge-0/0/1 unit 900] user@host# edit family inet
配置输入过滤器以评估何时在接口上接收和重定向数据包。
[edit interfaces ge-0/0/1 unit 900 family inet] user@host# set filter input FF_HTTP_REDIR_IN
配置输入过滤器的地址。
[edit interfaces ge-0/0/1 unit 900 family inet] user@host# set address 203.0.113.250/30
配置要在多服务接口上应用的服务选项。
[edit interfaces] user@host# edit ms-11/1/0 services-options
注意:仅显示为服务选项配置的值。您必须根据要求配置和预配适当的值。
指定传输控制协议 (TCP) 会话建立的打开和关闭超时期限(以秒为单位)。
[edit interfaces ms-11/1/0 services-options] user@host# set open-timeout 4 user@host# set close-timeout 2
为已建立的 TCP 和非 TCP 会话指定非活动超时期限(以秒为单位)。
[edit interfaces ms-11/1/0 services-options] user@host# set inactivity-tcp-timeout 5 set inactivity-non-tcp-timeout 5
全局指定多服务接口的会话生存期(以秒为单位)。
[edit interfaces ms-11/1/0 services-options] user@host# set session-timeout 5
指定在允许 TCP 会话超时之前发送的最大保持活动状态消息数。
[edit interfaces ms-11/1/0 services-options] user@host# set tcp-tickles 0
在多服务接口上配置逻辑接口。
[edit interfaces ms-11/1/0] user@host# edit unit 1
配置服务域以指定在网络内使用逻辑接口。
[edit interfaces ms-11/1/0 unit 1] user@host# set service-domain inside
在逻辑接口上配置 IPv4 地址族。
[edit interfaces ms-11/1/0 unit 1] user@host# set family inet
在多服务接口上配置第二个逻辑接口。
[edit interfaces ms-11/1/0] user@host# edit unit 2
配置服务域以指定在网络外部使用逻辑接口。
[edit interfaces ms-11/1/0 unit 2] user@host# set service-domain outside
配置输出过滤器以从逻辑接口重定向 CPCD 数据包。
[edit interfaces ms-11/1/0 unit 2] user@host# set filter output FF_CPCD_REDIRECT_OUTPUT
在逻辑接口上配置 IPv4 地址族。
[edit interfaces ms-11/1/0 unit 2] user@host# set family inet
结果
在配置模式下,输入 show interfaces
命令确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明以进行更正。
[edit] root@host# show interfaces ge-0/0/1 { unit 900 { description VLAN-REDIRECT; vlan-id 900; } family inet { filter { input FF_HTTP_REDIR_IN; } address 203.0.113.250/30; } } ms-11/1/0 { services-options { open-timeout 4; close-timeout 2; inactivity-tcp-timeout 5; inactivity-non-tcp-timeout 5; session-timeout 5; tcp-tickles 0; } unit 1 { family inet; service-domain inside; } unit 2 { family inet { filter { output FF_CPCD_REDIRECT_OUTPUT; } } service-domain outside; } }
如果完成设备配置,请从配置模式输入 commit
。
配置其他路由实例并分配其下一跃点静态接口
分步过程
以下示例要求您在配置层次结构中导航各个级别。有关如何执行此操作的说明,请参阅 在配置模式下使用 CLI 编辑器。
配置路由实例。
[edit routing-instances] user@host# edit CPCD_REDIRECT
配置虚拟路由器路由实例。
[edit routing-instances CPCD_REDIRECT] user@host# set instance-type virtual-router
为路由实例配置之前定义的两个多服务接口。
[edit routing-instances CPCD_REDIRECT] user@host# set interface ms-11/1/0.1 user@host# set interface ms-11/1/0.2
配置静态路由选项。
[edit routing-instances CPCD_REDIRECT] user@host# edit routing-options static
将下一跃点静态接口分配给路由和路由实例。
[edit routing-instances CPCD_REDIRECT routing-options static] user@host# set route 0.0.0.0/0 next-hop ms-11/1/0.1 user@host# set route 203.0.113.0/24 next-hop ms-11/1/0.2
结果
在配置模式下,输入 show routing-instances
命令确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明以进行更正。
[edit] root@host# show routing-instances CPCD_REDIRECT { instance-type virtual-router; interface ms-11/1/0.1; interface ms-11/1/0.2; routing-options { static { route 0.0.0.0/0 next-hop ms-11/1/0.1; route 203.0.113.0/24 next-hop ms-11/1/0.2; } } }
如果完成设备配置,请从配置模式输入 commit
。
配置特定于接口的过滤器以定向 HTTP 流量
分步过程
以下示例要求您在配置层次结构中导航各个级别。有关如何执行此操作的说明,请参阅 在配置模式下使用 CLI 编辑器。
为层次结构下的
[edit firewall]
服务筛选器创建族。[edit firewall] user@host# edit family inet
创建特定于接口的过滤器以重定向 CPCD 的输出流量。
[edit firewall family inet] user@host# edit filter FF_CPCD_REDIRECT_OUTPUT
指定这是特定于接口的筛选器。
[edit firewall family inet filter FF_CPCD_REDIRECT_OUTPUT] user@host# set interface-specific
为围墙花园的接口特定过滤器创建过滤器术语。
[edit firewall family inet filter FF_CPCD_REDIRECT_OUTPUT] user@host# edit term One
指定对默认流量进行计数的操作和默认路由实例。
[edit firewall family inet filter FF_CPCD_REDIRECT_OUTPUT interface-specific term One] user@host# set then count back-to-default set then routing-instance default
创建过滤器以重定向 HTTP 输入流量。
[edit firewall family inet] user@host# edit filter FF_HTTP_REDIR_IN
指定这是特定于接口的筛选器。
[edit firewall family inet filter FF_HTTP_REDIR_IN] user@host# set interface-specific
为围墙花园的接口特定过滤器创建过滤器术语。
[edit firewall family inet filter FF_HTTP_REDIR_IN] user@host# edit term ACCEPTED_PREFIXES
将接受的前缀列表指定为围墙花园过滤器的匹配条件。
[edit firewall family inet filter FF_HTTP_REDIR_IN term ACCEPTED_PREFIXES] user@host# set from prefix-list User-PRIVATE-Blocks-01
指定要对所有匹配的 HTTP 流量执行的操作。
[edit firewall family inet filter FF_HTTP_REDIR_IN term ACCEPTED_PREFIXES] user@host# set then next term
为围墙花园的过滤器创建第二个过滤器术语。
[edit firewall family inet filter FF_HTTP_REDIR_IN interface-specific] user@host# edit term HTTP
将协议和目标端口指定为围墙花园过滤器的匹配条件。
[edit firewall family inet filter FF_HTTP_REDIR_IN term HTTP] user@host# set from protocol tcp user@host# set from destination-port http
指定为匹配要流出围墙花园的 HTTP 流量而采取的操作。
[edit firewall family inet filter filter FF_HTTP_REDIR_IN interface-specific term HTTP] user@host# set then count HTTP user@host# set then forwarding-class best-effort user@host# set then routing-instance CPCD_REDIRECT
结果
在配置模式下,输入 show firewall
命令确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明以进行更正。
[edit] root@host# show firewall family inet { filter FF_CPCD_REDIRECT_OUTPUT { interface-specific; term One { then { count back-to-default; routing-instance default; } } } filter FF_HTTP_REDIR_IN { interface-specific; term ACCEPTED_PREFIXES { from { prefix-list { User-PRIVATE-Blocks-01; } } then next term; } term HTTP { from { protocol tcp; destination-port http; } then { count http; forwarding-class best-effort; routing-instance CPCD_REDIRECT; } } } }
如果完成设备配置,请从配置模式输入 commit
。
配置策略选项和语句以使用专用块前缀列表
分步过程
以下示例要求您在配置层次结构中导航各个级别。有关如何执行此操作的说明,请参阅 在配置模式下使用 CLI 编辑器。
创建策略选项和语句以使用层次结构下的
[edit policy-options]
专用块前缀列表。[edit policy-options] user@host# set policy-statement User-PRIVATE-Blocks-01
配置专用块前缀列表的源地址。
[edit policy-options policy-statement User-PRIVATE-Blocks-01] user@host# set 203.0.113.0/24
结果
在配置模式下,输入 show policy-options
命令确认您的配置。如果输出未显示预期的配置,请重复此示例中的配置说明以进行更正。
[edit] root@host# show policy-options policy-statement User-PRIVATE-Blocks-01 { 203.0.113.0/24; }
如果完成设备配置,请从配置模式输入 commit
。
为订阅用户使用宽带边缘静态路由配置(适用于 MX 系列设备的 Junos OS 23.4R1 版)
从 Junos 23.4R1 开始,BNG 的用户宽带边缘静态路由配置功能将取代 RADIUS 成帧路由配置。现在,您可以为同一站点上的多个主机设置静态 IP 地址。
例如:
- 使用预先存在的配置将路由添加到路由表。提交此配置后,路由将被隐藏,直到配置了订阅者 IP 的订阅者出现。
staticRoute { routing-options { access { route 7.7.7.7/32 next-hop 50.1.1.1; } } }
- 您可以使用模式下的
[edit system services subscriber-management]
命令static-framed-route
,在 BNG 上为特定客户连接启用静态帧路由功能。user@root> set system services subscriber-management static-framed-route
- 现在,您可以将 RADIUS 服务器用于身份验证目的,而不用于发送帧路由。
注意:仅当订阅者关闭时,才必须添加、修改或删除静态帧路由。
当订阅者启动时,静态帧路由会附加到它们。静态帧路由仅支持 IPv4。
验证
要确认已在服务集中正确配置 HTTP 重定向服务,请执行以下任务:
验证为 CPCD 服务配置的服务集
目的
显示已配置的 CPCD 服务集。
行动
在操作模式下,输入 show services captive-portal-content-delivery service-set http-redirect-sset detail
命令。
user@host> show services captive-portal-content-delivery service-set http-redirect-sset detail Service Set Id Profile Compiled Rules http-redirect-sset 1 http-redirect 1
意义
输出列出为 CPCD 服务配置的服务集。
验证为围墙花园配置的 HTTP 服务规则的详细信息
目的
显示围墙花园的特定已配置 HTTP 服务规则的详细信息。
行动
在操作模式下,输入 show services captive-portal-content-delivery rule redirect term REDIRECT
命令。
user@host> show services captive-portal-content-delivery rule redirect term REDIRECT Rule name: redirect Rule match direction: input Term name: term REDIRECT Term action: redirect Term action option: http://redirection-portal/redirection/
意义
输出列出了为围墙花园配置的特定 HTTP 服务规则的规则和术语详细信息。