目录
(2)基于传输层端口进行过滤(去往CPU的传输层流量执行过滤)

(33条消息) SDN介绍(什么是SDN)_Atlan_blog-CSDN博客_sdn
(33条消息) SDN基本概述_曹世宏的博客-CSDN博客_sdn
—————————————————————————————————————————————————————————


(33条消息) DDOS攻击原理介绍,可怕的DDos攻击_longlong6682的博客-CSDN博客_ddos攻击原理

(33条消息) 常见的DoS攻击_echo_bright_的博客-CSDN博客_dos攻击
——————————————————————————————————————————————————————————
父接口:control-plane // 凡是去往CPU的流量都要经过这个接口
三个子接口:
①class-map —— 匹配流量
- R1(config)#class-map type port-filter match-all aaa//写了一个基于端口过滤的名称为aaa的class-map策略||||【math-all如果条件全部满足才会执行②,math-any满足任意一个条件就会执行②】(默认(math-all),可以改成math any)
- R1(config-cmap)#match port tcp 23 //匹配条件,telnet
- R1(config-cmap)#match port tcp 443 //https
- R1(config-cmap)#match port udp 520 //rip
- R1(config-cmap)#match closed-ports //匹配出其他那些未开放的端口的流量
- R1(config-cmap)#exit
②policy-map —— 针对匹配的流量执行动作(在policy-map里面调用class-map)
- R1(config)#policy-map type port-filter bbb
- R1(config-pmap)#class aaa ///调用①中的策略
- R1(config-pmap-c)#drop /// 执行丢弃行为 (也可以限速)
- R1(config-pmap-c)#exit
③service-policy —— 针对policy-map应用接口上
- R1(config)#control-plane host //进入控制层面接口(父接口或子接口)
- R1(config-cp-host)#service-policy type port-filter input bbb
- R1(config-cp-host)#exit
注:
——————————————————————————————————————————————————————————
①定义ACL:
- access-list 100 per ospf host 1.1.1.1 host 2.2.2.2
- access-list 100 per tcp any any eq 23
②class-map——匹配流量用的
- class-map aaa
- match access-group 100//在class-map调用ACL
- exit
③policy-map——针对匹配的流量执行动作(在policy-map里面调用class-map)
- policy-map bbb
- class aaa
- drop//凡是去往CPU的telnat报文、ospf报文都被丢弃了,到达不了CPU
- exit
- exit
④service-policy——针对policy-map应用接口上
- control-plane
- serviece-policy input bbb
- exit
————————————————————————————————————————————————————————
要求:去往CPU的OSPF流量限速到128K,telnet流量限速到64K,PING流量限速到32K,其余流量限速到1M

(1 )匹配流量
- R1(config)#ip access-list extended ospf
- R1(config-ext-nacl)#permit ospf any any
- R1(config-ext-nacl)#exit
-
-
- R1(config)#ip access-list extended telnet
- R1(config-ext-nacl)#permit tcp any any eq 23
- R1(config-ext-nacl)#exit
-
- R1(config)#ip access-list extended icmp
- R1(config-ext-nacl)#permit icmp any any
- R1(config-ext-nacl)#exit
(2) 配置class-map调用各自的ACL
- R1(config)#class-map n-ospf
- R1(config-cmap)#match access-group name ospf
- R1(config-cmap)#exit
-
- R1(config)#class-map n-telnet
- R1(config-cmap)#match access-group name telnet
- R1(config-cmap)#exit
-
- R1(config)#class-map n-icmp
- R1(config-cmap)#match access-group name icmp
- R1(config-cmap)#exit
(3 )配置policy-map,调用class-map,执行限速动作
- R1(config)#policy-map qos
- R1(config-pmap)#class n-ospf
- R1(config-pmap-c)#police 128000 conform-action transmit exceed-action drop //符合的穿越和转发,超过的丢弃
- R1(config-pmap-c-police)#exit
- R1(config-pmap-c)#exit
- R1(config-pmap)#
- R1(config-pmap)#class n-telnet
- R1(config-pmap-c)#police 64000 conform-action transmit exceed-action drop
- R1(config-pmap-c-police)#exit
- R1(config-pmap-c)#exit
- R1(config-pmap)#class n-icmp
- R1(config-pmap-c)#police 32000 conform-action transmit exceed-action drop
- R1(config-pmap-c-police)#exit
- R1(config-pmap-c)#exit
- R1(config-pmap)#class class-default//匹配哪些剩余的去往CPU流量
- R1(config-pmap-c)#police 1000000 conform-action transmit exceed-action drop
- R1(config-pmap-c-police)#exit
- R1(config-pmap-c)#exit
- R1(config-pmap)#exit
- R1(config)#
(4) 在接口调用policy-map
- R1(config)#control-plane
- R1(config-cp)#service-policy input qos
- R1(config-cp)#exit
- int f0/0 //物理接口调用
- service-policy input qos
- exit
(5)测试:
R1#ping 3.3.3.3 repeat 10 size 1210