Cómo verificar la cola de TCP backlog para un proceso específico en Linux

A continuación se enumeran todos los sockets TCP abiertos por un proceso específico con el socket en el estado SYN_RECV en CentOS:

lsof -a -i -s TCP: SYN_RECV -p

Tenga en cuenta que SYN_RECV aquí es específico de CentOS; puede estar representado por SYN_RCVD en otros sistemas. Verifique su distribución para estar seguro.

Una breve explicación:

  • lsof enumera todos los controladores de archivos abiertos para un proceso. Como todo en Linux es un archivo, puede ver efectivamente todos los sockets abiertos, flujos de entrada / salida, etc. que un proceso ha abierto.
  • -p enumera todas las entradas para un ID de proceso específico
  • -i enumera solo los archivos de red abiertos
  • -s enumera el estado TCP o UDP
  • -a requiere que todos los demás parámetros pasados ​​se mantengan como verdaderos para que se muestre un registro. Básicamente, le permite filtrar según las propiedades anteriores.

Dependiendo de las configuraciones de red / aplicación, puede estar lidiando con múltiples colas TCP. Una manera rápida y sucia de hacerse una idea es simplemente ejecutar netstat y buscar conexiones con un estado SYN_REC.

Intenta ejecutar: netstat -antlp

Editar: Quora User trajo un buen punto en los comentarios. También puede intentar ejecutar con ” ss -pitl -o state syn-recv -e” .