Imprimir

Comando netstat en Linux

El comando netstat (Network status) nos informa sobre la configuración y actividad de la red. Veamos las principales opciones de este comando:

  • configuración de las interfaces de red: la opción -i nos mostrará la configuración de las interfaces de red activas y con la opción -e obtendremos información extendida (obtendremos la misma salida que con el comando ifconfig):
    $ netstat -ie
    eth0 Link encap:Ethernet  HWaddr 00:4F:49:01:E9:91
         inet addr:192.168.0.2  Bcast:192.168.0.255  Mask:255.255.255.0
         inet6 addr: fe80::24f:49ff:fe01:e991/64 Scope:Link
         UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
         RX packets:141 errors:0 dropped:0 overruns:0 frame:0
         TX packets:71 errors:96 dropped:0 overruns:0 carrier:192
         collisions:1632 txqueuelen:1000
         RX bytes:17043 (16.6 KiB)  TX bytes:10292 (10.0 KiB)
         Interrupt:10 Base address:0xe000
    lo   Link encap:Local Loopback
         inet addr:127.0.0.1  Mask:255.0.0.0
         inet6 addr: ::1/128 Scope:Host
         UP LOOPBACK RUNNING  MTU:16436  Metric:1
         RX packets:244 errors:0 dropped:0 overruns:0 frame:0
         TX packets:244 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:0
         RX bytes:16432 (16.0 KiB)  TX bytes:16432 (16.0 KiB)

    Si tenemos activa una conexión PPP (modem), veremos la interfaz ppp0:

    ppp0 Link encap:Point-to-Point Protocol
         inet addr:80.103.4.222  P-t-P:62.36.214.19  Mask:255.255.255.255
         UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
         RX packets:10 errors:0 dropped:0 overruns:0 frame:0
         TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:3
         RX bytes:2151 (2.1 KiB)  TX bytes:63 (63.0 b)

    Si añadimos la opción -a mostrará también las interfaces que no estén up.

  • enrutamiento: la opción -r nos mostrará la tabla de enrutamiento (obtendremos la misma salida que con el comando route):
    $ netstat -r
    Kernel IP routing table
    Destination Gateway     Genmask       Flags Metric Ref Use Iface
    localnet    *           255.255.255.0 U     0      0   0   eth0
    default     192.168.0.1 0.0.0.0       UG    0      0   0   eth0

    Vemos que netstat usa el mecanismo de resolución de nombres: en vez de la IP de red 192.168.1.0 usa localnet, el nombre que figura en /etc/networks. El contenido de /etc/networks es:

    localnet 192.168.0.0

    Para evitar el mecanismo de resolución de nombres y ver el enrutamiento con las direcciones IP añadiremos la opción -n:

    $ netstat -rn
    Kernel IP routing table
    Destination Gateway     Genmask       Flags Metric Ref Use Iface
    192.168.0.0 0.0.0.0     255.255.255.0 U     0      0   0   eth0
    0.0.0.0     192.168.0.1 0.0.0.0       UG    0      0   0   eth0
  • conexiones activas: para ver las conexiones activas TCP (-t) y UDP (-u) haremos:
    $ netstat -tu
    Active Internet Connections (servers)
    Proto R S Local Address             Foreign Address    State
    tcp   0 0 pc450.fransbern:50053     212.23.37.8:www    ESTABLISHED
    tcp   0 0 pc450.fransbern:46854     uned.es:https      ESTABLISHED
    tcp   0 0 pc450.fransberns.com:1024 192.168.0.3:telnet ESTABLISHED

    Por ejemplo, vemos que tenemos una conexión Telnet activa con origen en nuestra máquina y destino la máquina 198.168.0.3. Vemos también que netstat usa los nombres de puertos que figuran en /etc/services. Para evitarlo y ver el número de puerto usaremos la opción -n:

    $ netstat -tun
    Active Internet Connections (w/o servers)
    Proto R S Local Address             Foreign Address     State
    tcp   0 0 192.168.0.2:50053         212.23.37.8:80      ESTABLISHED
    tcp   0 0 192.168.0.2:46854         62.204.192.164:443  ESTABLISHED
    tcp   0 0 192.168.0.2:1024          192.168.0.3:23      ESTABLISHED
  • puertos que están escuchando: para ver los puertos TCP y UDP que están esperando una conexión (escuchando), usaremos la opción -l:
    $ netstat -tul
    Active Internet connections (only servers)
    Proto R S Local Address             Foreign Address     State
    tcp   0 0 *:npmp-gui                *:*                 LISTEN
    tcp   0 0 *:sunrpc                  *:*                 LISTEN
    tcp   0 0 *:auth                    *:*                 LISTEN
    tcp   0 0 localhost.localdom:smtp   *:*                 LISTEN
    tcp6  0 0 *:ssh                     *:*                 LISTEN
    tcp6  0 0 *:ipp                     *:*                 LISTEN
    udp   0 0 *:netbios-ns              *:*
    udp   0 0 *:netbios-dgm             *:*
    udp   0 0 *:ipp                     *:*
    udp   0 0 *:xdmcp                   *:*

11 Comentarios en “Comando netstat en Linux”

Deja un comentario