¿Cómo ver las IP entrantes en Linux?

21

Me pregunto cuál es el comando / utilidad para tener una vista en tiempo real de las direcciones IP entrantes a mi servidor, idealmente junto con el puerto y conectado.

Alfish
fuente

Respuestas:

25

Utilizar 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

El código fuente pktstat está alojado en el sitio de Debian, o puede obtenerlo en SourceArchive.com

Mike Pennington
fuente
1
Asombroso. Exactamente lo que estaba buscando. Es bastante obvio, pero para completar la respuesta, es posible que desee agregar que se puede instalar simplemente con 'apt-get install pkstat'.
Alfish
Además, si obtiene pktstat: pcap_lookupdev: no suitable device foundal ejecutar esto, es posible que deba ser root.
Tim Malone
10

Para la visualización 'purdy', soy parcial con una herramienta llamada 'iptraf' que hará exactamente lo que usted menciona, así como por interfaz y por agregados de puertos.

Para las herramientas principales de Linux, netstat confiable hará el truco ...

hielo delgado
fuente
1
Iptraf es la mejor herramienta que he visto en términos de facilidad de uso y funcionalidad - obviamente, todavía se puede guión un poco de materia utilizando herramientas estándar como netstat y ngrep y tcpdump, pero ¿por qué quiere reinventar la rueda :)
giro
Para completar, iftop es similar a iptraf, una aplicación basada en ncurses que usa gráficos de barras en lugar de solo números, para mostrar el uso de ancho de banda por dirección IP. Con la opción -P también puede obtenerlo por puerto.
gsreynolds
7

A tcpdumpte mostraría eso; Si solo desea una lista de IP, puede filtrar los paquetes SYN y solo generar la dirección IP de origen. Algo como:

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

Te daría la lista de IPs, en tiempo real. También puede hacer teeeso en un archivo, y periódicamente hacer un sort -uen él para obtener una lista de direcciones IP únicas que han enviado conexiones a su manera.

womble
fuente
3

Aquí le mostramos cómo ver todo el tráfico que llega al puerto 2222:

tcpdump -ni any port 2222
Basj
fuente
0

Una vez que obtenga la salida de uno de los comandos mencionados en otras respuestas, puede usar la herramienta "watch" para tener "tiempo real". Por ejemplo, "watch -n 5 ps" realizará el comando "ps" cada 5 segundos (argumento "-n"). Reemplace "ps" con el comando de interés, y obtendrá "monitoreo". O simplemente "tee" en el archivo, como en otra sugerencia.

Portador
fuente