Getting Started with Configuring Cisco IOS Flexible NetFlow
Last Updated: November 29, 2012
This document contains information about and instructions for configuring Flexible NetFlow to emulate the data capture, data analysis, and data export features of original NetFlow. The Flexible NetFlow equivalents of some of the other features that have been added to original NetFlow, such as NetFlow Subinterface Support and Multiple Export Destinations, are described in this document. The purpose of this document is to help you start using Flexible NetFlow as quickly as possible, and explains how to configure certain Flexible NetFlow features but does not explain them in detail. The documents listed in the
Getting Started with Configuring Cisco IOS Flexible NetFlow contain more detailed information on Flexible NetFlow features.
NetFlow is a Cisco IOS technology that provides statistics on packets flowing through the router. NetFlow is the standard for acquiring IP operational data from IP networks. NetFlow provides data to support network and security monitoring, network planning, traffic analysis, and IP accounting.
Flexible NetFlow improves on original NetFlow by adding the capability to customize the traffic analysis parameters for your specific requirements. Flexible NetFlow facilitates the creation of more complex configurations for traffic analysis and data export through the use of reusable configuration components.
Your software release may not support all the features documented in this module. For the latest caveats and feature information, see
Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table at the end of this module.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to
www.cisco.com/go/cfn. An account on Cisco.com is not required.
Prerequisites for Getting Started with Configuring Flexible NetFlow
You are familiar with the information in the " Cisco IOS Flexible NetFlow Overview " module.
The networking device must be running a Cisco IOS release that supports Cisco IOS Flexible NetFlow.
IPv4 Traffic
The networking device must be configured for IPv4 routing.
One of the following must be enabled on your router and on any interfaces on which you want to enable Flexible NetFlow: Cisco Express Forwarding or distributed Cisco Express Forwarding .
IPv6 Traffic
The networking device must be configured for IPv6 routing.
One of the following must be enabled on your router and on any interfaces on which you want to enable Flexible NetFlow: Cisco Express Forwarding IPv6 or distributed Cisco Express Forwarding IPv6.
Restrictions for Getting Started with Configuring Flexible NetFlow
Locally generated traffic (traffic that is generated by the router on which the Flexible NetFlow Output Accounting feature is configured) is not counted as flow traffic for the Output Flexible NetFlow Accounting feature.
The Flexible NetFlow Output Accounting feature counts CEF-switched packets only. Process- switched transit packets are not counted.
Information About Getting Started with Configuring Flexible NetFlow
Benefit of Emulating Original NetFlow with Flexible NetFlow
Emulating original NetFlow with Flexible NetFlow enables to you to deploy Flexible NetFlow quickly because you can use a predefined record instead of designing and configuring a custom user-defined record. You need only configure a flow monitor and apply it to an interface for Flexible NetFlow to start working like original NetFlow. You can add an optional exporter if you want to analyze the data that you collect with an application such as NetFlow collector.
Each flow monitor has a separate cache assigned to it. Each flow monitor requires a record to define the contents and layout of its cache entries. The record format can be one of the predefined record formats, or an advanced user may create his or her own record format using the collect and matchcommands in Flexible NetFlow flow record configuration mode.
Flow exporters are used to send the data that you collect with Flexible NetFlow to a remote system such as a NetFlow Collection Engine. Exporters use UDP as the transport protocol and use the Version 9 export format.
If you are familiar with original NetFlow, you already understand the format and content of the data that you collect and export with Flexible NetFlow when you emulate original NetFlow. You will be able to use the same techniques for analyzing the data.
NetFlow Original and NetFlow IPv4 Original Input Predefined Records
The Flexible NetFlow "NetFlow original" and "NetFlow IPv4 original input" predefined records can be used interchangeably because they have the same key and nonkey fields. The key and nonkey fields and the counters for the Flexible NetFlow "NetFlow original" and "NetFlow IPv4 original input" predefined records are shown in the table below.
Table 1
Key and Nonkey Fields Used by the Flexible NetFlow NetFlow Original and NetFlow IPv4 Original Input Predefined Records
Field
Key or Nonkey Field
Definition
IP ToS
Key
Value in the type of service (ToS) field.
IP Protocol
Key
Value in the IP protocol field.
IP Source Address
Key
IP source address.
IP Destination Address
Key
IP destination address.
Transport Source Port
Key
Value of the transport layer source port field.
Transport Destination Port
Key
Value of the transport layer destination port field.
Interface Input
Key
Interface on which the traffic is received.
Flow Sampler ID
Key
ID number of the flow sampler (if flow sampling is enabled).
IP Source AS
Nonkey
Source autonomous system number.
IP Destination AS
Nonkey
Destination autonomous system number.
IP Next Hop Address
Nonkey
IP address of the next hop.
IP Source Mask
Nonkey
Mask for the IP source address.
IP Destination Mask
Nonkey
Mask for the IP destination address.
TCP Flags
Nonkey
Value in the TCP flag field.
Interface Output
Nonkey
Interface on which the traffic is transmitted.
Counter Bytes
Nonkey
Number of bytes seen in the flow.
Counter Packets
Nonkey
Number of packets seen in the flow.
Time Stamp System Uptime First
Nonkey
System uptime (time, in milliseconds, since this device was first booted) when the first packet was switched.
Time Stamp System Uptime Last
Nonkey
System uptime (time, in milliseconds, since this device was first booted) when the last packet was switched.
The Flexible NetFlow "NetFlow IPv4 original output" predefined record is used to emulate the original NetFlow Egress NetFlow Accounting feature that was released in Cisco IOS Release 12.3(11)T. The key and nonkey fields and the counters for the Flexible NetFlow "NetFlow IPv4 original output" predefined record are shown in the table below.
Table 2
Key and Nonkey Fields Used by the Flexible NetFlow NetFlow IPv4 Original Output Predefined Record
Field
Key or Nonkey Field
Definition
IP ToS
Key
Value in the ToS field.
IP Protocol
Key
Value in the IP protocol field.
IP Source Address
Key
IP source address.
IP Destination Address
Key
IP destination address.
Transport Source Port
Key
Value of the transport layer source port field.
Transport Destination Port
Key
Value of the transport layer destination port field.
Interface Output
Key
Interface on which the traffic is transmitted.
Flow Sampler ID
Key
ID number of the flow sampler (if flow sampling is enabled).
IP Source AS
Nonkey
Source autonomous system number.
IP Destination AS
Nonkey
Destination autonomous system number.
IP Next Hop Address
Nonkey
IP address of the next hop.
IP Source Mask
Nonkey
Mask for the IP source address.
IP Destination Mask
Nonkey
Mask for the IP destination address.
TCP Flags
Nonkey
Value in the TCP flag field.
Interface Input
Nonkey
Interface on which the traffic is received.
Counter Bytes
Nonkey
Number of bytes seen in the flow.
Counter Packets
Nonkey
Number of packets seen in the flow.
Time Stamp System Uptime First
Nonkey
System uptime (time, in milliseconds, since this device was first booted) when the first packet was switched.
Time Stamp System Uptime Last
Nonkey
System uptime (time, in milliseconds, since this device was first booted) when the last packet was switched.
The key and nonkey fields and the counters for the Flexible NetFlow "NetFlow IPv6 original input" predefined record are shown in the table below.
Table 3
Key and Nonkey Fields Used by the Flexible NetFlow NetFlow IPv6 Original Input Predefined Record
Field
Key or NonKey Field
Definition
Traffic Class
Key
Value in the traffic class field.
Flow Label
Key
Flow label.
Protocol
Key
Value in the protocol field.
Extension Map
Key
Value in the extension map bitmap.
IP Source Address
Key
IP source address.
IP Destination Address
Key
IP destination address.
Transport Source Port
Key
Value of the transport layer source port field.
Transport Destination Port
Key
Value of the transport layer destination port field.
Interface Input
Key
Interface on which the traffic is received.
Flow Direction
Key
The direction of the flow.
Flow Sampler
Key
ID number of the flow sampler (if flow sampling is enabled).
Routing Source AS
Nonkey
Source autonomous system number.
Routing Destination AS
Nonkey
Destination autonomous system number.
Routing Next-hop Address
Nonkey
IP address of the next hop.
IP Source Mask
Nonkey
Mask for the IP source address.
IP Destination Mask
Nonkey
Mask for the IP destination address.
Transport TCP Flags
Nonkey
Value in the TCP flag field.
Interface Output
Nonkey
Interface over which the traffic is transmitted.
Counter Bytes
Nonkey
Number of bytes seen in the flow.
Counter Packets
Nonkey
Number of packets seen in the flow.
Time Stamp System Uptime First
Nonkey
System uptime (time, in milliseconds, since this device was first booted) when the first packet was switched.
Time Stamp System Uptime Last
Nonkey
System uptime (time, in milliseconds, since this device was first booted) when the last packet was switched.
NetFlow IPv6 Original Output Predefined Record
The key and nonkey fields and the counters for the Flexible NetFlow "NetFlow IPv6 original output" predefined record are shown in the table below.
Table 4
Key and Nonkey Fields Used by the Flexible NetFlow NetFlow IPv6 Original Output Predefined Record
Field
Key or Nonkey Field
Definition
Traffic Class
Key
Value in the traffic class field.
Flow Label
Key
The flow label.
Protocol
Key
Value in the protocol field.
Extension Map
Key
Value in the extension map bitmap.
IP Source Address
Key
IP source address.
IP Destination Address
Key
IP destination address.
Transport Source Port
Key
Value of the transport layer source port field.
Transport Destination Port
Key
Value of the transport layer destination port field.
Interface Output
Key
Interface over which the traffic is transmitted.
Flow Direction
Key
The direction of the flow.
Flow Sampler
Key
ID number of the flow sampler (if flow sampling is enabled).
Routing Source AS
Nonkey
Source autonomous system number.
Routing Destination AS
Nonkey
Destination autonomous system number.
Routing Next-hop Address
Nonkey
IP address of the next hop.
IP Source Mask
Nonkey
Mask for the IP source address.
IP Destination Mask
Nonkey
Mask for the IP destination address.
Transport TCP Flags
Nonkey
Value in the TCP flag field.
Interface Input
Nonkey
Interface on which the traffic is received.
Counter Bytes
Nonkey
Number of bytes seen in the flow.
Counter Packets
Nonkey
Number of packets seen in the flow.
Time Stamp System Uptime First
Nonkey
System uptime (time, in milliseconds, since this device was first booted) when the first packet was switched.
Time Stamp System Uptime Last
Nonkey
System uptime (time, in milliseconds, since this device was first booted) when the last packet was switched.
Flexible NetFlow MPLS Egress NetFlow
The Flexible NetFlow--MPLS Egress NetFlow feature allows you to capture
IP flow information for packets that arrive on a router as Multiprotocol Label
Switching (MPLS) packets and are transmitted as IP packets. This feature allows
you to capture the MPLS VPN IP flows that are traveling through the service
provider backbone from one site of a VPN to another site of the same VPN. The
Flexible NetFlow--MPLS Egress NetFlow feature is enabled by applying a flow
monitor in output (egress) mode on the provider edge (PE) to customer edge (CE)
interface of the provider's network.
The figure below shows a sample MPLS VPN network topology that includes
four VPN 1 sites and two VPN 2 sites. If the Flexible NetFlow--MPLS Egress
NetFlow is enabled on an outgoing PE interface by applying a flow monitor in
output mode, IP flow information for packets that arrive at the PE as MPLS
packets (from an MPLS VPN) and that are transmitted as IP packets to the PE
router is captured. For example:
To capture the flow of
traffic going to site 2 of VPN 1 from any remote VPN 1 sites, you enable a flow
monitor in output mode on link PE2-CE5 of provider edge router PE2.
To capture the flow of
traffic going to site 1 of VPN 2 from any remote VPN 2 site, you enable a flow
monitor in output mode on link PE3-CE4 of the provider edge router PE3.
The flow data is stored in the Flexible NetFlow cache. You can use the
showflowmonitormonitor-namecachecommand to display the flow data in the cache.
If you configure a Flexible NetFlow exporter for the flow monitors you
use for the Flexible NetFlow-- MPLS Egress NetFlow feature, the PE routers will
export the captured flows to the configured collector devices in the provider
network. Applications such as the Network Data Analyzer or the VPN Solution
Center (VPN-SC) can gather information from the captured flows and compute and
display site-to-site VPN traffic statistics.
How to Get Started with Configuring Flexible NetFlow
The tasks in this section explain how to configure and verify the emulation of original (ingress) NetFlow data capture with Flexible NetFlow for traffic that is received by the router and how to configure and verify the emulation of original NetFlow data export with Flexible NetFlow.
Note
Flexible NetFlow emulation of original NetFlow requires the configuration of a flow monitor and the application of the flow monitor to at least one interface that is receiving the traffic that you want to analyze.
Note
Only the keywords and arguments required for the Flexible NetFlow commands used in these tasks are explained in these tasks. For information on the other keywords and arguments available for these Flexible NetFlow commands, refer to the
Cisco IOS Flexible NetFlow Command Reference .
Configuring a Flow Monitor for IPv4 or IPv6 Traffic Using the Predefined Record
To configure a flow monitor for IPv4/IPv6 traffic using the Flexible NetFlow "NetFlow IPv4/IPv6 original input" predefined record for the flow monitor, perform the following required task.
Each flow monitor has a separate cache assigned to it. Each flow monitor requires a record to define the contents and layout of its cache entries. The record format can be one of the predefined record formats, or an advanced user may create his or her own record format using the
collect and
matchcommands in Flexible NetFlow flow record configuration mode.
Note
You must remove a flow monitor from all of the interfaces to which you have applied it before you can modify the
record format of the flow monitor.
SUMMARY STEPS
1.enable
2.configureterminal
3.flowmonitormonitor-name
4.descriptiondescription
5.recordnetflow{ipv4|ipv6}original-input
6.end
7.showflowmonitor[[name]
monitor-name [cache [format {csv |
record |
table}]][statistics]]
8.showrunning-configflowmonitormonitor-name
DETAILED STEPS
Command or Action
Purpose
Step 1
enable
Example:
Device> enable
Enables privileged EXEC mode.
Enter your password if prompted.
Step 2
configureterminal
Example:
Device# configure terminal
Enters global configuration mode.
Step 3
flowmonitormonitor-name
Example:
Device(config)# flow monitor FLOW-MONITOR-1
Creates a flow monitor and enters Flexible NetFlow flow monitor configuration mode.
This command also allows you to modify an existing flow monitor.
Step 4
descriptiondescription
Example:
Device(config-flow-monitor)# description Used for monitoring IPv4 traffic
(Optional) Creates a description for the flow monitor.
Step 5
recordnetflow{ipv4|ipv6}original-input
Example:
Device(config-flow-monitor)# record netflow ipv4 original-input
Specifies the record for the flow monitor.
Step 6
end
Example:
Device(config-flow-monitor)# end
Exits Flexible NetFlow flow monitor configuration mode and returns to privileged EXEC mode.
Step 7
showflowmonitor[[name]
monitor-name [cache [format {csv |
record |
table}]][statistics]]
Example:
Device# show flow monitor FLOW-MONITOR-2 cache
(Optional) Displays the status and statistics for a Flexible NetFlow flow monitor.
Step 8
showrunning-configflowmonitormonitor-name
Example:
Device# show flow monitor FLOW_MONITOR-1
(Optional) Displays the configuration of the specified flow monitor.
Applying an IPv4 Flow Monitor to an Interface
Before it can be activated an IPv4 flow monitor must be applied to at least one interface. To activate an IPv4 flow monitor, perform the following required task.
Note
When you specify the "NetFlow original" or the "NetFlow IPv4 original input" predefined record for the flow monitor to emulate original NetFlow, the flow monitor can be used for analyzing only input (ingress) traffic.
When you specify the "NetFlow IPv4 original output" predefined record for the flow monitor to emulate the Egress NetFlow Accounting feature, the flow monitor can be used for analyzing only output (egress) traffic.
Specifies an interface and enters interface configuration mode.
Step 4
ipflowmonitormonitor-nameinput
Example:
Router(config-if)# ip flow monitor FLOW-MONITOR-1 input
Activates the flow monitor that you created previously by assigning it to the interface to analyze traffic.
Step 5
end
Example:
Router(config-if)# end
Exits interface configuration mode and returns to privileged EXEC mode.
Step 6
showflowinterfacetypenumber
Example:
Router# show flow interface ethernet 0/0
Displays the status of Flexible NetFlow (enabled or disabled) on the specified interface.
Step 7
showflowmonitornamemonitor-namecacheformatrecord
Example:
Router# show flow monitor name FLOW_MONITOR-1 cache format record
Displays the status, statistics, and flow data in the cache for the specified flow monitor.
Applying an IPv6 Flow Monitor to an Interface
Before it can be activated an IPv6 flow monitor must be applied to at least one interface. To activate an IPv6 flow monitor, perform the following required task.
Note
When you specify the "NetFlow IPv6 original input" predefined record for the flow monitor to emulate original NetFlow, the flow monitor can be used for analyzing only input (ingress) traffic.
When you specify the "NetFlow IPv6 original output" predefined record for the flow monitor to emulate the Egress NetFlow Accounting feature, the flow monitor can be used for analyzing only output (egress) traffic.
Activates the flow monitor that you created previously by assigning it to the interface to analyze traffic.
Step 5
end
Example:
Router(config-if)# end
Exits interface configuration mode and returns to privileged EXEC mode.
Step 6
showflowinterfacetypenumber
Example:
Router# show flow interface ethernet 0/0
Displays the status of Flexible NetFlow (enabled or disabled) on the specified interface.
Step 7
showflowmonitornamemonitor-namecacheformatrecord
Example:
Router# show flow monitor name FLOW_MONITOR-1 cache format record
Displays the status, statistics, and flow data in the cache for the specified flow monitor.
Configuring a Flow Exporter for the Flow Monitor
Perform this optional task to configure a flow exporter for the flow monitor in order to export the data that is collected by Flexible NetFlow to a remote system for further analysis and storage.
Flow exporters are used to send the data that you collect with Flexible NetFlow to a remote system such as a NetFlow Collection Engine. Exporters use UDP as the transport protocol and use the Version 9 export format.
Note
Each flow exporter supports only one destination. If you want to export the data to multiple destinations, you must configure multiple flow exporters and assign them to the flow monitor.
You can export to a destination using either an IPv4 or IPv6 address.
Specifies the version of the NetFlow export protocol used by the exporter.
Default:
netflow-v9.
Step 7
transportudpudp-port
Example:
Device(config-flow-exporter)# transport udp 65
Configures UDP as the transport protocol and specifies the UDP port on which the destination system is listening for exported Flexible NetFlow traffic.
Step 8
exit
Example:
Device(config-flow-exporter)# exit
Exits Flexible NetFlow flow exporter configuration mode and returns to global configuration mode.
Step 9
flowmonitorflow-monitor-name
Example:
Device(config)# flow monitor FLOW-MONITOR-1
Enters Flexible NetFlow flow monitor configuration mode for the flow monitor that you created previously.
Step 10
exporterexporter-name
Example:
Device(config-flow-monitor)# exporter EXPORTER-1
Specifies the name of an exporter that you created previously.
Step 11
end
Example:
Device(config-flow-monitor)# end
Exits Flexible NetFlow flow monitor configuration mode and returns to privileged EXEC mode.
Step 12
showflowexporterexporter-name
Example:
Device# show flow exporter FLOW_EXPORTER-1
(Optional) Displays the current status of the specified flow exporter.
Step 13
showrunning-configflowexporterexporter-name
Example:
Device<# show running-config flow exporter FLOW_EXPORTER-1
(Optional) Displays the configuration of the specified flow exporter.
Configuration Examples for Emulating Original NetFlow Features with Flexible NetFlow
The following example shows how to configure Flexible NetFlow multiple export destinations.
This example starts in global configuration mode.
!
flow exporter EXPORTER-1
destination 172.16.10.2
transport udp 90
exit
!
flow exporter EXPORTER-2
destination 172.16.10.3
transport udp 90
exit
!
flow monitor FLOW-MONITOR-1
record netflow-original
exporter EXPORTER-2
exporter EXPORTER-1
exit
!
ip cef
!
interface GigabitEthernet0/0/0
ip address 172.16.6.2 255.255.255.0
ip flow monitor FLOW-MONITOR-1 input
!
Where to Go Next
For information on advanced Flexible NetFlow configurations for specific purposes such as quality of service (QoS) and bandwidth monitoring, application and user flow monitoring and profiling, and security analysis, refer to the "Customizing
Cisco IOS Flexible NetFlow Flow Records and Flow Monitors" module.
If you want to configure additional options for data export for Flexible NetFlow, refer to the "Configuring Data Export for
Cisco IOS Flexible NetFlow with Flow Exporters" module.
If you want to configure flow sampling to reduce the CPU overhead of analyzing traffic, refer to the "Using
Cisco IOS Flexible NetFlow Flow Sampling to Reduce the CPU Overhead of Analyzing Traffic" module.
If you want to configure any of the predefined records for Flexible NetFlow refer, to the "Configuring
Cisco IOS Flexible NetFlow with Predefined Records" module.
The Cisco Support and Documentation website provides online resources to download documentation, software, and tools. Use these resources to install and configure the software and to troubleshoot and resolve technical issues with Cisco products and technologies. Access to most tools on the Cisco Support and Documentation website requires a Cisco.com user ID and password
The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to
www.cisco.com/go/cfn. An account on Cisco.com is not required.
Table 5
Feature Information for Flexible NetFlow
Feature Name
Releases
Feature Information
Flexible NetFlow
12.2(33)SRC
12.2(50)SY
12.4(9)T
15.0(1)SY
15.0(1)SY1
Flexible NetFlow is introduced.
Support for this feature was added for Cisco 7200 series routers in Cisco IOS Release 12.2(33)SRC.
Support for this feature was added for Cisco 7200 and 7300 NPE series routers in Cisco IOS Release 12.2(33)SRE.
The following commands were introduced or modified:
collectrouting,
debugflowrecord,
matchrouting,
record,
showflowmonitor,showflowrecord,
collectipv6,
collectipv6destination,
collectipv6extensionmap,
collectipv6fragmentation,
collectipv6hop-limit,
collectipv6length,
collectipv6section,
collectipv6source,
collecttransporticmpipv6,
ipv6flowmonitor,
matchipv6,
matchipv6destination,
matchipv6extensionmap,
matchipv6fragmentation,
matchipv6hop-limit,
matchipv6length,
matchipv6section,
matchipv6source,
matchtransporticmpipv6.
Flexible NetFlow--MPLS Egress NetFlow
12.2(33)SRE
12.2(50)SY
12.4(22)T
15.0(1)SY
15.0(1)SY1
The Flexible NetFlow--MPLS Egress NetFlow feature allows you to capture IP flow information for packets undergoing MPLS label disposition; that is, packets that arrive on a router as MPLS packets and are transmitted as IP packets.
Support for this feature was added for Cisco 7200 and 7300 NPE series routers in Cisco IOS Release 12.2(33)SRE.
No commands were introduced or modified by this feature.
Flexible NetFlow: Export to an IPv6 Address
15.2(2)T
This feature enables Flexible NetFlow to export data to a destination using an IPv6 address.
The following commands were introduced or modified:
destination
Flexible NetFlow: IPFIX Export Format
15.2(4)M
Enables sending export packets using the IPFIX export protocol. The export of extracted fields from NBAR is only supported over IPFIX.
Support for this feature was added for Cisco ASR 1000 Series Aggregation Services routers in Cisco IOS XE Release 3.7S.
The following command was introduced:
export-protocol.
Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL:
www.cisco.com/go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1110R)
Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.