Je veux retracer l'activité de mise en réseau d'une commande, j'ai essayé tcpdump et strace sans succès.
Par exemple, si j'installe un package ou que j'utilise une commande qui tente d'atteindre un site, je souhaite afficher cette activité de mise en réseau (le site qu'il tente d'atteindre).
Je suppose que nous pouvons le faire en utilisant tcpdump. J'ai essayé mais il suit toute l'activité de mise en réseau de mon système. Supposons que si j'exécute plusieurs commandes liées au réseau et que je souhaite suivre uniquement une activité de réseau de commandes particulière, il est difficile de trouver la solution exacte.
Y-a-t-il un moyen de faire ça?
MISE À JOUR:
Je ne veux pas suivre tout ce qui se passe sur mon interface réseau. Je veux juste suivre l'activité de mise en réseau de la commande (pour un exemple #yum install -y vim). Tels que le site qu'il tente d'atteindre.
Réponses:
netstat pour plus de simplicité
Utilisation
netstat
et grepping sur le PID ou le nom du processus:Et vous pouvez utiliser
watch
pour les mises à jour dynamiques:Avec:
-n
: Afficher les adresses numériques au lieu d'essayer de déterminer les noms symboliques d'hôte, de port ou d'utilisateur-p
: Affiche le PID et le nom du programme auquel appartient chaque socket.--inet
: Affiche uniquement les sockets de protocole raw, udp et tcp.lutte pour la verbosité
Vous avez dit que vous avez essayé l'
strace
outil, mais avez-vous essayé l'optiontrace=network
? Notez que la sortie peut être assez verbeuse, vous pourriez donc avoir besoin de quelques salutations. Vous pouvez commencer par saluer "sin_addr".Ou, pour un processus déjà en cours, utilisez le PID:
la source
netstat
lequel IMHO est la solution la plus simple et la plus soignée.strace
sortie encore plus, en ne gardant que lesconnect
appels système et en supprimant lesdns
demandes (port 53) avec:| grep connect | grep -v 'sin_port=htons(53)'
Je créerais un nouvel espace de noms de réseau , le relierais au vrai réseau, puis surveillerais le pont avec
tcpdump
.la source
sysdig
vous permet de surveiller toute l'activité du noyau ou de plusieurs commandes en cours d'exécution dans votre système à la fois, y compris et sans s'y limiter, l'activité du réseau.Comme la sortie peut être volumineuse, vous devez créer des filtres, la page par défaut pour les filtres les plus basiques est assez compréhensible.
Il a également l'avantage de ne pas être utilisé comme enveloppe d'application comme dans
strace
et il peut être assez puissant.À partir d'exemples Sysdig
la source
Vous pouvez utiliser WireShark pour renifler tout le trafic d'entrée et de sortie d'une interface réseau. Si vous avez besoin d'une option sans interface graphique, vous pouvez utiliser tshark.
Avec les deux options, vous pouvez voir tout le trafic réseau et l'enregistrer pour analyser plus tard toutes les connexions établies.
la source