{"id":54,"date":"2014-05-31T21:42:44","date_gmt":"2014-05-31T21:42:44","guid":{"rendered":"http:\/\/feralpacket.org\/?p=54"},"modified":"2015-01-03T11:21:31","modified_gmt":"2015-01-03T11:21:31","slug":"v5-written-and-lab-control-plane-policing-notes","status":"publish","type":"post","link":"https:\/\/feralpacket.org\/?p=54","title":{"rendered":"v5 Written and Lab:  Control Plane Policing Notes"},"content":{"rendered":"<p><code>v5 Written: 5.1.c Implement and troubleshoot control plane policing<br \/>\nv5 Lab: 4.1.c Implement and troubleshoot control plane policing<\/code><\/p>\n<p>Documents:<\/p>\n<p>QoS Policing and Shaping Configuration Guide, Cisco IOS 15 M&amp;T; Chapter 11: Control Plane Policing<\/p>\n<p>QoS Policing and Shaping Configuration Guide, Cisco IOS 15 M&amp;T; Chapter 12: Control Plane Protection<\/p>\n<p>QoS Policing and Shaping Configuration Guide, Cisco IOS 15 M&amp;T; Chapter 13: Control Plane Logging<\/p>\n<p>http:\/\/www.cisco.com\/c\/en\/us\/td\/docs\/ios-xml\/ios\/qos_plcshp\/configuration\/15-mt\/qos-plcshp-15-mt-book.html<\/p>\n<p>Control Plane Policing<br \/>\nhttp:\/\/www.cisco.com\/en\/US\/docs\/ios-xml\/ios\/qos_plcshp\/configuration\/15-1mt\/qos-plcshp-ctrl-pln-plc.html<\/p>\n<p>Deploying Control Plane Policing<br \/>\nhttp:\/\/www.cisco.com\/c\/en\/us\/products\/collateral\/security\/ios-network-foundation-protection-nfp\/prod_white_paper0900aecd804fa16a.html<\/p>\n<p>Control Plane Policing Implementation Best Practices<br \/>\nhttp:\/\/www.cisco.com\/web\/about\/security\/intelligence\/coppwp_gs.html<\/p>\n<p>The only thing I could find on troubleshooting Control Plane Policing was to enable logging. So:<\/p>\n<p>Control Plane Logging<br \/>\nhttp:\/\/www.cisco.com\/c\/en\/us\/td\/docs\/ios\/porting\/sec_control_plane\/configuration\/guide\/15_0\/cps_15_0_book\/ctrl_plane_logging.pdf<\/p>\n<p>The INE labs include both Control Plane Policing and Control Plane Protection. So:<\/p>\n<p>&#8220;The Control Plane Protection feature is an extension of the policing functionality provided by the<br \/>\nexisting Control-Plane Policing feature. The Control-Plane Policing feature allows Quality of Service<br \/>\n(QoS) policing of aggregate control-plane traffic destined to the route processor. The Control Plane<br \/>\nProtection feature extends this policing functionality by allowing finer policing granularity.&#8221;<\/p>\n<p>Control Plane Protection<br \/>\nhttp:\/\/www.cisco.com\/c\/en\/us\/td\/docs\/ios\/porting\/sec_control_plane\/configuration\/guide\/15_0\/cps_15_0_book\/ctrl_plane_prot.pdf<\/p>\n<p>Books:<\/p>\n<p>Router Security Strategies: Securing IP Network Traffic Planes; Chp 5: IP Control Plane Security, Control Plane Policing<\/p>\n<p>CCIE Routing and Switching Exam Certification Guide 4th Ed; Chp 18 Security, Control Plane Policing, pgs. 804 &#8211; 808<\/p>\n<p>Router-Bits Handbook; COPP (Control Plane Policing) pgs. 268 &#8211; 269<\/p>\n<p>INE:<\/p>\n<p>INE Security Lab Workbook Vol I v3.5<br \/>\n&#8211; Control \/ Management Plane Security<br \/>\n&#8211; Sections 6.1 &#8211; 6.16, pgs. 55 &#8211; 60<br \/>\n&#8211; Control \/ Management Plane Security Solutions<br \/>\n&#8211; Sections 6.1 &#8211; 6.16, pgs. 950 &#8211; 1010<\/p>\n<p>INE R&amp;S Workbook Vol I<br \/>\n&#8211; Section 11 Security, 11.64 Control Plane Policing, pg. 14<br \/>\n&#8211; Section 11 Security, 11.65 Control Plane Protection, pg. 15<br \/>\n&#8211; Section 11 Security Solutions, 11.64 Control Plane Policing, pgs. 148 &#8211; 152<br \/>\n&#8211; Section 11 Security Solutions, 11.65 Control Plane Protection, pgs. 153 &#8211; 164<\/p>\n<p>INE R&amp;S Workbook II<br \/>\n&#8211; Lab 1, 6.4, pg. 12<br \/>\n&#8211; Lab 5, 6.5, pg. 66<br \/>\n&#8211; Lab 7, 6.3, pg. 98<br \/>\n&#8211; Lab 9, 6.4, pg. 129<br \/>\n&#8211; Lab 15, 6.4, pg. 221<\/p>\n<p>Exception IP and non-IP packets (punts):<br \/>\n&#8211; IP header options (IPv4) (Unicast or multicast)<br \/>\n&#8211; IP packet TTL expires<br \/>\n&#8211; IP packets with unreachable destinations<br \/>\n&#8211; Layer 2 keepalives<br \/>\n&#8211; ISIS packets<br \/>\n&#8211; CDP packets<br \/>\n&#8211; PPP Link Control Protocol (LCP) packets<br \/>\n&#8211; ARP packets<br \/>\n&#8211; Reverse ARP packets<br \/>\n&#8211; BPDU packets<br \/>\n&#8211; VTP packets<br \/>\n&#8211; UDLD packets<br \/>\n&#8211; PagP packets<br \/>\n&#8211; LACP packets<br \/>\n&#8211; Layer 2 Tunneling packets<br \/>\n&#8211; IGMP packets<br \/>\n&#8211; MTU failure<br \/>\n&#8211; VLAN ACL logging<br \/>\n&#8211; IP errors<br \/>\n&#8211; IP RPF failure<br \/>\n&#8211; Multicast RPF failure<\/p>\n<p>IP interface ACLs apply to:<br \/>\n&#8211; data plane traffic<br \/>\n&#8211; control plane traffic<br \/>\n&#8211; management plane traffic<br \/>\n&#8211; services plane traffic<\/p>\n<p>IP Receive ACL (rACL):<br \/>\n&#8211; only ingress packets with an IP next hop of receive<br \/>\n&#8211; have a CEF receive adjacency<\/p>\n<p>IP prefixes having a CEF receive adjacency:<br \/>\n&#8211; \/32 IP addresses assigned to the local router IP interfaces<br \/>\n&#8211; physical<br \/>\n&#8211; channel<br \/>\n&#8211; logical<br \/>\n&#8211; loopback<br \/>\n&#8211; VRF interfaces<br \/>\n&#8211; MPLS VPNs<br \/>\n&#8211; MPL with IPSec VPNS<br \/>\n&#8211; broadcast addresses<br \/>\n&#8211; network addresses<br \/>\n&#8211; reserved IP multicast addresses in the range between 224.0.0.0 and 225.0.0.225<\/p>\n<p>sh ip cef | in receive<\/p>\n<p>Slow path &#8211;&gt; IOS process level switched<\/p>\n<p>ip receive access-list<\/p>\n<p>Example:<br \/>\naccess-list 100 deny ip any any fragments<br \/>\naccess-list 100 permit tcp any any eq 23 precedence internet<br \/>\naccess-list 100 permit ospf any any precedence internet<br \/>\naccess-list 100 permit icmp any any echo-reply<br \/>\naccess-list 100 deny ip any any<\/p>\n<p>ip receive access-list 100<\/p>\n<p>rACL Configuration Guidelines:<br \/>\n&#8211; Identify protocols and port numbers used<br \/>\n&#8211; Filter unnecessary protocols and port numbers<br \/>\n&#8211; IP fragments<br \/>\n&#8211; IP TOS<br \/>\n&#8211; ICMP<br \/>\n&#8211; Limited permitted IP Source Address<br \/>\n&#8211; BGP<br \/>\n&#8211; IGP protocols<br \/>\n&#8211; Management protocols<br \/>\n&#8211; Limited Permitted IP Destination Addresses<\/p>\n<p>Router sourced traffic:<br \/>\n&#8211; IP precedence value 6 (Internet control) (RFC 795)<br \/>\n&#8211; BGP<br \/>\n&#8211; OSPF<br \/>\n&#8211; RIP<br \/>\n&#8211; ICMP<br \/>\n&#8211; DVMRP<br \/>\n&#8211; PIM<br \/>\n&#8211; IGMP<br \/>\n&#8211; HSRP<br \/>\n&#8211; MPLS LDP<br \/>\n&#8211; RSVP<br \/>\n&#8211; SSH<br \/>\n&#8211; Telnet<br \/>\n&#8211; IP precedence value 0 (Routine)<br \/>\n&#8211; RADIUS<br \/>\n&#8211; TACACS+<br \/>\n&#8211; SNMP<br \/>\n&#8211; syslog<\/p>\n<p>MQC &#8211; The Modular Quality of Service (QoS) Command-Line Interface (CLI)<br \/>\n&#8211; used to configure the packet classification on policing functions of CoPP<br \/>\n&#8211; the only MQC actions supported in policy maps is police and drop<br \/>\n&#8211; features that require NBAR (Network-Based Application Recognition) may not work well at the control plane level<\/p>\n<p>Classification (match) criteria supported:<br \/>\n&#8211; standard and extended IP access-lists<br \/>\n&#8211; class-map configuration mode:<br \/>\n&#8211; match ip dscp<br \/>\n&#8211; match ip precedence<br \/>\n&#8211; match protocol arp<br \/>\n&#8211; match protocol pppoe<\/p>\n<p>Silent mode operation:<br \/>\n&#8211; service-policy output &#8211; system error messages are not sent when a packet is discarded<\/p>\n<p>CoPP steps:<br \/>\n&#8211; constructing the CoPP policy<br \/>\n&#8211; deploying the CoPP policy<br \/>\n&#8211; verifying the CoPP policy<br \/>\n&#8211; tuning the CoPP policy<\/p>\n<p>Parts:<br \/>\n&#8211; access list<br \/>\n&#8211; class map<br \/>\n&#8211; policy map<br \/>\n&#8211; control plane service policy<\/p>\n<p>Example:<br \/>\naccess-list 141 deny icmp 10.0.0.0 0.0.0.255 any port-unreachable<br \/>\naccess-list 141 permit icmp any any port-unreachable<\/p>\n<p>class-map icmp-class<br \/>\nmatch access-group 141<\/p>\n<p>policy-map control-plane-out<br \/>\nclass icmp-class<br \/>\ndrop<\/p>\n<p>control-plane<br \/>\nservice-policy output control-plane-out<\/p>\n<p>class-map:<br \/>\n&#8211; packets that fail to meet any of the matching criteria are classified as members of the default class<br \/>\n&#8211; match-any<br \/>\n&#8211; match-all<br \/>\n&#8211; the default class is always applied, whether it&#8217;s configured or not<\/p>\n<p>policy-map:<br \/>\n&#8211; used to a traffic class with one or more QoS polices<br \/>\n&#8211; association called a service-policy<br \/>\n&#8211; classes are processed from top down<br \/>\n&#8211; when a packet matches a class, no further processing is done<br \/>\n&#8211; a packet can only belong to one class<\/p>\n<p>Example:<\/p>\n<p>ip access-list extended copp-system-acl-bgp<br \/>\npermit tcp any gt 1024 any eq bgp<br \/>\npermit tcp any eq bgp any gt 1024<br \/>\nip access-list extended copp-system-acl-dhcp<br \/>\npermit udp any eq bootpc any<br \/>\npermit udp any eq bootps any<br \/>\npermit udp any any eq bootpc<br \/>\npermit udp any any eq bootps<br \/>\nip access-list extended copp-system-acl-eigrp<br \/>\npermit eigrp any any<br \/>\nip access-list extended copp-system-acl-ftp<br \/>\npermit tcp any any eq ftp-data<br \/>\npermit tcp any any eq ftp<br \/>\npermit tcp any eq ftp-data any<br \/>\npermit tcp any eq ftp any<br \/>\nip access-list extended copp-system-acl-glbp<br \/>\npermit udp any eq 3222 224.0.0.0 0.0.0.255 eq 3222<br \/>\nip access-list extended copp-system-acl-hsrp<br \/>\npermit udp any 224.0.0.0 0.0.0.255 eq 1985<br \/>\nip access-list extended copp-system-acl-icmp<br \/>\npermit icmp any any echo<br \/>\npermit icmp any any echo-reply<br \/>\nip access-list extended copp-system-acl-igmp<br \/>\npermit igmp any 224.0.0.0 224.255.255.255<br \/>\nip access-list extended copp-system-acl-msdp<br \/>\npermit tcp any gt 1024 any eq 639<br \/>\npermit tcp any eq 639 any gt 1024<br \/>\nip access-list extended copp-system-acl-ntp<br \/>\npermit udp any any eq ntp<br \/>\npermit udp any eq ntp any<br \/>\nip access-list extended copp-system-acl-ospf<br \/>\npermit ospf any any<br \/>\nip access-list extended copp-system-acl-pim<br \/>\npermit pim any 224.0.0.0 0.0.0.255<br \/>\npermit udp any any eq pim-auto-rp<br \/>\npermit ahp any 224.0.0.13 0.0.0.0<br \/>\nip access-list extended copp-system-acl-pim-reg<br \/>\npermit pim any any<br \/>\nip access-list extended copp-system-acl-radus<br \/>\npermit udp any any eq 1812<br \/>\npermit udp any any eq 1813<br \/>\npermit udp any any eq 1645<br \/>\npermit udp any any eq 1646<br \/>\npermit udp any eq 1812 any<br \/>\npermit udp any eq 1813 any<br \/>\npermit udp any eq 1645 any<br \/>\npermit udp any eq 1646 any<br \/>\nip access-list extended copp-system-acl-rip<br \/>\npermit udp any 244.0.0.0 0.0.0.255 eq rip<br \/>\nip access-list extended copp-system-acl-sftp<br \/>\npermit tcp any any eq 115<br \/>\npermit tcp any eq 115 any<br \/>\nip access-list extended copp-system-acl-snmp<br \/>\npermit udp any any eq snmp<br \/>\npermit udp any any eq snmptrap<br \/>\nip access-list extended copp-system-acl-ssh<br \/>\npermit tcp any any eq 22<br \/>\npermit tcp any eq 22 any<br \/>\nip access-list extended copp-system-acl-tacacs<br \/>\npermit tcp any any eq tacacs<br \/>\npermit tcp any eq tacacs any<br \/>\nip access-list extended copp-system-acl-tftp<br \/>\npermit udp any any eq tftp<br \/>\npermit udp any any eq 1758<br \/>\npermit udp any eq tftp any<br \/>\npermit udp any eq 1758 any<br \/>\nip access-list extended copp-system-acl-traceroute<br \/>\npermit icmp any any ttl-exceeded<br \/>\npermit icmp any any port-unreachable<br \/>\npermit icmp any any<br \/>\nip access-list extended copp-system-acl-vrrp<br \/>\npermit 112 any 224.0.0.0 0.0.0.255<br \/>\nip access-list extended copp-system-acl-wccp<br \/>\npermit udp any eq 2048 any eq 2048<br \/>\nip access-list extended copp-system-acl-exception<br \/>\npermit ip any any option any-options<br \/>\npermit icmp any any unreachable<\/p>\n<p>!<br \/>\nclass-map match-any copp-system-class-critical<br \/>\nmatch access-group name copp-system-acl-bgp<br \/>\nmatch access-group name copp-system-acl-eigrp<br \/>\nmatch access-group name copp-system-acl-igmp<br \/>\nmatch access-group name copp-system-acl-msdp<br \/>\nmatch access-group name copp-system-acl-ospf<br \/>\nmatch access-group name copp-system-acl-pim<br \/>\nmatch access-group name copp-system-acl-rip<br \/>\nclass-map match-any copp-system-class-exception<br \/>\nmatch access-group name copp-system-acl-exception<br \/>\nclass-map match-any copp-system-class-important<br \/>\nmatch access-group name copp-system-acl-glbp<br \/>\nmatch access-group name copp-system-acl-hsrp<br \/>\nmatch access-group name copp-system-acl-vrrp<br \/>\nmatch access-group name copp-system-acl-wccp<br \/>\nmatch access-group name copp-system-acl-pim-reg<br \/>\nclass-map match-any copp-system-class-management<br \/>\nmatch access-group name copp-system-acl-ftp<br \/>\nmatch access-group name copp-system-acl-ntp<br \/>\nmatch access-group name copp-system-acl-radius<br \/>\nmatch access-group name copp-system-acl-sftp<br \/>\nmatch access-group name copp-system-acl-snmp<br \/>\nmatch access-group name copp-system-acl-ssh<br \/>\nmatch access-group name copp-system-acl-tacacs<br \/>\nmatch access-group name copp-system-acl-tftp<br \/>\nclass-map match-any copp-system-class-monitoring<br \/>\nmatch access-group name copp-system-acl-icmp<br \/>\nmatch access-group name copp-system-acl-traceroute<br \/>\nclass-map match-any copp-system-class-normal<br \/>\nmatch access-group name copp-system-acl-dhcp<br \/>\nmatch protocol arp<br \/>\n!<br \/>\npolicy-map copp-system-policy<br \/>\nclass copp-system-class-critical<br \/>\npolice cir 39600000 bc 250000 conform-action transmit exceed-action drop<br \/>\nclass copp-system-class-important<br \/>\npolice cir 1060000 bc 1000000 conform-action transmit exceed-action drop<br \/>\nclass copp-system-class-management<br \/>\npolice cir 10000000 bc 250000 conform-action transmit exceed-action drop<br \/>\nclass copp-system-class-normal<br \/>\npolice cir 680000 bc 250000 conform-action transmit exceed-action drop<br \/>\nclass copp-system-class-monitoring<br \/>\npolice cir 130000 bc 100000 conform-action transmit exceed-action drop<br \/>\nclass copp-system-class-exception<br \/>\npolice cir 360000 bc 250000 conform-action transmit exceed-action drop<br \/>\nclass class-default<br \/>\npolice cir 100000 bc 25000 conform-action transmit exceed-action drop<br \/>\n!<br \/>\ncontrol-plane<br \/>\nservice-policy input copp-system-policy<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>v5 Written: 5.1.c Implement and troubleshoot control plane policing v5 Lab: 4.1.c Implement and troubleshoot control plane policing Documents: QoS Policing and Shaping Configuration Guide, Cisco IOS 15 M&amp;T; Chapter 11: Control Plane Policing QoS Policing and Shaping Configuration Guide, Cisco IOS 15 M&amp;T; Chapter 12: Control Plane Protection QoS Policing and Shaping Configuration Guide, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[30,22,11],"class_list":["post-54","post","type-post","status-publish","format-standard","hentry","category-ccie","tag-ccie","tag-control-plane-policing","tag-route-switch"],"_links":{"self":[{"href":"https:\/\/feralpacket.org\/index.php?rest_route=\/wp\/v2\/posts\/54","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/feralpacket.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/feralpacket.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/feralpacket.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/feralpacket.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=54"}],"version-history":[{"count":5,"href":"https:\/\/feralpacket.org\/index.php?rest_route=\/wp\/v2\/posts\/54\/revisions"}],"predecessor-version":[{"id":234,"href":"https:\/\/feralpacket.org\/index.php?rest_route=\/wp\/v2\/posts\/54\/revisions\/234"}],"wp:attachment":[{"href":"https:\/\/feralpacket.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=54"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/feralpacket.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=54"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/feralpacket.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=54"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}