Configuration de Netflow pour des équipements Cisco Nexus 7K

Configuration de NetFlow pour Cisco Nexus 7000

 

Noter que les commandes Cisco NX-OS pour cette fonction peuvent différer de celles utilisées dans Cisco IOS.

Prérequis :

  • NetFlow ne requiert pas de licence.
  • Il faut s’assurer que les ressources requises sur l’équipement sont suffisantes pour supporter le NetFlow parce que ce dernier consomme davantage de la mémoire et les ressources CPU.
  • Dans le cas où un VDC a déjà été configuré, il est nécessaire d’installer la licence « Advanced Service » et choisir le VDC désiré.

Recommandations et limitations :

  • Il est nécessaire de configurer une interface source, si ce n’est pas fait, l’exportateur restera dans un état désactivé.
  • Il faut configurer un nom d’enregistrement valable pour tous les contrôleurs de flux.
  • Une restauration échouera dans le cas où l’on essaie de modifier un enregistrement qui a été programmé dans l’équipement durant une restauration.
  • Le nombre maximum d’entrées NetFlow pris en charge est 512K.    .

Paramètres par défaut :

Le tableau suivant énumère les paramètres par défaut de NetFlow

Paramètres

Valeur par défaut

La taille du cache ‘Egress’ et ‘Ingress’

512 K

Active Timeout

1800 s

Timeout aggressive threshold

Disabled

Timeout fast threshold

Disabled

Timeout inactive

15 s

Timeout session aging

Disables

 

La configuration :

La configuration de NetFlow passe par les 5 étapes suivantes :

  1. Activer le NetFlow.
  2. Définir un enregistrement de flux en spécifiant les clés et les champs de flux.
  3. (Optionnel) Définir un exportateur de flux en spécifiant le format d’exportation, le protocole, la destination etc.
  4. Définir un contrôleur de flux basé sur l’enregistrement et l’exportateur de flux.
  5. Appliquer le contrôleur de flux à une interface, sous-interface, un vlan ou même un réseau local virtuel.

1-      Activation de la fonction NetFlow

La commande ‘feature netflow’  permet d’activer le service Netflow. noter qu'il est nécessaire d’activer Netflow afin de pouvoir configurer les flux.

La commande ‘no feature netflow’ permet de désactiver Netflow et supprimer tous les flux.

Commandes

Description

Switch (config)# feature netflow

Activation de Netflow

Switch (config)# no feature netflow

Désactivation de Netflow et suppression des flux.

 

2-      Création et enregistrement des flux

Maintenant la création et paramétrages des flux sont possibles, cependant il faut s’assurer qu’on est dans le bon VDC. Pour changer de VDC, il suffit d'utiliser la commande '’switchto vdc vdc-name’’.

Les étapes suivantes permettent de créer un enregistrement de flux :

  • Flow record
  • Description
  • Match type
  • Collect type
  • show flow record [name] [record-name| netflow-original | netflow protocol-port | netflow {ipv4 | ipv6} {original-input | original-output}}

        Exemples:

Commandes

Description

switch# config t

switch(config)#

Entrer dans le mode configuration globale.

switch(config)# flow record Test

switch(config-flow-record)#

Permet de créer un enregistrement, et d’entrer dans le mode de configuration de l’enregistrement.

switch(config-flow-record)# description Ipv4Flow

(Optionnel) Description de cet enregistrement (63 caractères Max).

switch(config-flow-record)# match transport destination-port

Spécification du type match.

switch(config-flow-record)# match ip protocol

Spécification du protocole utilisé.

switch(config-flow-record)# collect counter packets

Spécification du champ de collecte.

switch(config-flow-exporter)# show flow record netflow protocol-port

(Optionnel) affiche les informations concernant l’enregistrement.

switch(config-flow-exporter)# copy running-config startup-config

Sauvegarde de la configuration.

 

Match & Collect :


Tous les paquets avec les mêmes attributs «matching» (c.-à la même adresse IP source / destination, source / destination, le protocole, l'interface et la classe de service) sont regroupés en un flux, donc les paquets sont comptés.

Les 7 attributs par défaut ''ou les champs clés'' identifient l'appartenance d'un paquet à un flux et déterminent si le paquet est unique ou similaire à d'autres paquets. Les éléments tels que les flags TCP, masques de sous-réseau, les paquets, octets, etc sont «champs non-clés», mais sont encore souvent «collectées» et exportés dans NetFlow ou IPFIX. En résumé les champs clés = Match et Collect = non-clé.

Les champs clés sont:

  • match transport tcp destination-port
  • match transport tcp source-port
  • match ipv4 destination address
  • match ipv4 source address
  • match ipv4 protocol
  • match ipv4 tos
  • match interface input

3-      Configuration d’un exportateur de flux

La création d’un exportateur de flux passe par les étapes suivantes :

  • flow exporter name
  • destination {ipv4-address | ipv6-address} [use-vrf name]
  • source interface-type number
  • version {5 | 9}
  • show flow exporter [name]

Commandes

Description

switch(config)# flow exporter ExportTest

switch(config-flow-exporter)#

Commande permettant de créer un exportateur de flux nommé “ExportTest”.

switch(config-flow-exporter)# destination 192.0.2.1

192.0.2.1 est l’adresse de destination pour cet exportateur.

switch(config-flow-exporter)# source ethernet 2/1

Indique l’interface à utiliser pour atteindre le collecteur Netflow.

switch(config-flow-exporter)# version 9

switch(config-flow-exporter-version-9)#

Spécifie la version de l’exportateur Netflow.

switch(config-flow-exporter-version-9)# option exporter-stats timeout 1200

(optionnel) Timeout pour renvoyer les stats. Les valeurs sont comprises entre 1 et 86 400 secondes.

switch(config-flow-exporter)# show flow exporter

Affiche les informations concernant l’exportateur Netflow.

switch(config-flow-exporter)# transport udp 200

Le port UDP sera utilisé pour atteindre le collecteur.

 

 

4-      Création d’un contrôleur de flux.

Une fois l’enregistrement et l’exportateur de flux sont créés, on peut leurs associer un contrôleur de flux.

Le tableau suivant décrit les commandes permettant la création et le paramétrage d’un contrôleur de flux.

Commandes

Description

switch(config)# flow monitor MonitorTest

switch(config-flow-monitor)#

Création d’un contrôleur de flux nommé ‘’MonitorTest’’.

switch(config-flow-monitor)# description Ipv4Monitor

Description du contrôleur (63 caractères Max)

switch(config-flow-monitor)# exporter Exportv9

Association d’un exportateur de flux, au contrôleur ‘’MonitorTest’.

switch(config-flow-monitor)# record IPv4Flow

Association d’un enregistreur de flux, au contrôleur ‘’MonitorTest’.

switch(config-flow-monitor)# show flow monitor

Affichage des informations concernant le contrôleur.

 

 

5-      Application d’un flux à une interface.

Avant d'appliquer un flux à une interface, il faut tout d'abord configurer les échantillons pour la collecte des informations, via les commandes suivantes:

Switch(config)#sampler SamplerTest
Switch(config-flow-sampler)#description Sampler-for-Int-Eth-2/1
Switch(config-flow-sampler)#mode 1 out-of 1000

 

Pour appliquer un flux à une interface (sous interface, vlan …), il faut suivre les étapes énumérées dans le tableau suivant :

Commandes

Description

switch (config) # interface ethernet 1.2

switch (config-if) #

Choix de l’interface. Ça peut être une interface Ethernet (y compris les sous interfaces), un port-channel, VLAN …

switch(config-if)# ip flow monitor MonitorTest input sampler SamplerTest

Association d’un contrôleur de flux à cette interface en entrée (en iPv4).

switch(config-if)# ipv6 flow monitor MonitorTest input

Association d’un contrôleur de flux à cette interface en entrée (en iPv6).

switch(config-if# show flow interface

Affichage des informations de Netflow associées à une interface.

 

Vérification de la configuration de Netflow

 

Pour afficher les informations de configuration de Netflow, on peut utiliser les commandes suivantes :

  • Show flow exporter ‘nom’
  • Show flow interfacetype de l'interafce’ ’numéro de l'interface
  • Show flow monitor ‘nom’ ’cache(detailed)’
  • Show flow record ‘name’
  • Show flow timeout.

Voici un exemple montrant comment créer un flux et l’appliquer à une interface:

feature netflow

flow timeout active 60
flow timeout fast 32 threshold 1
flow timeout session
flow timeout aggressive threshold 50

flow exporter EXPORTER
  description Production-Netflow-Exporter
  destination 172.16.140.164 use-vrf management
  transport udp 9996
  source mgmt0
  version 5



flow record RECORD
  description Layer-2-Flow-Record
  match datalink mac source-address
  match datalink mac destination-address
  collect counter bytes
  collect counter packets

sampler SAMPLER
  description Sampler-for-Int-Eth-2/1
  mode 1 out-of 1

flow monitor MONITOR
  record RECORD
  exporter EXPORTER

interface Vlan10
  no shutdown
  ip flow monitor MONITOR1 input sampler SAMPLER1
  ip address 192.168.1.4/24

 


interface Ethernet3/1
  switchport
  switchport mode trunk
  switchport trunk allowed vlan 1,10
  mac packet-classify
  layer2-switched flow monitor MONITOR input sampler SAMPLER
  no shutdown

 

 

Il ne reste plus qu'à installer un collecteur Netflow pour interpréter les données enregistrées. Dans notre cas nous avons utilisé PRTG Netfwork Manager.

(à suivre).

 

 

 

Informations supplémentaires