Como ver os IPs recebidos no Linux?

17

Eu estou querendo saber qual é o comando / utilitário para ter uma visão em tempo real dos IPs recebidos para o meu servidor, de preferência junto com a porta e conectado.

    
por alfish 07.07.2012 / 13:01

5 respostas

24

Use pktstat -n

interface: eth0
bps

   bps    % desc
 162.3   0% arp
 286.5   0% llc 802.1d -> 802.1d
 544.3   1% tcp 172.16.1.5:22 <-> 172.16.1.95:8074
 34.0k  87% udp 172.16.1.1:514 <-> 172.16.1.5:514
 350.1   0% udp 172.16.1.5:24330 <-> 209.18.47.62:53
 329.4   0% udp 172.16.1.5:34870 <-> 209.18.47.62:53
 388.3   0% udp 172.16.1.5:4470 <-> 209.18.47.62:53
 407.4   1% udp 172.16.1.5:47008 <-> 209.18.47.62:53
 741.6   1% udp 172.16.1.5:53 <-> 172.16.1.74:43289
 663.6   1% udp 172.16.1.5:53 <-> 172.16.1.74:44589
 647.7   1% udp 172.16.1.5:53 <-> 172.16.1.74:58223
 128.9   0% udp 172.16.1.74:5353 <-> 224.0.0.251:5353
 160.7   0% udp6 fe80::21c:bfff:fecf:a798,5353 <-> ff02::fb,5353

O código-fonte do pktstat está hospedado no site do Debian, ou você pode obtê-lo SourceArchive.com

    
por 07.07.2012 / 14:24
10

Para exibição 'purdy', sou parcial a uma ferramenta chamada 'iptraf' que fará exatamente o que você mencionou, assim como por interface e por agregações de porta.

Para as principais ferramentas do Linux, o confiável netstat fará o truque ...

    
por 07.07.2012 / 14:35
7

Um tcpdump mostrará a você isso; Se você quisesse apenas uma lista de IPs, você poderia filtrar os pacotes SYN e enviar apenas o endereço IP de origem. Algo como:

tcpdump -i eth0 -n 'tcp[tcpflags] & tcp-syn != 0 and not src and dst net localnet' | sed 's/^.*IP \([^ ]*) >.*$//'

Conseguiria a lista de IPs, em tempo real. Você também pode tee para um arquivo e periodicamente fazer um sort -u para obter uma lista de endereços IP únicos que enviaram conexões do seu jeito.

    
por 07.07.2012 / 13:19
2

Veja como todo o tráfego chega à porta 2222:

tcpdump -ni any port 2222
    
por 04.02.2018 / 23:53
0

Depois de obter a saída de um dos comandos mencionados em outras respostas, você pode usar a ferramenta "watch" para ter "tempo real". Por exemplo, "watch -n 5 ps" fará o comando "ps" a cada 5 segundos (argumento "-n"). Substitua "ps" pelo comando de interesse e você receberá "monitoramento". Ou apenas "tee" no arquivo, como em outra sugestão.

    
por 07.07.2012 / 20:46