Potrzebowałem wyeksportować ruch do analizy w postaci pakietów NetFlow z przełączników, które nie posiadają takiej opcji. Po przeszukaniu Internetu padło na rozwiązanie w postaci serwera z Centos 6 i pakietem Softflowd oraz sklonowaniem całego ruchu(mam nadzieję, że ten zwrot jest poprawny :)) z jednego portu przełącznika na interfejs serwera, który nie ma przypisanego adresu ip z wykorzystaniem port mirroringu na przełączniku.
Serwer wyposażony w 2 karty sieciowe:

  • eth0 - interfejs, z którego będą generowane flowy
  • eth1 - interfejs do zarządzania serwerem

Konfiguracja Centos 6:

  1. Instalacja Centos 6 w wersji "Basic Server"
  2. Konfiguracja eth0
    DEVICE="eth0"
    ONBOOT=yes
    TYPE=Ethernet
    BOOTPROTO=no
  3.  Konfiguracja eth1
    DEVICE="eth1"
    ONBOOT=yes
    TYPE=Ethernet
    BOOTPROTO=dhcp
    DEFROUTE=yes
  4. Wykonanie aktualizacji poleceniem yum update
  5. Instalacji Development tools poleceniem yum groupinstall Development tools
  6. Wydanie polecenia yum install *pcap*
  7. Pobranie Softflowd poleceniem wget http://softflowd.googlecode.com/files/softflowd-0.9.8.tar.gz
  8. Wypakowanie Softflowd tar xvzf softflowd-0.9.8.tar.gz
  9. Przejście do katalogu Softflowd poleceniem cd softflowd-0.9.8
  10. Wydanie polecenia ./configure
  11. Wydanie polecenia make
  12. Wydanie polecenia make install

Przełącznik użyty w tym przypadku to 3com 5500G. Port, który będzie monitorowany to GigabitEthernet1/0/1, a port, na który będzie mirrorowany ruch to GigabitEthernet1/0/2.

Konfiguracja przełącznika 5500G:

<5500G>system
System View: return to User View with Ctrl+Z.
[5500G]interface GigabitEthernet1/0/2
[5500G-GigabitEthernet1/0/2]stp disable
[5500G-GigabitEthernet1/0/2]stp edged-port disable
[5500G-GigabitEthernet1/0/2]quit
[5500G]mirroring-group 1 local
[5500G]mirroring-group 1 mirroring-port GigabitEthernet1/0/1 both
[5500G]mirroring-group 1 monitor-port GigabitEthernet1/0/2
[5500G]display mirroring-group all
mirroring-group 1:
    type: local
    status: active
    mirroring port:
        GigabitEthernet1/0/1  both
    monitor port: GigabitEthernet1/0/2
[5500G]

Użycie softflowd

W celu testowego wyeksportowania pakietów NetFlow wydajemy polecenie na serwerze softflowd -i eth1 -m 30 -v 5 -n ip:port -L 64 -D

Aby eksport startował automatycznie po stracie systemu należy dodać do pliku /etc/rc.local linię z poleceniem:
/usr/local/sbin/softflowd -i eth1 -m 30 -v 5 -n ip:port -L 64

Do analizy polecam NetFlow Analyzer lub ntop.