lsof não mostra a conexão TCP estabelecida

2

No meu sistema, se eu executar o netstat para uma porta, ele retornará:

$ netstat -nat | grep "60964"
tcp        0      0 192.0.0.1:60964             0.0.0.0:*            LISTEN      
tcp       59      0 192.0.0.1:60964             192.0.0.6:46962      ESTABLISHED

Se eu executar o lsof:

$ lsof -i4 | grep "60964"
process_x  2585 root  189u  IPv4  12708      0t0  TCP 192.0.0.1:60964 (LISTEN)

Por que há uma diferença na saída aqui? Por que não é lsof detectar a conexão "estabelecida".

Obrigado!

Edit: Eu devo mencionar que estou executando os comandos acima como root.

    
por brokenfoot 10.07.2015 / 22:50

2 respostas

1

Ao contrário de netstat , lsof requer privilégios de administrador para imprimir todas as portas abertas no sistema. Embora lsof manpage recomende que lsof seja instalado setuid root no Linux e setgid no BSD e muitos outros Unixes, na verdade a maioria das instalações prefere não fazê-lo. (Se essas permissões devem ser ativadas é outra pergunta.)

Portanto, lsof exibe a conexão para qualquer processo executado apenas pelo usuário atual. Para obter uma lista completa de conexões, execute lsof com privilégio de root.

    
por 11.07.2015 / 10:01
0

Você já tentou

lsof -i TCP -sTCP:ESTABLISHED
    
por 02.11.2015 / 06:09