理想拓扑
实验拓扑
实验需求
1、图中类antiddos作为antiddos清洗设备存在,配置引流模式为自动引流模式。
动态引流:
检测设备发现异常通告管理中心,管理中心自动生成引流策略并下发到清洗设备;攻击结束,管理中心向清洗设备下发取消引流策略。
静态引流:
手动创建并下发引流策略到清洗设备引发引流,业务流量无论是否发生异常,都将改变原有流量的路径将流量引流到清洗设备。
2、当到达防护对象9.9.9.9的流量发生异常时,antiddos后方的ATIC(现应为Seco-Manager,基于NCE的控制器)自动下发引流任务到达清洗设备。
3、此时清洗设备生成一条32位的UNR路由(图中为类UNR 9.9.9.9),该UNR路由下一跳为antiddos与site-gw的回注接口(site-gw的G0/0/0接口)。
4、antiddos通过BGP将UNR路由发布给site-gw。
5、site-gw收到UNR路由后生成一条目的地为9.9.9.9,下一跳为10.1.1.2的BGP路由(图中类anti-ddos的引流接口G/0/01地址)
后续从Interent去往防护对象9.9.9.9的路由直接送达antiddos进行清洗。
该场景下注意路由优先级和最长掩码匹配,保证该UNR一定为最优,否则引流失败。
实验步骤
1、建立OSPF、BGP邻居。
2、类antiddos配置生成UNR路由的下一跳地址(回注路由)。
原为 firewall ddos bgp-next-hop 10.1.2.1
现为 ip route-static 9.9.9.9 32 10.1.2.1
3、antiddos配置引流任务自行想象,当检测设备(该场景为检测/清洗二合一antiddos)检测到流量异常,下发动态引流任务并生成上一步提到的UNR路由。
4、为了防止路由环路,需要在类antiddos配置BGP团体属性(no-advertise 不向任何对等体发布)向site-gw发布
route-policy 1 permit node 1
apply community no-advertise # 不向任何对等体发布路由,该属性为well-known(公认必遵)
#
ip ip-prefix 1 permit 9.9.9.9 32 # 由于模拟器限制,模拟类unr路由(1)
#
route-policy 2 permit node 1 # 由于模拟器限制,模拟类unr路由(2)
if-match ip-prefix 1
#
bgp 100
import direct route-policy 2 # 将类UNR路由引入的site-gw
peer 1.1.1.1 advertise-community # 团体属性为可选可传递(可选可过渡),所以需要该命令才可以发布团体属性
peer 1.1.1.1 route-policy 1 export # 在out方向告知site-gw不允许将unr路由发布给任何对等体
5、当site-gw收到类UNR路由后,查询BGP路由的详细属性
[site-gw]dis bgp routing-table 9.9.9.9 32
BGP local router ID : 10.1.4.1
Local AS number : 100
Paths: 1 available, 1 best, 1 select
BGP routing table entry information of 9.9.9.9/32:
From: 2.2.2.2 (10.1.1.2)
Route Duration: 00h01m45s
Relay IP Nexthop: 10.1.1.2
Relay IP Out-Interface: GigabitEthernet1/0/0
Original nexthop: 2.2.2.2
Qos information : 0x0
Community:no-advertise # 不向任何对等体发布
AS-path Nil, origin incomplete, MED 0, localpref 100, pref-val 0, valid, intern
al, best, select, active, pre 255, IGP cost 1
Not advertised to any peer yet
6、小技巧,由于修改BGP路由属性可能反应时间较长,可以利用refresh进行刷新
<site-gw>refresh bgp 2.2.2.2 import
7、此时,就算在site-gw将BGP路由重分发到ospf,ospf邻居也学习不到9.9.9.9的路由