¿Cómo rastrear el uso de LAN? (AKA 'top para LAN')

27

Hay una aplicación malvada que está consumiendo TODO mi ancho de banda de carga (soy brasileño, solo ~ 35 kbps) durante aproximadamente el 80% del tiempo que mi PC está encendida.

Me gustaría saber si hay alguna forma de rastrear este uso y descubrir qué aplicación está haciendo esto.

igorsantos07
fuente

Respuestas:

12

¿Qué hay de los nethogs ? En mi opinión, es mucho más humano. Enumera qué comando / programa usa la red y cuánto ancho de banda para cada uno de ellos, en tiempo real.

Instálelo en sistemas ubuntu / debian con:

sudo apt-get install nethogs

Ejecútelo para monitorear su interfaz de red de esta manera:

sudo nethogs eth0

texto alternativo

vulcan_hacker
fuente
¡muy interesante! = D Solucione mi problema mejor que el combo iftop + netstat. No es que ambos no sean buenos, son increíbles, pero no para lo que necesitaba. = D
igorsantos07
Esto no parece tener un modo por lotes.
Nicholas DiPiazza
19

iftopes un programa basado en consola / shell similar a top que puede usar la biblioteca pcap (también utilizada por tcpdump y wireshark). Está disponible para Ubuntu desde Universe.

sudo aptitude install iftop
sudo iftop

Mientras ejecuta una actualización en un sistema ubuntu:

texto alternativo

Con netstat, puede averiguar qué proceso está conectado a un puerto o IP en particular. Para los puertos, es una buena idea prefijar con dos puntos.

sudo netstat -plantu | grep "some_port_number_or_ip_address"

Por ejemplo, para ver las conexiones abiertas para ssh:

sudo netstat -plantu | grep :22
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      2376/sshd       
tcp        0      0 10.13.37.122:22         10.13.37.105:59130      ESTABLISHED 4033/sshd: jtimberm
tcp6       0      0 :::22                   :::*                    LISTEN      2376/sshd 

También puede buscar conexiones de puerto abierto con lsof:

sudo lsof -i:22
COMMAND  PID       USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd    2376       root    3u  IPv4   5613      0t0  TCP *:ssh (LISTEN)
sshd    2376       root    4u  IPv6   5615      0t0  TCP *:ssh (LISTEN)
sshd    4033       root    3u  IPv4  11608      0t0  TCP 10.13.37.122:ssh->10.13.37.105:59130 (ESTABLISHED)
sshd    4086 jtimberman    3u  IPv4  11608      0t0  TCP 10.13.37.122:ssh->10.13.37.105:59130 (ESTABLISHED)

Puede obtener más información sobre los archivos abiertos de lsof con -p PID.

sudo lsof -p 2376

(Mucha salida de eso suprimido)

jtimberman
fuente
Con este programa pude determinar dónde estaba comiendo mi conexión ... y con netstat pude determinar quién estaba haciendo esto. ¡Necesito marcar esas dos respuestas como correctas! XD
igorsantos07
Realmente no creo que sea justo editar su respuesta y agregar mucha información nueva ... pero no puedo pensar en ninguna otra solución, así que ... gracias nuevamente =]
igorsantos07
2
@Igoru Simplemente mejora la respuesta para que las personas obtengan información más relevante si buscan preguntas similares a las suyas.
jtimberman
1
Espera ... ¿eso es un sistema Ubuntu? Parece OS X.
Caracol mecánico
Fui a un sistema ubuntu desde mi mac.
jtimberman
9

ntop es tu amigo Los paquetes están en repositorios de linux y macports.

Nicholas
fuente
2
ntop es un excelente programa, pero probablemente sea excesivo y demasiado complicado para esto.
jtimberman
No creo que sea amigable como me gustaría ... Creo que hay tanta información para lo que necesito. Y tu respuesta no es exactamente ... útil. Pero gracias de todos modos =]
igorsantos07
5

Además de usar iftop para identificar la dirección y el puerto que usa ancho de banda, puede usar netstat para identificar el proceso

sudo netstat -ntp

Esto mostrará todas las conexiones TCP abiertas y el nombre / id del proceso adjunto a cada una.

Rog
fuente
Como no puedo votar "aceptado" por ambos y iftoplo aceptaré, eso me mostró EXACTAMENTE cuándo y cómo alguien estaba comiendo mi ancho de banda, y votarlo porque netstatpodría saber a quién debería matar. ¡Gracias!
igorsantos07
Alternativamente, puede usar lsof -i tcp:80para concentrar su búsqueda en un puerto. Esta versión en particular enumerará todos los procesos conectados en el puerto TCP 80.
Nagul
2

En mi opinión, la interfaz de usuario de iftop no está bien diseñada. En la práctica, casi nunca es necesario ver las IP o los nombres de host en tiempo real. Si lo necesitara, una lista de todas las conexiones actuales, simplemente iría con netstat como explicó jtimberman.

Para mis propósitos, bmon es más adecuado que iftop. Tiene una interfaz de usuario muy simplista con soporte para múltiples interfaces y dibujo de "gráficos". Aquí hay una captura de pantalla:

bmon

Si no necesita todas las funciones que ofrece bmon, bwm-ng podría ser la herramienta perfecta para usted. Solo muestra el ancho de banda ocupado actual por interfaz, ni más ni menos:

bwm-ng

timn
fuente
2

nload es una gran herramienta para monitorear el ancho de banda en tiempo real y se instala fácilmente en Ubuntu o Debian con sudo apt-get install nload.

Device eth0 [10.10.10.5] (1/2):
=====================================================================================
Incoming:


                               .         ...|    
                               #         ####|   
                           .. |#|  ...   #####.         ..          Curr: 2.07 MBit/s
                          ###.###  #### #######|.     . ##      |   Avg: 1.41 MBit/s
                         ########|#########################.   ###  Min: 1.12 kBit/s
             ........    ###################################  .###  Max: 4.49 MBit/s
           .##########. |###################################|#####  Ttl: 1.94 GByte
Outgoing:
            ##########  ###########    ###########################
            ##########  ###########    ###########################
            ##########. ###########   .###########################
            ########### ###########  #############################
            ########### ###########..#############################
           ############ ##########################################
           ############ ##########################################
           ############ ##########################################  Curr: 63.88 MBit/s
           ############ ##########################################  Avg: 32.04 MBit/s
           ############ ##########################################  Min: 0.00 Bit/s
           ############ ##########################################  Max: 93.23 MBit/s
         ############## ##########################################  Ttl: 2.49 GByte

Otra herramienta excelente es iftop , también fácilmente apt-get'able:

             191Mb      381Mb                 572Mb       763Mb             954Mb     
└────────────┴──────────┴─────────────────────┴───────────┴──────────────────────
box4.local            => box-2.local                      91.0Mb  27.0Mb  15.1Mb
                      <=                                  1.59Mb   761kb   452kb
box4.local            => box.local                         560b   26.8kb  27.7kb
                      <=                                   880b   31.3kb  32.1kb
box4.local            => userify.com                         0b   11.4kb  8.01kb
                      <=                                  1.17kb  2.39kb  1.75kb
box4.local            => b.resolvers.Level3.net              0b     58b    168b
                      <=                                     0b     83b    288b
box4.local            => stackoverflow.com                   0b     42b     21b
                      <=                                     0b     42b     21b
box4.local            => 224.0.0.251                         0b      0b    179b
                      <=                                     0b      0b      0b
224.0.0.251           => box-2.local                         0b      0b      0b
                      <=                                     0b      0b     36b
224.0.0.251           => box.local                           0b      0b      0b
                      <=                                     0b      0b     35b


─────────────────────────────────────────────────────────────────────────────────
TX:           cum:   37.9MB   peak:   91.0Mb     rates:   91.0Mb  27.1Mb  15.2Mb
RX:                  1.19MB           1.89Mb              1.59Mb   795kb   486kb
TOTAL:               39.1MB           92.6Mb              92.6Mb  27.9Mb  15.6Mb

¡No se olvide de las clásicas y poderosas utilidades sar y netstat en * nix anteriores!

Jamieson Becker
fuente
1

Wireshark también es una aplicación muy buena (multiplataforma) para monitorear el tráfico de red. Aquí hay una descripción del sitio:

Wireshark es el analizador de protocolos de red más importante del mundo y es el estándar de facto (y a menudo de jure) en muchas industrias e instituciones educativas.

alex
fuente
0

Puede hacer esto en el nivel del enrutador dependiendo de su firmware. Por ejemplo, si usa DD-WRT , puede realizar un seguimiento del uso a lo largo del tiempo y por máquina.

th3dude
fuente
De hecho, creo que usar mi enrutador ADSL solo para resolver este pequeño problema es excesivo y complicado. Creo que es algo fácil de resolver. ¡Pero gracias por tu ayuda!
igorsantos07
0

Instale un firewall y, al menos temporalmente, haga que bloquee todas las conexiones salientes. Debería notificarte cuando algo intenta hacer una conexión, en ese momento debes tener a tu culpable :-)

Aquí hay uno de los muchos artículos en línea que le brinda información sobre cómo instalar un firewall en ubuntu:
http://linux.com/news/enterprise/systems-management/8256-installing-a-firewall-on-ubuntu

Joel Martinez
fuente
Creo que ya tengo UFW en mi Ubuntu ... De todos modos, creo que esto sería un poco difícil de resolver con este enfoque ... El problema no ocurre todo el tiempo, es intermitente pero un poco frecuente. Pero si las otras aplicaciones de información de red fallan, ¡intentaré el firewall! ¡Gracias!
igorsantos07