GRE回注是指通过在清洗设备和回注路由器之间建立隧道,将流量直接送到回注路由器上,最后送到防护对象。
本功能在AntiDDoS上配置。
如图1所示,Router1为引流路由器。Router1的GE1/0/1接口与清洗设备的GE2/0/1接口之间的通道为引流通道。流量通过Router1的GE1/0/1接口引导至清洗设备的GE2/0/1接口进行清洗。
Router2为回注路由器。清洗设备与Router2之间建立GRE隧道,在清洗设备和Router2上分别创建Tunnel接口,并指定Tunnel的源地址和目的地址。Tunnel的源地址是发送报文的实际接口IP地址,目的地址是接收报文的实际接口IP地址。清洗后的流量直接进入GRE隧道,送到Router2转发,最后送到防护对象。
源地址和目的地址之间必须路由可达。
实际应用中,回注路由器可以是Router2,也可以是其他下行路由器。
对于引流方式为BGP引流的场景,GRE回注可以直接避开引流路由,将回注流量直接送到下行学习不到引流路由的路由器,避免了路由环路的问题。
GRE回注对路由器的路由特性要求不高,具备GRE功能和基本路由转发功能即可,适用于回注路由器比较少的场景。而对于清洗设备需要和多个回注路由器建立GRE隧道的场景,用户手动配置命令较繁琐,此时建议用户配置动态路由回注方式。
在清洗设备上配置GRE隧道,将清洗后的流量通过GRE隧道送到回注路由器。
执行命令source { interface-type interface-number | source-ip-address },配置Tunnel接口的源端地址。
Tunnel接口的源端地址可以选择接口名称或IP地址两种形式。当选择接口名称时,取值为GigabitEthernet、POS、Eth-Trunk和IP-Trunk。
如果配置接口IP地址,则此IP地址可以为回注口IP地址,也可以为清洗设备的Loopback地址。
执行命令destination dest-ip-address,配置Tunnel接口的目的端地址。
Tunnel接口的目的端地址不能与源端地址相同。
此处配置的目的端地址为回注路由器Router2的接口IP地址。
执行命令ip address ip-address { mask | mask-length },配置Tunnel接口的IP地址。
Tunnel接口的IP地址可以任意配置。当使用动态路由协议生成经过Tunnel接口转发的路由时,GRE隧道两端Tunnel接口的IP地址必须配置为同一网段。
执行命令add interface tunnel tunnel-number,配置Tunnel接口加入安全区域。
Tunnel接口可以加入到任意一个安全区域。当Tunnel接口和源端接口(源端地址所属的接口)不在同一安全区域中时,需要配置域间包过滤,使两个安全区域能够互相访问。
执行以下命令,配置策略路由。
policy-based-route rule name rule-name ingress-interface { interface-type interface-number } destination-address { ipv4-address [ ipv4-mask-length | mask mask-address ] | ipv6-address ipv6-prefix-length } action pbr egress-interface interface-type interface-number
在清洗设备上配置策略路由,将引流流量送到Tunnel接口转发,这样清洗后的流量才能进入GRE隧道,并正确转发到GRE隧道目的端。
以华为NE80E路由器为例,介绍配置GRE回注时,路由器上的相关配置。不同版本的路由器配置不同,请根据实际路由器版本进行配置,以下配置仅供参考。
执行命令source { source-ip-address | loopback interface-number },设置Tunnel接口的源地址或源接口。
执行命令destination dest-ip-address,配置Tunnel接口的目的端地址。
Tunnel接口的目的端地址不能与源端地址相同。
此处配置的目的端地址为清洗设备回注接口的IP地址或Loopback地址。
执行命令ip address ip-address { mask | mask-length },配置Tunnel接口的IP地址。
Tunnel接口的IP地址可以任意配置。当使用动态路由协议生成经过Tunnel接口转发的路由时,GRE隧道两端Tunnel接口的IP地址必须配置为同一网段。