J'ai besoin de capturer le trafic sur un serveur CentOS 5 qui agit comme un proxy Web avec 2 interfaces WAN et 1 LAN. Afin de résoudre un problème de proxy étrange, je voudrais avoir une capture d'une conversation complète. Étant donné que les connexions externes sont équilibrées entre les deux interfaces WAN, je me demande s'il est possible de capturer simultanément sur toutes les interfaces.
J'ai déjà utilisé tcpdump mais il n'admet qu'une seule interface à la fois. Je peux lancer 3 processus parallèles pour capturer sur toutes les interfaces mais je me retrouve avec 3 fichiers de capture différents.
Quelle est la bonne façon de procéder?
wireshark
également utiliser .Réponses:
Selon la page de manuel tcpdump:
Sur les systèmes Linux avec les noyaux 2.2 ou ultérieurs, un argument d'interface '' any '' peut être utilisé pour capturer les paquets de toutes les interfaces. Notez que les captures sur le périphérique `` tout '' ne seront pas effectuées en mode promiscuous.
Vous devriez donc pouvoir exécuter:
tcpdump -i any
afin de capturer des données sur toutes les interfaces en même temps dans un seul fichier de capture.la source
La façon dont j'aborderais cela est de vider sur chaque interface dans un fichier séparé, puis de les fusionner. L'interface any inclut également le trafic lo qui peut polluer la capture.
Cela permet également d'analyser les flux de paquets par interface sans filtrage complexe.
Je capturerais dans 3 terminaux ou en arrière-plan de la commande avec &
L'indicateur -nn désactive la résolution DNS pour la vitesse, -s 0 enregistre le paquet complet et -w écrit dans un fichier.
Je fusionnerais ensuite les fichiers avec la commande mergecap de Wireshark:
la source
Pour capturer un tcpdump sur toutes les interfaces, utilisez
la source