2016-05-29 6 views
0

lorsqu'un client envoie 10 paquets TCP SYN par hping3 (pas d'usurpation), le serveur répond et envoie 10 paquets TCP SYN + ACK. maintenant le client doit répondre au serveur et établir la connexion en envoyant 10 paquets ACK, mais le client envoie 10 RST et met fin aux connexions semi-ouvertes (je suppose que c'est parce que le noyau Linux répond). Comment puis-je envoyer 10 paquets SYN par seconde (à la même destination avec différents ports source) et en réponse à SYN + ACK, envoyer ACK et établir les connexions? merci beaucoupÉtablissement de connexions TCP par hping3

Répondre

0

hping3 envoie des paquets bruts, sans ouvrir une socket orientée connexion avec le noyau - donc le RST. Pour que le noyau établisse la connexion, vous devez garder un socket ouvert à la fin de votre application. Cela signifie que l'application doit continuer à fonctionner, si elle s'arrête, le noyau réinitialisera toutes les sockets ouvertes.

Vos options sont limitées, vous pouvez essayer 'nc' (netcat), et démarrer un nouveau processus pour chaque connexion que vous souhaitez ouvrir. Ou sinon, écrivez un programme qui ouvre plusieurs connexions, chacune utilisant un socket différent pour s'assurer que le port source est différent pour chaque connexion. Gardez à l'esprit qu'il y a une limite au nombre de sockets que vous pouvez ouvrir dans un seul programme, et sur un système dans son ensemble.