Liste todas as conexões de Internet abertas em um Mac a partir do terminal para rastrear problemas de largura de banda
Recentemente, a LAN do meu escritório estava funcionando mais devagar do que o normal e não consegui identificar o que estava consumindo toda a largura de banda extra. Eu suspeitava que o tráfego P2P era o culpado, mas simplesmente não consegui ver nada óbvio na máquina ofensiva. Portanto, a questão, é claro, é como você vê quais processos estão se conectando à Internet ou ao mundo externo do Mac OS X?
Usando a ferramenta de linha de comando lsof, podemos passar o argumento -i para listar apenas as conexões de internet ativas e abertas em nossos Macs, e podemos descobrir se há algo peculiar (ou no meu caso, algo oculto) acontecendo e conectando-se a um endereço externo e, este comando também mostrará qual é o ID do processo do aplicativo ou tarefa ofensivo, para que possamos eliminá-lo e interromper a atividade, se desejado.
Exibir uma lista de todas as conexões de Internet abertas no OS X a partir da linha de comando
Isso deve ser inserido no Terminal do OS X, mas pode ser usado remotamente com SSH ou localmente em um Mac.
Eu entrei no Mac ofensivo e digitei o seguinte comando:
lsof -i
Você não precisa usar o sudo, mas pode, se desejar ou for necessário para seu caso de uso específico.
A saída de lsof é um pouco complicada, mas se você estiver familiarizado com a linha de comando, não deve parecer nada muito estranho.
Aqui está um exemplo da saída exibida por esta string de comando lsof -i:
MacMini:~ macuser$ lsof -i COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME SystemUIS 93 macuser 6u IPv4 0x04db27bc 0t0 UDP : SystemUIS 93 macuser 10u IPv4 0x04db26e0 0t0 UDP : iChatAgen 111 macuser 6u IPv4 0x07084734 0t0 UDP localhost:49490->localhost:49490 iChatAgen 111 macuser 10u IPv4 0x05666f28 0t0 TCP 192.168.0.101:53762->bos-m012c-sdr6.blue.aol.com:aol ( Estabelecido) Synergys 129 MACUSER 5U IPV4 0X05F2F6B0 0T0 TCP : 24800 (ouça) Safari 148 MacUser 10u IPv4 0x06db46e0 0t0 tcp 192.168.0.101:57557->HAHP2hp 192.168.0.101:57557->H :daap (ESCUTA)
Na exibição de saída lsof acima, não há nada incomum, mas na solução de problemas de rede acima mencionada, descobri um cliente BitTorrent em execução oculto no plano de fundo de uma das minhas redes Macs e estava semeando vários arquivos grandes! Naturalmente, matei o cliente BitTorrent, removi o aplicativo, excluí os arquivos e a LAN do Mac está funcionando a toda velocidade novamente.
Listando apenas conexões de Internet estabelecidas
Se você quiser exibir apenas as conexões estabelecidas (ou seja, elas estão se comunicando ativamente e um link foi estabelecido entre a máquina local e um IP externo), você pode usar esta variação de comando do mencionado acima lsof string:
lsof -i | grep -E (LISTEN|ESTABLISHED)"
Você pode combinar isso com 'watch' para obter uma lista atualizada automaticamente de conexões estabelecidas também.
E se você souber o nome do processo, você sempre pode usar grep para esse nome específico ou vago também.
Isso é um pouco avançado, mas funciona muito bem para usuários de Mac que se sentem confortáveis com o terminal e a linha de comando em geral. Mais usuários novatos do Mac podem usar o Private Eye para monitorar conexões de internet e rede no OS X, que é um aplicativo de terceiros gratuito, mas excelente, executado na interface gráfica do usuário e um pouco mais fácil de analisar, principalmente se você não tiver experiência com o terminal.