策略路由回注是指通过在清洗设备和路由器上配置策略路由,将清洗后的流量回注到不同的路径,最后送到防护对象。
本功能在AntiDDoS上配置。
如图1所示。Router1为引流路由器,Router1的GE1/0/1接口与清洗设备的GE2/0/1接口之间的通道为引流通道。引流流量通过Router1的GE1/0/1接口引导至清洗设备的GE2/0/1接口进行清洗,清洗完成后将正常流量通过策略路由回注。
如果引流方式为BGP引流,Router1可以学习到清洗设备发布的UNR路由,将到达防护对象的路由下一跳指向清洗设备。这样,清洗后流量再回注到Router1时,Router1根据路由表转发还会将流量送回清洗设备,从而形成路由环路。为了避免路由环路的发生,应该在Router1的回注入接口上配置策略路由,将回注流量送到下行路由器Router2或Router3,继续转发。
假设流量已经通过BGP引流到清洗设备进行清洗,则策略路由回注过程如下:
如果引流方式为策略路由引流,Router1和清洗设备之间不存在路由环路的问题,只需要在清洗设备上应用策略路由,就可以实现回注的过程。
假设流量已经通过策略路由引流到清洗设备进行清洗,则策略路由回注过程如下:
实际应用中,回注路由器可以是Router1,也可以是其他下行路由器(如Router2)。
策略路由回注是一种常用的回注方式,一般用于存在多个回注接口的情况。由于策略路由回注配置简单,通常推荐用户使用。但是,网络拓扑结构变化时,需要手工修改策略路由配置进行调整。当变化较大,且防护对象IP地址很分散时,可能需要配置大量的策略路由。这样,一方面需要大量的人力维护;另一方面,清洗设备上配置过多策略路由也会影响系统性能。所以,此种情况建议用户配置MPLS回注方式,不再采用策略路由回注方式。
在清洗设备上配置策略路由,将清洗后的流量通过策略路由回注到Router1不同的接口。
配置策略路由的匹配条件。其中,源安全区域和入接口是互斥的必选项,二者必须配置其中一项,且后配置将覆盖之前的配置。源IP、目的IP、服务类型、应用类型和所属用户是可选项,用户可以根据需要选配。
| 匹配条件 | 命令 |
|---|---|
源安全区域或入接口 |
source-zone zone-name&<1-6> ingress-interface { interface-type interface-number }&<1-6> 说明:
除了物理口,AntiDDoS还支持将VLAN接口、以太网子接口、Eth-Trunk接口、Loopback接口这四种类型的逻辑接口配置为入接口:
|
报文的源IP |
source-address { address-set address-set-name &<1-6> | ipv4-address [ ipv4-mask-length | mask mask-address ] | ipv6-address ipv6-prefix-length | range { ipv4-start-address ipv4-end-address | ipv6-start-address ipv6-end-address } | mac-address &<1-6> | isp isp-name | any } |
报文的目的IP |
destination-address { address-set address-set-name &<1-6> | ipv4-address [ ipv4-mask-length | mask mask-address ] | ipv6-address ipv6-prefix-length | range { ipv4-start-address ipv4-end-address | ipv6-start-address ipv6-end-address } | mac-address &<1-6> | isp isp-name | any } |
报文属于的服务类型 |
service { service-name&<1-6> | any } |
报文属于的应用类型 |
application { application-name &<1-6> | any } |
执行命令action { pbr { egress-interface interface-type interface-number &<1–2> [ next-hop ip-address &<1–2> ] | next-hop ip-address &<1–2> | vpn-instance vpn-instance-name } | no-pbr },配置对满足匹配条件的报文,采取何种转发动作。
“不做策略路由(NO PBR)”动作主要用于满足一些特殊需求。例如需要对10.1.1.0/24网段内除10.1.1.2以外的所有主机进行策略路由,可以利用规则的匹配优先级,先配置一条对10.1.1.2主机不做策略路由的规则,再配置一条对10.1.1.0/24网段做策略路由的规则。
执行命令track ip-link link-id,配置策略路由与IP-Link联动,并根据IP-Link的状态检查结果来决定策略路由的可用性。
配置IP-Link链路检测功能后,如果IP-Link检测到下一跳所在链路不可达时,将不再做策略路由,直接按照路由表来指导报文转发。
以华为NE80E路由器为例,介绍路由器上的策略路由配置,将回注流量分别送到Router2和Router3。不同版本的路由器配置不同,请根据实际路由器版本进行配置,以下配置仅供参考。
执行以下命令,定义流分类。
系统视图下,执行命令traffic classifier classifier-name,定义流分类并进入流分类视图。
classifier-name指定流分类的名称,字符串形式,区分大小写,长度范围是1~31。
执行命令if-match [ ipv6 ] acl { acl-number | name acl-name },定义ACL匹配规则。
acl-number指定访问控制列表的编号,整数形式。
对于IPv4报文,取值范围是2000~4099。其中:
对于IPv6报文,取值范围是2000~3999。其中:
acl-name指命名型访问控制列表的名字。字符串形式,不支持空格,区分大小写,长度范围是1~32。以英文字母a~z或A~Z开始,可以是英文字母、数字、连字符“-”或下划线“_”的组合。
执行以下命令,定义流行为并配置动作。
系统视图下,执行命令traffic behavior behavior-name,定义行为进入流行为视图。
behavior-name指定流行为名,字符串形式,长度范围是1~31。
执行命令redirect ip-nexthop ip-address [ interface interface-type interface-number ],配置重定向到下一跳。
ip-address指定重定向到下一跳的IP地址。
interface-type interface-number指定出接口的类型和编号,编号由槽位号/卡号/端口号组成。
执行以下命令,定义流量策略并在策略中为类指定行为。
系统视图下,执行命令traffic policy policy-name,定义流量策略并进入策略视图。
policy-name指定流量策略名,字符串形式,长度范围是1~31。
执行命令classifier classifier-name behavior behavior-name [ precedence precedence ],在流量策略中为流分类指定采用的行为。
classifier-name指定流分类名称,必须是已定义的流分类名。
behavior-name指定流行为名称,必须是已定义的流行为名。
precedence表示关联起来的流分类和流行为的优先级,整数形式,取值范围为1~255。precedence的取值越小优先级越高,该流分类与流行为的关联优先被处理。如果没有设置precedence,将会按照配置的先后顺序查找流分类与流行为的关联。
执行以下命令,在接口上应用策略路由。
系统视图下,执行命令interface interface-type interface-number,进入接口视图。
此接口为图1中Router1回注流量的入接口GE1/0/2和GE1/0/3。
执行命令traffic-policy policy-name inbound,应用策略路由。
inbound指在入方向应用流量策略。