J'essaie d'obtenir tous les processus à l'écoute d'une connexion réseau sur Mac OS X. netstat
n'a pas le -p
option et j'essaie avec lsof
lsof -i -sTCP:LISTEN
me donne une bonne liste de processus d'écoute mais pas tous. Je peux par exemple telnet au port 10080 où j'ai un processus d'écoute pour une connexion mais cela n'est pas affiché dans la sortie de lsof
. Qu'est-ce que je rate?
$ telnet localhost 10080
Trying ::1...
Connected to localhost.
Escape character is '^]'.
^]
telnet> Connection closed.
mais
$ Sudo lsof -n -i | grep 10080
$
Sudo lsof -iTCP -sTCP:LISTEN
Sudo lsof -iTCP -sTCP:LISTEN -P
Sudo lsof -iTCP -sTCP:LISTEN -P -n
Sudo lsof -iTCP -sTCP:LISTEN -n
Tous renvoient les mêmes 32 entrées (... | wc -l
) Sur mon Lion MBP très utilisé.
-P -n
Empêche lsof
de résoudre le nom et ne bloque pas. Manquant l'un de ces éléments, il peut être très lent.
Pour UDP: Sudo lsof -iUDP -P -n | egrep -v '(127|::1)'
. Sans -n
Et -P
, Cela prend beaucoup de temps.
Rappel: cela n'inclut pas les paramètres du pare-feu.