O que saber
- Para executar o netstat e ver dados detalhados sobre a rede do seu Mac, abra um novo terminal janela, tipo netstat, e Aperte Entrar.
- Limite a saída do netstat com sinalizadores e opções. Para ver as opções disponíveis do netstat, digite homem netstat no prompt de comando.
- Use o comando lsof para compensar a funcionalidade ausente ou limitada do netstat, incluindo a exibição de todos os arquivos atualmente abertos em quaisquer aplicativos.
Este artigo explica como executar o comando netstat Terminal no macOS para que você possa ver informações detalhadas sobre as comunicações de rede do seu Mac, incluindo as maneiras como o Mac está se comunicando com o mundo exterior, em todas as portas e aplicativos.
Como executar o Netstat
Aprendendo como usar o netstat pode ajudá-lo a entender as conexões que seu computador está fazendo e por quê. O comando netstat está disponível em Macs por padrão. Você não precisa fazer o download ou instalá-lo. Para executar o netstat:
-
Vamos para Localizador > Vai > Serviços de utilidade pública.
-
Duplo click terminal.
-
Na nova janela do Terminal, digite netstat e pressione Retornar (ou Entrar) para executar o comando.
-
Uma grande quantidade de texto começará a rolar na tela. Se você não usar nenhum dos sinalizadores disponíveis (veja abaixo), o netstat relata as conexões de rede ativas em seu Mac. Considerando o número de funções que um dispositivo de rede moderno executa, você pode esperar que a lista seja longa. Um relatório padrão pode ter mais de 1.000 linhas.
Sinalizadores e opções do Netstat
Filtrar a saída do netstat é essencial para entender o que está acontecendo nas portas ativas do seu Mac. Os sinalizadores integrados do Netstat permitem definir opções, limitando o escopo do comando. Para ver todas as opções disponíveis do netstat, digite homem netstat no prompt de comando para revelar a página man do netstat (abreviação de “manual”). Você também pode ver uma versão online da página de manual do netstat.
Sintaxe
É importante observar que o netstat no macOS não funciona da mesma maneira que o netstat no Windows e Linux. Usar sinalizadores ou sintaxe dessas implementações de netstat pode não resultar no comportamento esperado. Para adicionar sinalizadores e opções ao netstat no macOS, use a seguinte sintaxe:
netstat [-AabdgiLlmnqrRsSvWx] [-c queue] [-f address_family] [-I interface] [-p protocol] [-w wait]
Se a abreviação acima parecer completamente incompreensível, aprenda a ler a sintaxe do comando.
Sinalizadores úteis
Aqui estão alguns dos sinalizadores mais comumente usados:
- -uma inclui portas de servidor na saída do netstat, que não estão incluídas na saída padrão.
- -g exibe informações associadas a conexões multicast.
- -EU interface fornece dados de pacote para a interface especificada. Todas as interfaces disponíveis podem ser visualizadas com o -eu bandeira, mas en0 normalmente é a interface de rede de saída padrão. (Observe a letra minúscula.)
- -n suprime o rótulo de endereços remotos com nomes. Isso acelera a saída do netstat enquanto elimina apenas informações limitadas.
- -p protocolo lista o tráfego associado a um protocolo de rede específico. A lista completa de protocolos está disponível em / etc / protocol, mas os mais importantes são udp e tcp.
- -r exibe a tabela de roteamento, mostrando como os pacotes são roteados pela rede.
- -s mostra as estatísticas de rede para todos os protocolos, estejam os protocolos ativos ou não.
- -v aumenta o detalhamento, especificamente adicionando uma coluna que mostra o ID do processo (PID) associado a cada porta aberta.
Exemplos Netstat
Considere estes exemplos:
netstat -apv TCP
Este comando retorna apenas conexões TCP em seu Mac, incluindo portas abertas e portas ativas. Ele também usa saída detalhada, listando os PIDs associados a cada conexão.
netstat -a | grep -i “ouvir”
Esta combinação de netstat e grep revela portas abertas, que são portas que estão ouvindo uma mensagem. A barra vertical | envia a saída de um comando para outro comando. Aqui, a saída de netstat canos para grep, permitindo que você pesquise a palavra-chave “ouvir” e encontre os resultados.
Acesso ao Netstat por meio do utilitário de rede
Você também pode acessar algumas das funcionalidades do netstat por meio do aplicativo Network Utility, que está incluído nas versões do macOS até Catalina (não está incluído no Big Sur). Para acessar o Network Utility, digite Utilitário de rede no Spotlight Search para iniciar o aplicativo e, em seguida, selecione o Netstat guia para acessar a interface gráfica.
As opções do Network Utility são mais limitadas do que as disponíveis na linha de comando. Cada uma das quatro seleções de botão de rádio executa um netstat predefinido comando e exibe a saída. Os comandos netstat para cada botão de opção são os seguintes:
- Exibir informações da tabela de roteamento corre netstat -r.
- Exibir estatísticas de rede abrangentes para cada protocolo corre netstat -s.
- Exibir informações de multicast corre netstat -g.
- Mostra o estado de todas as conexões de soquete atuais corre netstat.
Sinalizadores e opções Lsof
Exibir cada arquivo aberto ou conexão com a Internet é geralmente detalhado. É por isso que o lsof vem com sinalizadores para restringir resultados com critérios específicos. Os mais importantes estão abaixo. Para obter informações sobre mais sinalizadores e explicações técnicas de cada um, verifique a página de manual do lsof ou execute homem lsof em um prompt do Terminal.
- -eu exibe conexões de rede abertas e o nome do processo que está usando a conexão. Adicionando um 4, como em -i4, exibe apenas conexões IPv4. Adicionando um 6 em vez de (-i6) exibe apenas conexões IPv6.
- O -eu sinalizador também pode ser expandido para especificar mais detalhes. -iTCP ou -iUDP retorna apenas conexões TCP e UDP. -iTCP: 25 retorna apenas conexões TCP na porta 25. Um intervalo de portas pode ser especificado com um traço, pois -iTCP: 25-50.
- Usar -i@1.2.3.4 retorna apenas conexões para o endereço IPv4 1.2.3.4. Os endereços IPv6 podem ser especificados da mesma maneira. O precursor @ também pode ser usado para especificar nomes de host da mesma maneira, mas os endereços IP remotos e nomes de host não podem ser usados simultaneamente.
- -s normalmente força lsof a exibir o tamanho do arquivo. Mas quando emparelhado com o -eu bandeira, -s funciona de forma diferente. Em vez disso, permite que o usuário especifique o protocolo e o status para o retorno do comando.
- -p restringe lsof a um ID de processo específico (PID). Vários PIDs podem ser configurados usando comuns, como -p 123.456.789. Os IDs de processo também podem ser excluídos com um ^, como em 123, ^ 456, o que excluiria especificamente o PID 456.
- -P desativa a conversão de números de porta em nomes de porta, acelerando a saída.
- -n desativa a conversão de números de rede em nomes de host. Quando usado com -P acima, ele pode acelerar significativamente a saída de lsof.
- –você do utilizador retorna apenas comandos pertencentes ao usuário nomeado.
lsof exemplos
Aqui estão algumas maneiras de usar o lsof.
lsof -nP -iTCP@lsof.itap: 513
Este comando de aparência complexa lista as conexões TCP com o nome do host lsof.itap e o porto 513. Ele também executa lsof sem conectar nomes a endereços IP e portas, tornando a execução do comando visivelmente mais rápida.
lsof -iTCP -sTCP: LISTEN
Este comando retorna todas as conexões TCP com o status OUÇO, revelando as portas TCP abertas no Mac. Também lista os processos associados a essas portas abertas. Esta é uma atualização significativa sobre netstat, que lista no máximo PIDs.
sudo lsof -i -u ^ $ (whoami)
Outros comandos de rede
Outros comandos de rede de terminal que podem ser de interesse no exame de sua rede incluem arp, ping e ipconfig.