Envoi d'une réinitialisation dans une connexion socket TCP / IP
Je suis à l'aide de python socket.py pour créer une connexion à un serveur ftp. Maintenant, je veux réinitialiser la connexion (envoyer un premier Drapeau) et d'écouter la réponse du serveur ftp. (Pour info à l'aide d'une douille.send(",'R') ne fonctionne pas comme le système d'exploitation envoie l'indicateur FIN au lieu de la TVD.)
source d'informationauteur Anvay
Vous devez vous connecter pour publier un commentaire.
Tourner la SO_LINGER option de socket et réglez le temps de s'attarder à 0 secondes. Ce sera la cause de TCP pour abandonner la connexion lorsqu'il est fermé, vider les données et envoyer une première. Voir la section 7.5 et exemple 15.21 dans UNP.
En python:
Pour envoyer un TVD sur une connexion TCP, définir la
SO_LINGER
option pourtrue
avec un zéro délai d'attente, puis fermer le socket. Cela permet de réinitialiser la connexion. Je n'ai aucune idée de comment faire ça en Python, ou, en fait, si vous pouvez même le faire.Si vous souhaitez mettre en place votre propre comportement sur les connexions, je pense que vous devriez essayer d'utiliser Scapy. Il est vraiment utile de la bibliothèque ou de l'outil. Il vous permet de jouer avec les IP/TCP/UDP/ICMP paquets.