tuer tcp port binding en supprimant proc / / net / … in linux

J'ai un script pour appeler syscall Tuez le process qui détient un certain port TCP sous Linux (ubuntu). Mais même si je le fais, parfois, le port rest dans le /proc/[0-9]/net lie le port.

Existe-t-il un moyen simple de forcer à libérer le port tcp? Je sais quel proc/X contient le port que je veux tuer. Puis-je supprimer le /proc/XXX/ et je considère que le port est libre d'utiliser après cette suppression?

Certaines publications indiquent que je peux utiliser le fuser , mais je veux savoir ce qui se passe au niveau du operating system.

Merci!

One Solution collect form web for “tuer tcp port binding en supprimant proc / / net / … in linux”

Le port rest lié car l'application appelante qui est obligatoire pour le port n'utilise pas l'option socket SO_REUSEADDR . Vous devez réparer l'application appelante pour le faire. En C:

 int yes = 1; setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, (void *)&yes, sizeof(yes)); 

Cela s'efface dans l'application tuée après net.ipv4.tcp_fin_timeout secondes. La meilleure chose à faire est de réparer votre programme d'appel pour faire le bon choix.

  • Pourquoi le protocole FTP a-t-il été conçu pour utiliser plus d'un port?
  • Comment lire le nombre de requests en attente dans le backlog de stack TCP sous Linux?
  • Combien de time sont fragmentés des fragments TCP conservés dans le server TCP
  • login TCP première connection lente
  • Continuer à envoyer des packages après l'envoi FIN
  • Quelle caractéristique du réseau / TCP provoque une relation linéaire entre l'activité TCP et la latence?
  • tcpdump: snaplen réglé sur 0 mais toujours "Taille de package limitée pendant la capture"?
  • Comment configurer un server redhat / centos / amazon linux pour 1 million de connections tcp ouvertes?
  • Tampons de tampon TCP et binding Ethernet
  • Le package sortant a l'adresse src NATed
  • Comment sélectionner un backend différent basé sur URI lorsque vous utilisez "mode tcp"
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.