Le F5 BIG-IP est basé sur un système Linux. Cela signifie que l’utilitaire tcpdump
est utilisable afin de réaliser des captures réseau.
Le BIG-IP est un proxy complet. C’est à dire qu’il gère 2 connexions séparée et indépendantes. Elles sont nommées “Clientside” (trafic entrant) et “Serverside” (trafic sortant). Ce qui est important est l’origine de la connexion, qui arrive sur un virtual server (clientside) et la sortie du BIG-IP (serverside).
Donc, pour suivre une erreur, il faut capturer le trafic des deux connexions (clientside et serverside) et les réaligner. Pour faire ceci, deux choses vont aider :
- Le flag
p
, qui va indiquer au BIG-IP de capture le trafic des 2 cotés du F5 - Le modificateur d’interface
:nnn
permet de capturer les header ethernet F5.
La syntaxe tcpdump
est relativement simple à construire. Par exemple, pour capturer le trafic pour un virtual server spécifique et les membres de son pool, elle ressemblerait à ça : tcpdump -s0 -nni 0.0:nnnp host 192.168.1.1 and port 443 -vw /var/tmp/hostname-$(date +"%d%m%Y-%H%M%S").pcap
- -s0 : longueur de la capture. Indique la quantité de données capturée pour chaque paquet. Cette option fournit le plus de données.
- -nn : ne convertit pas les noms d’hôtes en adresses.
- i 0.0 : capture le trafic sur l’interface 0.0, ce qui indique au BIG-IP de capturer sur toutes les interfaces (any).
- :nnnp : fournit les les informations des header ethernet F5 (nnn) et capture sur les deux cotés du proxy (p).
- host : l’adresse ip du virtual server ou de la source.
- port : le port spécifique utilisé par le virtual server. Permet de réduire la taille de la capture.
- -v : ajoute de la verbosité ainsi que si des paquets ont été capturés, combien et à quelle vitesse.
- w : envoie la capture vers un fichier destination
- /var/tmp/hostname-$(date +”%d%m%Y-%H%M%S”) : le chemin d’accès et le nom du fichier destination. Le paramètre final permet d’ajouter la date et l’heure à la seconde près de la capture.
- .pcap : type de fichier de capture.
killall tcpdump