GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo me deshago de los sockets en el estado FIN_WAIT1?

Solución 1:

# record what tcp_max_orphans's current value
original_value=$(cat /proc/sys/net/ipv4/tcp_max_orphans)

#set the tcp_max_orphans to 0 temporarily
echo 0 > /proc/sys/net/ipv4/tcp_max_orphans

# watch /var/log/messages
# it will split out "kernel: TCP: too many of orphaned sockets"
# it won't take long for the connections to be killed

# restore the value of tcp_max_orphans whatever it was before. 
echo $original_value > /proc/sys/net/ipv4/tcp_max_orphans

# verify with 
netstat -an|grep FIN_WAIT1

Solución 2:

Debería poder establecer el tiempo de espera con /proc/sys/net/ipv4/tcp_fin_timeout .

Realmente no parece haber ninguna forma de borrar el zócalo manualmente.

Solución 3:

Parece que la configuración de tcp_orphan_retries controla cuántos intentos se realizarán antes de que se libere un puerto sin servidor. Era 0 aquí, después de establecerlo en 1, los puertos desaparecieron.

HTH

Solución 4:

/proc/sys/net/ipv4/tcp_fin_timeout es el tiempo de espera del estado FIN-WAIT-2, no FIN-WAIT-1. Deberías ir con la ruta tcpkill o puedes intentar jugar con los tiempos de actividad bajo /proc/sys/net/ipv4/tcp_keepalive_* forzar una muerte por parte del SO.

Solución 5:

Ejecutando estos pasos bajo la ID de raíz y se aclaró para mí:

Capture la configuración del kernel para cambiar en una variable

$ orig_orphans=$(sysctl -a|grep tcp_max_orph|cut -f3 -d' ')

Establecer temporalmente el máximo de huérfanos en 0

$ sysctl -w net.ipv4.tcp_max_orphans=0

Verifique para asegurarse de que el puerto problemático ya no esté en uso

$ netstat -np|grep 9716

Espere un poco y repita el paso anterior si es necesario hasta que el comando anterior no devuelva líneas

Restablezca el parámetro del kernel tcp_max_orphans al valor original de la variable anterior

$ sysctl -w net.ipv4.tcp_max_orphans=$orig_orphans

Linux
  1. Cómo obtener el tamaño del directorio en Linux

  2. Cómo obtener el uso de la CPU

  3. ¿Cómo obtener ps para imprimir grupo?

  4. ¿Cómo obtener una lista de directorios en un zip?

  5. ¿Cómo desarmo o me deshago de una función bash?

Cómo obtener su dirección IP en Linux

Cómo deshacerse de esta línea vertical en Geany

¿Cómo programo un reinicio en Linux?

¿Cómo obtener una lista de los clientes wifi conectados en OpenWrt 10.03?

¿Cómo hacer una copia de seguridad de los archivos crontab -e?

¿Cómo obtener ldapsearch en Scientific Linux?