NetFlow/sFlow/IPFix

Natürlich interessiert mich auch, was hinter NetFlow und Co steckt. Was liegt da näher als mit WireShark (vormals Ethereal) oder NetMon auf dem Kabel nachzuschauen. Die Daten sind mit WireShark bzw. NetMon auf dem LAN recht einfach zu analysieren.

cFlow

 Am besten filtert man auf die Source-IP des Switches oder den Ziel-UDP-Port, um vorab nur diese Pakete zu erhalten.

In NetMon konnte ich die Daten bislang nicht analysieren aber WireShark man damit gut umgehen. Allerdings konnte er bei mir auch nicht automatisch das Format erkennen. Ich musste in der Ansicht ein "Decode as..." CFlow auswählen:

Es gibt auch sFlow als Option, wenn ihr Router statt dessen dieses Format verwendet. Im UDP-Auszug auf die "Flows" mit den Inhalten sehen. Hier wurde der Flow 2 im Detail manuell in das Bild einkopiert:

Dies Daten fliegen nun dem Zielsystem per UDP entgegen. Es ist dem Absender dabei egal, ob das Zielsystem diese Daten auch annimmt und verarbeiten kann.

IPFix/sFlow

NetFlow ist meist nur auf Netzwerk-Devices verfügbar und wurde von Cisco eingeführt. Daneben gibt es noch andere sehr ähnliche Protokolle. PRTG nennt das dann "xFlow" und sammelt darunter NetFlow, sFlow, jFlow, und IPFIX (PRTG 13.x.7 Sensors). Leider liefert Windows selbst keine entsprechendes Modul mit, aber es gibt verschiedene Programme, die ergänzend installiert werden können.

Ob ein Router, Firewall, Switch auch Daten sendet, bekommen Sie einfach mit einem Netzwerkmitschnitt mit. Dort können Sie erst einem Capture-Filter auf den UDP-Port 4739 machen:

Sie sollten aber schon einige Zeit lang mitschneiden, denn über diesen Port kommen per UDP nicht nur die Flow-Daten sondern ab und an sendet ein Geräte auch ein "Template" mit, damit die auswertende Einheit das Format in den Daten auch versteht. WireShark erkennt diese "Template Message" und zeigt dann die Flow-Daten schöner an. Hier mal am Beispiel eines SFLOW-Pakets einer Astaro UTM:

Sie sehen aber auch, dass die Daten erst mal "unverschlüsselt" übertragen werden.