Solution 1 :
Pour que tcpkill fonctionne (c'est-à-dire créer un paquet de réinitialisation qui a le bon numéro de séquence et le bon port source), il doit y avoir du trafic. Si rien de plus n'est imprimé, il n'y a pas de trafic. Pour vérifier, vous pouvez exécuter tcpdump -i eth1 port 443
.
Solution 2 :
J'ai dû tuer une connexion établie sur laquelle il n'y avait pas de trafic (une session de débogage sur une JVM).
tcpkill
comme expliqué dans la réponse @Mark Wagner ne pouvait pas le faire, cependant killcx
1.0.3 (lien) l'a fait (Ubuntu 10.04).
C'est un script perl qui dépend de quelques bibliothèques.
Modifier
Sur une connexion qui n'a pas pu être tuée avec killcx
la combinaison des deux tcpkill
et killcx
l'a fait :
Dire la connexion si de LOCAL:PORTL
à REMOTE:PORTR
- Dans un terminal, lancez tcpkill :
tcpkill port PORTL
. Tcpkill commencera à écouter le trafic - Dans un deuxième terminal, lancez killcx :
killcx REMOTE:PORTR